./Ultimate.py --spec ../sv-benchmarks/c/properties/termination.prp --file ../sv-benchmarks/c/list-ext-properties/simple-ext.i --full-output -ea --architecture 32bit -------------------------------------------------------------------------------- Checking for termination Using default analysis Version 8bd4bc60 Calling Ultimate with: /usr/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx12G -Xms1G -ea -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerTermination.xml -i ../sv-benchmarks/c/list-ext-properties/simple-ext.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Termination-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(F end) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash e1c4f57eca82444dbac59d6fae1e4e6e28bb6c95 ............................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................... Execution finished normally Writing output log to file Ultimate.log Result: TRUE --- Real Ultimate output --- This is Ultimate 0.1.25-8bd4bc6 [2020-07-29 02:04:29,571 INFO L177 SettingsManager]: Resetting all preferences to default values... [2020-07-29 02:04:29,574 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2020-07-29 02:04:29,594 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2020-07-29 02:04:29,594 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2020-07-29 02:04:29,597 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2020-07-29 02:04:29,599 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2020-07-29 02:04:29,602 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2020-07-29 02:04:29,615 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2020-07-29 02:04:29,617 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2020-07-29 02:04:29,619 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2020-07-29 02:04:29,621 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2020-07-29 02:04:29,622 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2020-07-29 02:04:29,623 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2020-07-29 02:04:29,624 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2020-07-29 02:04:29,627 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2020-07-29 02:04:29,628 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2020-07-29 02:04:29,629 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2020-07-29 02:04:29,634 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2020-07-29 02:04:29,636 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2020-07-29 02:04:29,642 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2020-07-29 02:04:29,644 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2020-07-29 02:04:29,645 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2020-07-29 02:04:29,646 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2020-07-29 02:04:29,653 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2020-07-29 02:04:29,653 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2020-07-29 02:04:29,653 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2020-07-29 02:04:29,654 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2020-07-29 02:04:29,655 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2020-07-29 02:04:29,655 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2020-07-29 02:04:29,656 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2020-07-29 02:04:29,656 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2020-07-29 02:04:29,657 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2020-07-29 02:04:29,658 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2020-07-29 02:04:29,659 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2020-07-29 02:04:29,659 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2020-07-29 02:04:29,660 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2020-07-29 02:04:29,660 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2020-07-29 02:04:29,661 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2020-07-29 02:04:29,662 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2020-07-29 02:04:29,662 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2020-07-29 02:04:29,663 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Termination-32bit-Automizer_Default.epf [2020-07-29 02:04:29,681 INFO L113 SettingsManager]: Loading preferences was successful [2020-07-29 02:04:29,681 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2020-07-29 02:04:29,682 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2020-07-29 02:04:29,683 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2020-07-29 02:04:29,683 INFO L138 SettingsManager]: * Use SBE=true [2020-07-29 02:04:29,683 INFO L136 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2020-07-29 02:04:29,683 INFO L138 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2020-07-29 02:04:29,683 INFO L138 SettingsManager]: * Use old map elimination=false [2020-07-29 02:04:29,684 INFO L138 SettingsManager]: * Use external solver (rank synthesis)=false [2020-07-29 02:04:29,684 INFO L138 SettingsManager]: * Use only trivial implications for array writes=true [2020-07-29 02:04:29,684 INFO L138 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2020-07-29 02:04:29,684 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2020-07-29 02:04:29,685 INFO L138 SettingsManager]: * sizeof long=4 [2020-07-29 02:04:29,685 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2020-07-29 02:04:29,685 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2020-07-29 02:04:29,685 INFO L138 SettingsManager]: * sizeof POINTER=4 [2020-07-29 02:04:29,685 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2020-07-29 02:04:29,686 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2020-07-29 02:04:29,686 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2020-07-29 02:04:29,686 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2020-07-29 02:04:29,686 INFO L138 SettingsManager]: * sizeof long double=12 [2020-07-29 02:04:29,686 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2020-07-29 02:04:29,687 INFO L138 SettingsManager]: * Assume nondeterminstic values are in range=false [2020-07-29 02:04:29,687 INFO L138 SettingsManager]: * Use constant arrays=true [2020-07-29 02:04:29,687 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2020-07-29 02:04:29,687 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2020-07-29 02:04:29,688 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2020-07-29 02:04:29,688 INFO L138 SettingsManager]: * To the following directory=/home/matthias/ultimate/dump [2020-07-29 02:04:29,688 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2020-07-29 02:04:29,688 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2020-07-29 02:04:29,688 INFO L138 SettingsManager]: * Trace refinement exception blacklist=NONE [2020-07-29 02:04:29,689 INFO L138 SettingsManager]: * Dump automata to the following directory=/home/matthias/ultimate/dump/auto [2020-07-29 02:04:29,690 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2020-07-29 02:04:29,690 INFO L138 SettingsManager]: * TransformationType=MODULO_NEIGHBOR 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(F end) ) 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 -> e1c4f57eca82444dbac59d6fae1e4e6e28bb6c95 [2020-07-29 02:04:29,994 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2020-07-29 02:04:30,007 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2020-07-29 02:04:30,011 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2020-07-29 02:04:30,012 INFO L271 PluginConnector]: Initializing CDTParser... [2020-07-29 02:04:30,013 INFO L275 PluginConnector]: CDTParser initialized [2020-07-29 02:04:30,013 INFO L429 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/list-ext-properties/simple-ext.i [2020-07-29 02:04:30,094 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/1bf0bd34a/f7ad4786fef64bddabb668b0ae56e596/FLAGd8781c7d7 [2020-07-29 02:04:30,669 INFO L306 CDTParser]: Found 1 translation units. [2020-07-29 02:04:30,670 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/list-ext-properties/simple-ext.i [2020-07-29 02:04:30,684 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/1bf0bd34a/f7ad4786fef64bddabb668b0ae56e596/FLAGd8781c7d7 [2020-07-29 02:04:30,909 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/1bf0bd34a/f7ad4786fef64bddabb668b0ae56e596 [2020-07-29 02:04:30,912 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2020-07-29 02:04:30,916 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2020-07-29 02:04:30,917 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2020-07-29 02:04:30,917 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2020-07-29 02:04:30,921 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2020-07-29 02:04:30,923 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 29.07 02:04:30" (1/1) ... [2020-07-29 02:04:30,926 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@220aceb and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 02:04:30, skipping insertion in model container [2020-07-29 02:04:30,926 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 29.07 02:04:30" (1/1) ... [2020-07-29 02:04:30,935 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2020-07-29 02:04:30,987 INFO L178 MainTranslator]: Built tables and reachable declarations [2020-07-29 02:04:31,393 INFO L206 PostProcessor]: Analyzing one entry point: main [2020-07-29 02:04:31,410 INFO L203 MainTranslator]: Completed pre-run [2020-07-29 02:04:31,500 INFO L206 PostProcessor]: Analyzing one entry point: main [2020-07-29 02:04:31,559 INFO L208 MainTranslator]: Completed translation [2020-07-29 02:04:31,560 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 02:04:31 WrapperNode [2020-07-29 02:04:31,560 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2020-07-29 02:04:31,561 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2020-07-29 02:04:31,561 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2020-07-29 02:04:31,562 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2020-07-29 02:04:31,570 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 02:04:31" (1/1) ... [2020-07-29 02:04:31,586 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 02:04:31" (1/1) ... [2020-07-29 02:04:31,613 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2020-07-29 02:04:31,613 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2020-07-29 02:04:31,613 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2020-07-29 02:04:31,614 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2020-07-29 02:04:31,622 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 02:04:31" (1/1) ... [2020-07-29 02:04:31,622 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 02:04:31" (1/1) ... [2020-07-29 02:04:31,625 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 02:04:31" (1/1) ... [2020-07-29 02:04:31,625 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 02:04:31" (1/1) ... [2020-07-29 02:04:31,635 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 02:04:31" (1/1) ... [2020-07-29 02:04:31,640 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 02:04:31" (1/1) ... [2020-07-29 02:04:31,642 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 02:04:31" (1/1) ... [2020-07-29 02:04:31,645 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2020-07-29 02:04:31,646 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2020-07-29 02:04:31,646 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2020-07-29 02:04:31,650 INFO L275 PluginConnector]: RCFGBuilder initialized [2020-07-29 02:04:31,651 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 02:04:31" (1/1) ... No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2020-07-29 02:04:31,725 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2020-07-29 02:04:31,725 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2020-07-29 02:04:31,725 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2020-07-29 02:04:31,725 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2020-07-29 02:04:31,726 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2020-07-29 02:04:31,726 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2020-07-29 02:04:31,726 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2020-07-29 02:04:31,726 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2020-07-29 02:04:32,213 INFO L290 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2020-07-29 02:04:32,213 INFO L295 CfgBuilder]: Removed 11 assume(true) statements. [2020-07-29 02:04:32,217 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 29.07 02:04:32 BoogieIcfgContainer [2020-07-29 02:04:32,217 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2020-07-29 02:04:32,218 INFO L113 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2020-07-29 02:04:32,218 INFO L271 PluginConnector]: Initializing BuchiAutomizer... [2020-07-29 02:04:32,221 INFO L275 PluginConnector]: BuchiAutomizer initialized [2020-07-29 02:04:32,222 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2020-07-29 02:04:32,223 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "CDTParser AST 29.07 02:04:30" (1/3) ... [2020-07-29 02:04:32,224 INFO L205 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@59929a67 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 29.07 02:04:32, skipping insertion in model container [2020-07-29 02:04:32,224 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2020-07-29 02:04:32,224 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 02:04:31" (2/3) ... [2020-07-29 02:04:32,225 INFO L205 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@59929a67 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 29.07 02:04:32, skipping insertion in model container [2020-07-29 02:04:32,225 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2020-07-29 02:04:32,225 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 29.07 02:04:32" (3/3) ... [2020-07-29 02:04:32,227 INFO L371 chiAutomizerObserver]: Analyzing ICFG simple-ext.i [2020-07-29 02:04:32,278 INFO L356 BuchiCegarLoop]: Interprodecural is true [2020-07-29 02:04:32,278 INFO L357 BuchiCegarLoop]: Hoare is false [2020-07-29 02:04:32,278 INFO L358 BuchiCegarLoop]: Compute interpolants for ForwardPredicates [2020-07-29 02:04:32,278 INFO L359 BuchiCegarLoop]: Backedges is STRAIGHT_LINE [2020-07-29 02:04:32,279 INFO L360 BuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2020-07-29 02:04:32,279 INFO L361 BuchiCegarLoop]: Difference is false [2020-07-29 02:04:32,279 INFO L362 BuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2020-07-29 02:04:32,279 INFO L365 BuchiCegarLoop]: ======== Iteration 0==of CEGAR loop == BuchiCegarLoop======== [2020-07-29 02:04:32,291 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 20 states. [2020-07-29 02:04:32,317 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 10 [2020-07-29 02:04:32,317 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2020-07-29 02:04:32,317 INFO L119 BuchiIsEmpty]: Starting construction of run [2020-07-29 02:04:32,322 INFO L849 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1] [2020-07-29 02:04:32,323 INFO L850 BuchiCegarLoop]: Counterexample loop histogram [1] [2020-07-29 02:04:32,323 INFO L424 BuchiCegarLoop]: ======== Iteration 1============ [2020-07-29 02:04:32,323 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 20 states. [2020-07-29 02:04:32,327 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 10 [2020-07-29 02:04:32,327 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2020-07-29 02:04:32,327 INFO L119 BuchiIsEmpty]: Starting construction of run [2020-07-29 02:04:32,328 INFO L849 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1] [2020-07-29 02:04:32,328 INFO L850 BuchiCegarLoop]: Counterexample loop histogram [1] [2020-07-29 02:04:32,335 INFO L794 eck$LassoCheckResult]: Stem: 15#ULTIMATE.startENTRYtrue #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; 13#L-1true havoc main_#res;havoc main_#t~malloc2.base, main_#t~malloc2.offset, main_#t~malloc4.base, main_#t~malloc4.offset, main_#t~mem5.base, main_#t~mem5.offset, main_#t~post6, main_#t~nondet3, main_#t~mem7, main_#t~mem8.base, main_#t~mem8.offset, main_#t~post9, main_#t~mem10.base, main_#t~mem10.offset, main_~tmp~0.base, main_~tmp~0.offset, main_~a~0.base, main_~a~0.offset, main_~t~0.base, main_~t~0.offset, main_~p~0.base, main_~p~0.offset, main_~i~0;call main_#t~malloc2.base, main_#t~malloc2.offset := #Ultimate.allocOnHeap(8);main_~a~0.base, main_~a~0.offset := main_#t~malloc2.base, main_#t~malloc2.offset; 11#L522true assume main_~a~0.base == 0 && main_~a~0.offset == 0;myexit_#in~s := 1;havoc myexit_~s;myexit_~s := myexit_#in~s; 5#L514true [2020-07-29 02:04:32,336 INFO L796 eck$LassoCheckResult]: Loop: 5#L514true assume true; 5#L514true [2020-07-29 02:04:32,343 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 02:04:32,343 INFO L82 PathProgramCache]: Analyzing trace with hash 29858, now seen corresponding path program 1 times [2020-07-29 02:04:32,355 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-29 02:04:32,356 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [276308893] [2020-07-29 02:04:32,356 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-29 02:04:32,472 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 02:04:32,596 INFO L280 TraceCheckUtils]: 0: Hoare triple {24#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {24#true} is VALID [2020-07-29 02:04:32,600 INFO L280 TraceCheckUtils]: 1: Hoare triple {24#true} havoc main_#res;havoc main_#t~malloc2.base, main_#t~malloc2.offset, main_#t~malloc4.base, main_#t~malloc4.offset, main_#t~mem5.base, main_#t~mem5.offset, main_#t~post6, main_#t~nondet3, main_#t~mem7, main_#t~mem8.base, main_#t~mem8.offset, main_#t~post9, main_#t~mem10.base, main_#t~mem10.offset, main_~tmp~0.base, main_~tmp~0.offset, main_~a~0.base, main_~a~0.offset, main_~t~0.base, main_~t~0.offset, main_~p~0.base, main_~p~0.offset, main_~i~0;call main_#t~malloc2.base, main_#t~malloc2.offset := #Ultimate.allocOnHeap(8);main_~a~0.base, main_~a~0.offset := main_#t~malloc2.base, main_#t~malloc2.offset; {26#(not (= 0 ULTIMATE.start_main_~a~0.base))} is VALID [2020-07-29 02:04:32,601 INFO L280 TraceCheckUtils]: 2: Hoare triple {26#(not (= 0 ULTIMATE.start_main_~a~0.base))} assume main_~a~0.base == 0 && main_~a~0.offset == 0;myexit_#in~s := 1;havoc myexit_~s;myexit_~s := myexit_#in~s; {25#false} is VALID [2020-07-29 02:04:32,604 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 02:04:32,607 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [276308893] [2020-07-29 02:04:32,608 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-29 02:04:32,609 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2020-07-29 02:04:32,610 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1031087238] [2020-07-29 02:04:32,618 INFO L799 eck$LassoCheckResult]: stem already infeasible [2020-07-29 02:04:32,618 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 02:04:32,618 INFO L82 PathProgramCache]: Analyzing trace with hash 101, now seen corresponding path program 1 times [2020-07-29 02:04:32,619 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-29 02:04:32,619 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1832192936] [2020-07-29 02:04:32,619 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-29 02:04:32,639 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-29 02:04:32,640 INFO L221 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2020-07-29 02:04:32,643 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-29 02:04:32,645 INFO L221 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2020-07-29 02:04:32,665 INFO L174 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2020-07-29 02:04:32,691 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-29 02:04:32,707 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2020-07-29 02:04:32,708 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2020-07-29 02:04:32,710 INFO L87 Difference]: Start difference. First operand 20 states. Second operand 3 states. [2020-07-29 02:04:32,792 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 02:04:32,792 INFO L93 Difference]: Finished difference Result 19 states and 22 transitions. [2020-07-29 02:04:32,794 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2020-07-29 02:04:32,795 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2020-07-29 02:04:32,807 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 3 edges. 3 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 02:04:32,809 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 19 states and 22 transitions. [2020-07-29 02:04:32,813 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 8 [2020-07-29 02:04:32,823 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 19 states to 14 states and 17 transitions. [2020-07-29 02:04:32,824 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 14 [2020-07-29 02:04:32,824 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 14 [2020-07-29 02:04:32,825 INFO L73 IsDeterministic]: Start isDeterministic. Operand 14 states and 17 transitions. [2020-07-29 02:04:32,825 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2020-07-29 02:04:32,825 INFO L688 BuchiCegarLoop]: Abstraction has 14 states and 17 transitions. [2020-07-29 02:04:32,844 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 14 states and 17 transitions. [2020-07-29 02:04:32,856 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 14 to 14. [2020-07-29 02:04:32,856 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-29 02:04:32,857 INFO L82 GeneralOperation]: Start isEquivalent. First operand 14 states and 17 transitions. Second operand 14 states. [2020-07-29 02:04:32,857 INFO L74 IsIncluded]: Start isIncluded. First operand 14 states and 17 transitions. Second operand 14 states. [2020-07-29 02:04:32,859 INFO L87 Difference]: Start difference. First operand 14 states and 17 transitions. Second operand 14 states. [2020-07-29 02:04:32,871 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 02:04:32,872 INFO L93 Difference]: Finished difference Result 14 states and 17 transitions. [2020-07-29 02:04:32,872 INFO L276 IsEmpty]: Start isEmpty. Operand 14 states and 17 transitions. [2020-07-29 02:04:32,873 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 02:04:32,873 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 02:04:32,874 INFO L74 IsIncluded]: Start isIncluded. First operand 14 states. Second operand 14 states and 17 transitions. [2020-07-29 02:04:32,874 INFO L87 Difference]: Start difference. First operand 14 states. Second operand 14 states and 17 transitions. [2020-07-29 02:04:32,876 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 02:04:32,877 INFO L93 Difference]: Finished difference Result 14 states and 17 transitions. [2020-07-29 02:04:32,877 INFO L276 IsEmpty]: Start isEmpty. Operand 14 states and 17 transitions. [2020-07-29 02:04:32,877 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 02:04:32,878 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 02:04:32,878 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-29 02:04:32,879 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-29 02:04:32,880 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2020-07-29 02:04:32,882 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 17 transitions. [2020-07-29 02:04:32,883 INFO L711 BuchiCegarLoop]: Abstraction has 14 states and 17 transitions. [2020-07-29 02:04:32,883 INFO L591 BuchiCegarLoop]: Abstraction has 14 states and 17 transitions. [2020-07-29 02:04:32,883 INFO L424 BuchiCegarLoop]: ======== Iteration 2============ [2020-07-29 02:04:32,884 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 14 states and 17 transitions. [2020-07-29 02:04:32,885 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 8 [2020-07-29 02:04:32,885 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2020-07-29 02:04:32,885 INFO L119 BuchiIsEmpty]: Starting construction of run [2020-07-29 02:04:32,886 INFO L849 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1] [2020-07-29 02:04:32,886 INFO L850 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1] [2020-07-29 02:04:32,887 INFO L794 eck$LassoCheckResult]: Stem: 60#ULTIMATE.startENTRY #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; 59#L-1 havoc main_#res;havoc main_#t~malloc2.base, main_#t~malloc2.offset, main_#t~malloc4.base, main_#t~malloc4.offset, main_#t~mem5.base, main_#t~mem5.offset, main_#t~post6, main_#t~nondet3, main_#t~mem7, main_#t~mem8.base, main_#t~mem8.offset, main_#t~post9, main_#t~mem10.base, main_#t~mem10.offset, main_~tmp~0.base, main_~tmp~0.offset, main_~a~0.base, main_~a~0.offset, main_~t~0.base, main_~t~0.offset, main_~p~0.base, main_~p~0.offset, main_~i~0;call main_#t~malloc2.base, main_#t~malloc2.offset := #Ultimate.allocOnHeap(8);main_~a~0.base, main_~a~0.offset := main_#t~malloc2.base, main_#t~malloc2.offset; 57#L522 assume !(main_~a~0.base == 0 && main_~a~0.offset == 0); 58#L522-1 havoc main_~t~0.base, main_~t~0.offset;main_~p~0.base, main_~p~0.offset := main_~a~0.base, main_~a~0.offset;main_~i~0 := 0; 53#L526-2 [2020-07-29 02:04:32,891 INFO L796 eck$LassoCheckResult]: Loop: 53#L526-2 assume !!(main_~i~0 < 30 && 0 != main_#t~nondet3);havoc main_#t~nondet3;call write~int(main_~i~0, main_~p~0.base, main_~p~0.offset, 4);call main_#t~malloc4.base, main_#t~malloc4.offset := #Ultimate.allocOnHeap(8);main_~t~0.base, main_~t~0.offset := main_#t~malloc4.base, main_#t~malloc4.offset; 55#L529 assume !(main_~t~0.base == 0 && main_~t~0.offset == 0); 61#L529-1 call write~$Pointer$(main_~t~0.base, main_~t~0.offset, main_~p~0.base, 4 + main_~p~0.offset, 4);call main_#t~mem5.base, main_#t~mem5.offset := read~$Pointer$(main_~p~0.base, 4 + main_~p~0.offset, 4);main_~p~0.base, main_~p~0.offset := main_#t~mem5.base, main_#t~mem5.offset;havoc main_#t~mem5.base, main_#t~mem5.offset;main_#t~post6 := main_~i~0;main_~i~0 := 1 + main_#t~post6;havoc main_#t~post6; 53#L526-2 [2020-07-29 02:04:32,891 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 02:04:32,892 INFO L82 PathProgramCache]: Analyzing trace with hash 925701, now seen corresponding path program 1 times [2020-07-29 02:04:32,892 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-29 02:04:32,893 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [167604507] [2020-07-29 02:04:32,894 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-29 02:04:32,920 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-29 02:04:32,920 INFO L221 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2020-07-29 02:04:32,941 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-29 02:04:32,942 INFO L221 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2020-07-29 02:04:32,949 INFO L174 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2020-07-29 02:04:32,951 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 02:04:32,952 INFO L82 PathProgramCache]: Analyzing trace with hash 48852, now seen corresponding path program 1 times [2020-07-29 02:04:32,953 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-29 02:04:32,953 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1834786571] [2020-07-29 02:04:32,953 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-29 02:04:33,001 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-29 02:04:33,003 INFO L221 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2020-07-29 02:04:33,029 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-29 02:04:33,029 INFO L221 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2020-07-29 02:04:33,036 INFO L174 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2020-07-29 02:04:33,036 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 02:04:33,037 INFO L82 PathProgramCache]: Analyzing trace with hash 1807773776, now seen corresponding path program 1 times [2020-07-29 02:04:33,037 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-29 02:04:33,037 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [178149895] [2020-07-29 02:04:33,037 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-29 02:04:33,059 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-29 02:04:33,059 INFO L221 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2020-07-29 02:04:33,086 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-29 02:04:33,086 INFO L221 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2020-07-29 02:04:33,093 INFO L174 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2020-07-29 02:04:33,439 WARN L193 SmtUtils]: Spent 338.00 ms on a formula simplification. DAG size of input: 99 DAG size of output: 89 [2020-07-29 02:04:33,578 INFO L544 ElimStorePlain]: Start of recursive call 2: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2020-07-29 02:04:33,683 WARN L193 SmtUtils]: Spent 104.00 ms on a formula simplification that was a NOOP. DAG size: 81 [2020-07-29 02:04:33,685 INFO L624 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2020-07-29 02:04:33,691 INFO L544 ElimStorePlain]: Start of recursive call 3: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2020-07-29 02:04:33,781 INFO L624 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2020-07-29 02:04:33,783 INFO L544 ElimStorePlain]: Start of recursive call 1: 2 dim-2 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2020-07-29 02:04:33,783 INFO L244 ElimStorePlain]: Needed 3 recursive calls to eliminate 2 variables, input treesize:157, output treesize:133 [2020-07-29 02:04:34,130 INFO L210 LassoAnalysis]: Preferences: [2020-07-29 02:04:34,131 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2020-07-29 02:04:34,131 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2020-07-29 02:04:34,131 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2020-07-29 02:04:34,132 INFO L129 ssoRankerPreferences]: Use exernal solver: false [2020-07-29 02:04:34,132 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2020-07-29 02:04:34,132 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2020-07-29 02:04:34,132 INFO L132 ssoRankerPreferences]: Path of dumped script: [2020-07-29 02:04:34,132 INFO L133 ssoRankerPreferences]: Filename of dumped script: simple-ext.i_Iteration2_Lasso [2020-07-29 02:04:34,133 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2020-07-29 02:04:34,133 INFO L274 LassoAnalysis]: Starting lasso preprocessing... [2020-07-29 02:04:34,190 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2020-07-29 02:04:34,199 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2020-07-29 02:04:34,204 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2020-07-29 02:04:34,211 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2020-07-29 02:04:34,216 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2020-07-29 02:04:34,223 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2020-07-29 02:04:34,229 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2020-07-29 02:04:34,235 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2020-07-29 02:04:34,239 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2020-07-29 02:04:34,243 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2020-07-29 02:04:34,502 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2020-07-29 02:04:34,507 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2020-07-29 02:04:34,512 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2020-07-29 02:04:34,516 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2020-07-29 02:04:34,521 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2020-07-29 02:04:34,525 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2020-07-29 02:04:34,535 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2020-07-29 02:04:34,542 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2020-07-29 02:04:34,550 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2020-07-29 02:04:35,411 INFO L292 LassoAnalysis]: Preprocessing complete. [2020-07-29 02:04:35,416 INFO L489 LassoAnalysis]: Using template 'affine'. No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 2 with z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 2 with z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2020-07-29 02:04:35,423 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2020-07-29 02:04:35,425 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2020-07-29 02:04:35,426 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2020-07-29 02:04:35,426 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2020-07-29 02:04:35,426 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2020-07-29 02:04:35,427 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2020-07-29 02:04:35,429 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2020-07-29 02:04:35,429 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2020-07-29 02:04:35,432 INFO L522 LassoAnalysis]: Proving termination failed for this template and these settings. No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 3 with z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 3 with z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2020-07-29 02:04:35,456 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2020-07-29 02:04:35,459 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2020-07-29 02:04:35,459 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2020-07-29 02:04:35,460 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2020-07-29 02:04:35,460 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2020-07-29 02:04:35,460 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2020-07-29 02:04:35,461 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2020-07-29 02:04:35,461 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2020-07-29 02:04:35,466 INFO L522 LassoAnalysis]: Proving termination failed for this template and these settings. No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 4 with z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 4 with z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2020-07-29 02:04:35,494 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2020-07-29 02:04:35,495 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2020-07-29 02:04:35,495 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2020-07-29 02:04:35,496 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2020-07-29 02:04:35,496 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2020-07-29 02:04:35,500 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2020-07-29 02:04:35,500 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2020-07-29 02:04:35,505 INFO L522 LassoAnalysis]: Proving termination failed for this template and these settings. No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 5 with z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 5 with z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2020-07-29 02:04:35,529 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2020-07-29 02:04:35,531 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2020-07-29 02:04:35,531 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2020-07-29 02:04:35,532 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2020-07-29 02:04:35,532 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2020-07-29 02:04:35,532 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2020-07-29 02:04:35,532 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2020-07-29 02:04:35,533 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2020-07-29 02:04:35,535 INFO L522 LassoAnalysis]: Proving termination failed for this template and these settings. No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 6 with z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 6 with z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2020-07-29 02:04:35,564 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2020-07-29 02:04:35,566 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2020-07-29 02:04:35,566 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2020-07-29 02:04:35,566 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2020-07-29 02:04:35,566 INFO L204 nArgumentSynthesizer]: 2 loop disjuncts [2020-07-29 02:04:35,566 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2020-07-29 02:04:35,573 INFO L401 nArgumentSynthesizer]: We have 4 Motzkin's Theorem applications. [2020-07-29 02:04:35,574 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2020-07-29 02:04:35,576 INFO L522 LassoAnalysis]: Proving termination failed for this template and these settings. No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 7 with z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 7 with z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2020-07-29 02:04:35,604 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2020-07-29 02:04:35,605 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2020-07-29 02:04:35,605 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2020-07-29 02:04:35,605 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2020-07-29 02:04:35,605 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2020-07-29 02:04:35,609 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2020-07-29 02:04:35,610 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2020-07-29 02:04:35,618 INFO L522 LassoAnalysis]: Proving termination failed for this template and these settings. No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 8 with z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 8 with z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2020-07-29 02:04:35,643 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2020-07-29 02:04:35,645 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2020-07-29 02:04:35,646 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2020-07-29 02:04:35,646 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2020-07-29 02:04:35,646 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2020-07-29 02:04:35,648 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2020-07-29 02:04:35,648 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2020-07-29 02:04:35,652 INFO L522 LassoAnalysis]: Proving termination failed for this template and these settings. No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 9 with z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2020-07-29 02:04:35,694 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2020-07-29 02:04:35,696 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2020-07-29 02:04:35,696 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2020-07-29 02:04:35,696 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2020-07-29 02:04:35,696 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2020-07-29 02:04:35,696 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2020-07-29 02:04:35,698 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2020-07-29 02:04:35,698 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. Waiting until toolchain timeout for monitored process 9 with z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2020-07-29 02:04:35,702 INFO L522 LassoAnalysis]: Proving termination failed for this template and these settings. No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 10 with z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 10 with z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2020-07-29 02:04:35,729 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2020-07-29 02:04:35,730 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2020-07-29 02:04:35,730 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2020-07-29 02:04:35,731 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2020-07-29 02:04:35,731 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2020-07-29 02:04:35,731 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2020-07-29 02:04:35,731 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2020-07-29 02:04:35,732 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2020-07-29 02:04:35,733 INFO L522 LassoAnalysis]: Proving termination failed for this template and these settings. No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 11 with z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 11 with z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2020-07-29 02:04:35,759 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2020-07-29 02:04:35,761 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2020-07-29 02:04:35,761 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2020-07-29 02:04:35,761 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2020-07-29 02:04:35,761 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2020-07-29 02:04:35,765 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2020-07-29 02:04:35,765 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2020-07-29 02:04:35,776 INFO L522 LassoAnalysis]: Proving termination failed for this template and these settings. No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 12 with z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 12 with z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2020-07-29 02:04:35,803 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2020-07-29 02:04:35,810 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2020-07-29 02:04:35,811 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2020-07-29 02:04:35,811 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2020-07-29 02:04:35,811 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2020-07-29 02:04:35,811 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2020-07-29 02:04:35,813 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2020-07-29 02:04:35,813 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2020-07-29 02:04:35,815 INFO L522 LassoAnalysis]: Proving termination failed for this template and these settings. No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 13 with z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2020-07-29 02:04:35,842 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2020-07-29 02:04:35,844 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2020-07-29 02:04:35,844 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2020-07-29 02:04:35,844 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2020-07-29 02:04:35,844 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2020-07-29 02:04:35,847 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2020-07-29 02:04:35,847 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. Waiting until toolchain timeout for monitored process 13 with z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2020-07-29 02:04:35,858 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2020-07-29 02:04:35,879 INFO L443 ModelExtractionUtils]: Simplification made 8 calls to the SMT solver. [2020-07-29 02:04:35,879 INFO L444 ModelExtractionUtils]: 0 out of 7 variables were initially zero. Simplification set additionally 4 variables to zero. No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 14 with z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2020-07-29 02:04:35,935 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... Waiting until toolchain timeout for monitored process 14 with z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2020-07-29 02:04:35,946 INFO L438 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2020-07-29 02:04:35,947 INFO L510 LassoAnalysis]: Proved termination. [2020-07-29 02:04:35,948 INFO L512 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_main_~i~0) = -2*ULTIMATE.start_main_~i~0 + 59 Supporting invariants [] [2020-07-29 02:04:36,034 INFO L297 tatePredicateManager]: 2 out of 2 supporting invariants were superfluous and have been removed [2020-07-29 02:04:36,043 INFO L393 LassoCheck]: Loop: "assume !!(main_~i~0 < 30 && 0 != main_#t~nondet3);havoc main_#t~nondet3;call write~int(main_~i~0, main_~p~0.base, main_~p~0.offset, 4);call main_#t~malloc4.base, main_#t~malloc4.offset := #Ultimate.allocOnHeap(8);main_~t~0.base, main_~t~0.offset := main_#t~malloc4.base, main_#t~malloc4.offset;" "assume !(main_~t~0.base == 0 && main_~t~0.offset == 0);" "call write~$Pointer$(main_~t~0.base, main_~t~0.offset, main_~p~0.base, 4 + main_~p~0.offset, 4);call main_#t~mem5.base, main_#t~mem5.offset := read~$Pointer$(main_~p~0.base, 4 + main_~p~0.offset, 4);main_~p~0.base, main_~p~0.offset := main_#t~mem5.base, main_#t~mem5.offset;havoc main_#t~mem5.base, main_#t~mem5.offset;main_#t~post6 := main_~i~0;main_~i~0 := 1 + main_#t~post6;havoc main_#t~post6;" [2020-07-29 02:04:36,051 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 02:04:36,077 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 02:04:36,092 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 02:04:36,094 INFO L263 TraceCheckSpWp]: Trace formula consists of 27 conjuncts, 2 conjunts are in the unsatisfiable core [2020-07-29 02:04:36,103 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 02:04:36,104 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2020-07-29 02:04:36,113 INFO L280 TraceCheckUtils]: 0: Hoare triple {99#unseeded} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {99#unseeded} is VALID [2020-07-29 02:04:36,114 INFO L280 TraceCheckUtils]: 1: Hoare triple {99#unseeded} havoc main_#res;havoc main_#t~malloc2.base, main_#t~malloc2.offset, main_#t~malloc4.base, main_#t~malloc4.offset, main_#t~mem5.base, main_#t~mem5.offset, main_#t~post6, main_#t~nondet3, main_#t~mem7, main_#t~mem8.base, main_#t~mem8.offset, main_#t~post9, main_#t~mem10.base, main_#t~mem10.offset, main_~tmp~0.base, main_~tmp~0.offset, main_~a~0.base, main_~a~0.offset, main_~t~0.base, main_~t~0.offset, main_~p~0.base, main_~p~0.offset, main_~i~0;call main_#t~malloc2.base, main_#t~malloc2.offset := #Ultimate.allocOnHeap(8);main_~a~0.base, main_~a~0.offset := main_#t~malloc2.base, main_#t~malloc2.offset; {99#unseeded} is VALID [2020-07-29 02:04:36,115 INFO L280 TraceCheckUtils]: 2: Hoare triple {99#unseeded} assume !(main_~a~0.base == 0 && main_~a~0.offset == 0); {99#unseeded} is VALID [2020-07-29 02:04:36,115 INFO L280 TraceCheckUtils]: 3: Hoare triple {99#unseeded} havoc main_~t~0.base, main_~t~0.offset;main_~p~0.base, main_~p~0.offset := main_~a~0.base, main_~a~0.offset;main_~i~0 := 0; {99#unseeded} is VALID [2020-07-29 02:04:36,128 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 02:04:36,129 INFO L263 TraceCheckSpWp]: Trace formula consists of 37 conjuncts, 4 conjunts are in the unsatisfiable core [2020-07-29 02:04:36,135 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 02:04:36,136 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2020-07-29 02:04:36,159 INFO L280 TraceCheckUtils]: 0: Hoare triple {102#(>= oldRank0 (+ (* (- 2) ULTIMATE.start_main_~i~0) 59))} assume !!(main_~i~0 < 30 && 0 != main_#t~nondet3);havoc main_#t~nondet3;call write~int(main_~i~0, main_~p~0.base, main_~p~0.offset, 4);call main_#t~malloc4.base, main_#t~malloc4.offset := #Ultimate.allocOnHeap(8);main_~t~0.base, main_~t~0.offset := main_#t~malloc4.base, main_#t~malloc4.offset; {136#(and (<= 59 (+ oldRank0 (* 2 ULTIMATE.start_main_~i~0))) (< ULTIMATE.start_main_~i~0 30))} is VALID [2020-07-29 02:04:36,160 INFO L280 TraceCheckUtils]: 1: Hoare triple {136#(and (<= 59 (+ oldRank0 (* 2 ULTIMATE.start_main_~i~0))) (< ULTIMATE.start_main_~i~0 30))} assume !(main_~t~0.base == 0 && main_~t~0.offset == 0); {136#(and (<= 59 (+ oldRank0 (* 2 ULTIMATE.start_main_~i~0))) (< ULTIMATE.start_main_~i~0 30))} is VALID [2020-07-29 02:04:36,162 INFO L280 TraceCheckUtils]: 2: Hoare triple {136#(and (<= 59 (+ oldRank0 (* 2 ULTIMATE.start_main_~i~0))) (< ULTIMATE.start_main_~i~0 30))} call write~$Pointer$(main_~t~0.base, main_~t~0.offset, main_~p~0.base, 4 + main_~p~0.offset, 4);call main_#t~mem5.base, main_#t~mem5.offset := read~$Pointer$(main_~p~0.base, 4 + main_~p~0.offset, 4);main_~p~0.base, main_~p~0.offset := main_#t~mem5.base, main_#t~mem5.offset;havoc main_#t~mem5.base, main_#t~mem5.offset;main_#t~post6 := main_~i~0;main_~i~0 := 1 + main_#t~post6;havoc main_#t~post6; {122#(or (and (> oldRank0 (+ (* (- 2) ULTIMATE.start_main_~i~0) 59)) (>= oldRank0 0)) unseeded)} is VALID [2020-07-29 02:04:36,163 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 02:04:36,163 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2020-07-29 02:04:36,174 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 7 edges. 7 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 02:04:36,177 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states. Stem has 4 letters. Loop has 3 letters. [2020-07-29 02:04:36,177 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,180 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 2 loop predicates [2020-07-29 02:04:36,181 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 14 states and 17 transitions. cyclomatic complexity: 7 Second operand 3 states. [2020-07-29 02:04:36,272 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 14 states and 17 transitions. cyclomatic complexity: 7. Second operand 3 states. Result 19 states and 26 transitions. Complement of second has 7 states. [2020-07-29 02:04:36,272 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 4 states 1 stem states 2 non-accepting loop states 1 accepting loop states [2020-07-29 02:04:36,273 INFO L123 tractBuchiDifference]: Start testing correctness of buchiDifferenceNCSBLazy3 [2020-07-29 02:04:36,273 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 14 states and 17 transitions. cyclomatic complexity: 7 [2020-07-29 02:04:36,273 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2020-07-29 02:04:36,273 INFO L119 BuchiIsEmpty]: Starting construction of run [2020-07-29 02:04:36,274 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 3 states. [2020-07-29 02:04:36,277 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 2 [2020-07-29 02:04:36,277 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2020-07-29 02:04:36,277 INFO L119 BuchiIsEmpty]: Starting construction of run [2020-07-29 02:04:36,278 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 19 states and 26 transitions. [2020-07-29 02:04:36,279 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 5 [2020-07-29 02:04:36,279 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2020-07-29 02:04:36,279 INFO L119 BuchiIsEmpty]: Starting construction of run [2020-07-29 02:04:36,281 INFO L70 LassoExtractor]: Start lassoExtractor. Operand 14 states and 17 transitions. cyclomatic complexity: 7 [2020-07-29 02:04:36,283 INFO L86 LassoExtractor]: Finished lassoExtractor. Found 8 examples of accepted words. [2020-07-29 02:04:36,284 INFO L70 LassoExtractor]: Start lassoExtractor. Operand 3 states. [2020-07-29 02:04:36,285 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 2 [2020-07-29 02:04:36,286 INFO L86 LassoExtractor]: Finished lassoExtractor. Found 1 examples of accepted words. [2020-07-29 02:04:36,286 INFO L70 LassoExtractor]: Start lassoExtractor. Operand 19 states and 26 transitions. cyclomatic complexity: 12 [2020-07-29 02:04:36,287 INFO L86 LassoExtractor]: Finished lassoExtractor. Found 5 examples of accepted words. [2020-07-29 02:04:36,287 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 14 states and 17 transitions. cyclomatic complexity: 7 Stem has 4 letters. Loop has 3 letters. [2020-07-29 02:04:36,288 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,288 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states. Stem has 4 letters. Loop has 3 letters. [2020-07-29 02:04:36,288 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,289 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 19 states and 26 transitions. cyclomatic complexity: 12 Stem has 4 letters. Loop has 3 letters. [2020-07-29 02:04:36,289 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,289 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 14 states and 17 transitions. cyclomatic complexity: 7 Stem has 1 letters. Loop has 2 letters. [2020-07-29 02:04:36,290 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,290 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states. Stem has 1 letters. Loop has 2 letters. [2020-07-29 02:04:36,290 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,290 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 19 states and 26 transitions. cyclomatic complexity: 12 Stem has 1 letters. Loop has 2 letters. [2020-07-29 02:04:36,290 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,291 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 14 states and 17 transitions. cyclomatic complexity: 7 Stem has 6 letters. Loop has 3 letters. [2020-07-29 02:04:36,291 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,291 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states. Stem has 6 letters. Loop has 3 letters. [2020-07-29 02:04:36,291 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,292 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 19 states and 26 transitions. cyclomatic complexity: 12 Stem has 6 letters. Loop has 3 letters. [2020-07-29 02:04:36,292 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,292 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 14 states and 17 transitions. cyclomatic complexity: 7 Stem has 19 letters. Loop has 19 letters. [2020-07-29 02:04:36,292 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,293 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states. Stem has 19 letters. Loop has 19 letters. [2020-07-29 02:04:36,293 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,293 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 19 states and 26 transitions. cyclomatic complexity: 12 Stem has 19 letters. Loop has 19 letters. [2020-07-29 02:04:36,293 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,293 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 14 states and 17 transitions. cyclomatic complexity: 7 Stem has 14 letters. Loop has 14 letters. [2020-07-29 02:04:36,294 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,294 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states. Stem has 14 letters. Loop has 14 letters. [2020-07-29 02:04:36,294 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,294 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 19 states and 26 transitions. cyclomatic complexity: 12 Stem has 14 letters. Loop has 14 letters. [2020-07-29 02:04:36,295 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,295 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 14 states and 17 transitions. cyclomatic complexity: 7 Stem has 4 letters. Loop has 4 letters. [2020-07-29 02:04:36,295 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,295 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states. Stem has 4 letters. Loop has 4 letters. [2020-07-29 02:04:36,295 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,296 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 19 states and 26 transitions. cyclomatic complexity: 12 Stem has 4 letters. Loop has 4 letters. [2020-07-29 02:04:36,296 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,296 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 14 states and 17 transitions. cyclomatic complexity: 7 Stem has 6 letters. Loop has 1 letters. [2020-07-29 02:04:36,296 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,297 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states. Stem has 6 letters. Loop has 1 letters. [2020-07-29 02:04:36,297 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,297 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 19 states and 26 transitions. cyclomatic complexity: 12 Stem has 6 letters. Loop has 1 letters. [2020-07-29 02:04:36,297 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,298 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 14 states and 17 transitions. cyclomatic complexity: 7 Stem has 8 letters. Loop has 1 letters. [2020-07-29 02:04:36,298 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,298 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states. Stem has 8 letters. Loop has 1 letters. [2020-07-29 02:04:36,298 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,299 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 19 states and 26 transitions. cyclomatic complexity: 12 Stem has 8 letters. Loop has 1 letters. [2020-07-29 02:04:36,299 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,299 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 14 states and 17 transitions. cyclomatic complexity: 7 Stem has 8 letters. Loop has 3 letters. [2020-07-29 02:04:36,299 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,300 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states. Stem has 8 letters. Loop has 3 letters. [2020-07-29 02:04:36,300 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,300 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 19 states and 26 transitions. cyclomatic complexity: 12 Stem has 8 letters. Loop has 3 letters. [2020-07-29 02:04:36,300 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,301 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 14 states and 17 transitions. cyclomatic complexity: 7 Stem has 6 letters. Loop has 3 letters. [2020-07-29 02:04:36,301 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,301 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states. Stem has 6 letters. Loop has 3 letters. [2020-07-29 02:04:36,301 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,302 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 19 states and 26 transitions. cyclomatic complexity: 12 Stem has 6 letters. Loop has 3 letters. [2020-07-29 02:04:36,302 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,302 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 14 states and 17 transitions. cyclomatic complexity: 7 Stem has 7 letters. Loop has 3 letters. [2020-07-29 02:04:36,302 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,302 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states. Stem has 7 letters. Loop has 3 letters. [2020-07-29 02:04:36,303 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,303 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 19 states and 26 transitions. cyclomatic complexity: 12 Stem has 7 letters. Loop has 3 letters. [2020-07-29 02:04:36,303 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,303 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 14 states and 17 transitions. cyclomatic complexity: 7 Stem has 4 letters. Loop has 3 letters. [2020-07-29 02:04:36,304 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,304 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states. Stem has 4 letters. Loop has 3 letters. [2020-07-29 02:04:36,304 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,304 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 19 states and 26 transitions. cyclomatic complexity: 12 Stem has 4 letters. Loop has 3 letters. [2020-07-29 02:04:36,305 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,305 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 14 states and 17 transitions. cyclomatic complexity: 7 Stem has 5 letters. Loop has 3 letters. [2020-07-29 02:04:36,305 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,305 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states. Stem has 5 letters. Loop has 3 letters. [2020-07-29 02:04:36,306 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,306 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 19 states and 26 transitions. cyclomatic complexity: 12 Stem has 5 letters. Loop has 3 letters. [2020-07-29 02:04:36,306 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,306 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 14 states and 17 transitions. cyclomatic complexity: 7 Stem has 6 letters. Loop has 3 letters. [2020-07-29 02:04:36,307 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,307 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states. Stem has 6 letters. Loop has 3 letters. [2020-07-29 02:04:36,307 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,307 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 19 states and 26 transitions. cyclomatic complexity: 12 Stem has 6 letters. Loop has 3 letters. [2020-07-29 02:04:36,308 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,308 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 14 states and 17 transitions. cyclomatic complexity: 7 Stem has 1 letters. Loop has 2 letters. [2020-07-29 02:04:36,308 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,308 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states. Stem has 1 letters. Loop has 2 letters. [2020-07-29 02:04:36,309 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,309 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 19 states and 26 transitions. cyclomatic complexity: 12 Stem has 1 letters. Loop has 2 letters. [2020-07-29 02:04:36,309 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,309 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 14 states and 17 transitions. cyclomatic complexity: 7 Stem has 6 letters. Loop has 1 letters. [2020-07-29 02:04:36,309 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,310 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states. Stem has 6 letters. Loop has 1 letters. [2020-07-29 02:04:36,310 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,310 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 19 states and 26 transitions. cyclomatic complexity: 12 Stem has 6 letters. Loop has 1 letters. [2020-07-29 02:04:36,310 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,310 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 14 states and 17 transitions. cyclomatic complexity: 7 Stem has 8 letters. Loop has 1 letters. [2020-07-29 02:04:36,311 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,311 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states. Stem has 8 letters. Loop has 1 letters. [2020-07-29 02:04:36,311 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,311 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 19 states and 26 transitions. cyclomatic complexity: 12 Stem has 8 letters. Loop has 1 letters. [2020-07-29 02:04:36,312 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,312 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 14 states and 17 transitions. cyclomatic complexity: 7 Stem has 6 letters. Loop has 3 letters. [2020-07-29 02:04:36,312 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,312 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states. Stem has 6 letters. Loop has 3 letters. [2020-07-29 02:04:36,313 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,313 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 19 states and 26 transitions. cyclomatic complexity: 12 Stem has 6 letters. Loop has 3 letters. [2020-07-29 02:04:36,313 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,313 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 14 states and 17 transitions. cyclomatic complexity: 7 Stem has 7 letters. Loop has 3 letters. [2020-07-29 02:04:36,313 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,314 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states. Stem has 7 letters. Loop has 3 letters. [2020-07-29 02:04:36,314 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,314 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 19 states and 26 transitions. cyclomatic complexity: 12 Stem has 7 letters. Loop has 3 letters. [2020-07-29 02:04:36,314 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,314 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 14 states and 17 transitions. cyclomatic complexity: 7 Stem has 8 letters. Loop has 3 letters. [2020-07-29 02:04:36,315 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,315 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states. Stem has 8 letters. Loop has 3 letters. [2020-07-29 02:04:36,315 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,315 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 19 states and 26 transitions. cyclomatic complexity: 12 Stem has 8 letters. Loop has 3 letters. [2020-07-29 02:04:36,316 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,316 INFO L161 tractBuchiDifference]: Finished testing correctness of buchiDifferenceNCSBLazy3 [2020-07-29 02:04:36,317 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2020-07-29 02:04:36,318 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 10 transitions. [2020-07-29 02:04:36,318 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 10 transitions. Stem has 4 letters. Loop has 3 letters. [2020-07-29 02:04:36,318 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,318 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 10 transitions. Stem has 7 letters. Loop has 3 letters. [2020-07-29 02:04:36,319 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,319 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 10 transitions. Stem has 4 letters. Loop has 6 letters. [2020-07-29 02:04:36,319 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2020-07-29 02:04:36,319 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 19 states and 26 transitions. cyclomatic complexity: 12 [2020-07-29 02:04:36,322 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 5 [2020-07-29 02:04:36,323 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 19 states to 16 states and 21 transitions. [2020-07-29 02:04:36,323 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 11 [2020-07-29 02:04:36,324 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 13 [2020-07-29 02:04:36,324 INFO L73 IsDeterministic]: Start isDeterministic. Operand 16 states and 21 transitions. [2020-07-29 02:04:36,324 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2020-07-29 02:04:36,324 INFO L688 BuchiCegarLoop]: Abstraction has 16 states and 21 transitions. [2020-07-29 02:04:36,325 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 16 states and 21 transitions. [2020-07-29 02:04:36,326 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 16 to 16. [2020-07-29 02:04:36,326 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-29 02:04:36,326 INFO L82 GeneralOperation]: Start isEquivalent. First operand 16 states and 21 transitions. Second operand 16 states. [2020-07-29 02:04:36,326 INFO L74 IsIncluded]: Start isIncluded. First operand 16 states and 21 transitions. Second operand 16 states. [2020-07-29 02:04:36,327 INFO L87 Difference]: Start difference. First operand 16 states and 21 transitions. Second operand 16 states. [2020-07-29 02:04:36,327 INFO L149 Difference]: Subtrahend was not deterministic. Recomputing result with determinization. [2020-07-29 02:04:36,331 INFO L93 Difference]: Finished difference Result 16 states and 21 transitions. [2020-07-29 02:04:36,331 INFO L276 IsEmpty]: Start isEmpty. Operand 16 states and 21 transitions. [2020-07-29 02:04:36,332 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 02:04:36,332 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 02:04:36,332 INFO L74 IsIncluded]: Start isIncluded. First operand 16 states. Second operand 16 states and 21 transitions. [2020-07-29 02:04:36,332 INFO L87 Difference]: Start difference. First operand 16 states. Second operand 16 states and 21 transitions. [2020-07-29 02:04:36,333 INFO L149 Difference]: Subtrahend was not deterministic. Recomputing result with determinization. [2020-07-29 02:04:36,335 INFO L93 Difference]: Finished difference Result 16 states and 21 transitions. [2020-07-29 02:04:36,335 INFO L276 IsEmpty]: Start isEmpty. Operand 16 states and 21 transitions. [2020-07-29 02:04:36,336 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 02:04:36,336 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 02:04:36,336 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-29 02:04:36,336 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-29 02:04:36,336 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2020-07-29 02:04:36,338 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 21 transitions. [2020-07-29 02:04:36,338 INFO L711 BuchiCegarLoop]: Abstraction has 16 states and 21 transitions. [2020-07-29 02:04:36,338 INFO L591 BuchiCegarLoop]: Abstraction has 16 states and 21 transitions. [2020-07-29 02:04:36,338 INFO L424 BuchiCegarLoop]: ======== Iteration 3============ [2020-07-29 02:04:36,338 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 16 states and 21 transitions. [2020-07-29 02:04:36,339 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 5 [2020-07-29 02:04:36,339 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2020-07-29 02:04:36,340 INFO L119 BuchiIsEmpty]: Starting construction of run [2020-07-29 02:04:36,340 INFO L849 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1] [2020-07-29 02:04:36,340 INFO L850 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1] [2020-07-29 02:04:36,341 INFO L794 eck$LassoCheckResult]: Stem: 186#ULTIMATE.startENTRY #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; 185#L-1 havoc main_#res;havoc main_#t~malloc2.base, main_#t~malloc2.offset, main_#t~malloc4.base, main_#t~malloc4.offset, main_#t~mem5.base, main_#t~mem5.offset, main_#t~post6, main_#t~nondet3, main_#t~mem7, main_#t~mem8.base, main_#t~mem8.offset, main_#t~post9, main_#t~mem10.base, main_#t~mem10.offset, main_~tmp~0.base, main_~tmp~0.offset, main_~a~0.base, main_~a~0.offset, main_~t~0.base, main_~t~0.offset, main_~p~0.base, main_~p~0.offset, main_~i~0;call main_#t~malloc2.base, main_#t~malloc2.offset := #Ultimate.allocOnHeap(8);main_~a~0.base, main_~a~0.offset := main_#t~malloc2.base, main_#t~malloc2.offset; 183#L522 assume !(main_~a~0.base == 0 && main_~a~0.offset == 0); 184#L522-1 havoc main_~t~0.base, main_~t~0.offset;main_~p~0.base, main_~p~0.offset := main_~a~0.base, main_~a~0.offset;main_~i~0 := 0; 177#L526-2 assume !(main_~i~0 < 30 && 0 != main_#t~nondet3);havoc main_#t~nondet3; 178#L526-3 call write~int(main_~i~0, main_~p~0.base, main_~p~0.offset, 4);call write~$Pointer$(0, 0, main_~p~0.base, 4 + main_~p~0.offset, 4);main_~p~0.base, main_~p~0.offset := main_~a~0.base, main_~a~0.offset;main_~i~0 := 0; 173#L538-2 [2020-07-29 02:04:36,341 INFO L796 eck$LassoCheckResult]: Loop: 173#L538-2 assume !!(main_~p~0.base != 0 || main_~p~0.offset != 0);call main_#t~mem7 := read~int(main_~p~0.base, main_~p~0.offset, 4); 175#L539 assume !(1 != main_#t~mem7);havoc main_#t~mem7; 172#L539-2 call main_#t~mem8.base, main_#t~mem8.offset := read~$Pointer$(main_~p~0.base, 4 + main_~p~0.offset, 4);main_~p~0.base, main_~p~0.offset := main_#t~mem8.base, main_#t~mem8.offset;havoc main_#t~mem8.base, main_#t~mem8.offset;main_#t~post9 := main_~i~0;main_~i~0 := 1 + main_#t~post9;havoc main_#t~post9; 173#L538-2 [2020-07-29 02:04:36,341 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 02:04:36,342 INFO L82 PathProgramCache]: Analyzing trace with hash 889599219, now seen corresponding path program 1 times [2020-07-29 02:04:36,342 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-29 02:04:36,342 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [176765761] [2020-07-29 02:04:36,342 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-29 02:04:36,356 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-29 02:04:36,357 INFO L221 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2020-07-29 02:04:36,368 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-29 02:04:36,368 INFO L221 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2020-07-29 02:04:36,373 INFO L174 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2020-07-29 02:04:36,374 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 02:04:36,374 INFO L82 PathProgramCache]: Analyzing trace with hash 69737, now seen corresponding path program 1 times [2020-07-29 02:04:36,375 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-29 02:04:36,375 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1656763147] [2020-07-29 02:04:36,375 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-29 02:04:36,381 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-29 02:04:36,382 INFO L221 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2020-07-29 02:04:36,386 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-29 02:04:36,387 INFO L221 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2020-07-29 02:04:36,389 INFO L174 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2020-07-29 02:04:36,390 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 02:04:36,390 INFO L82 PathProgramCache]: Analyzing trace with hash 2102156855, now seen corresponding path program 1 times [2020-07-29 02:04:36,391 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-29 02:04:36,391 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1129867761] [2020-07-29 02:04:36,391 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-29 02:04:36,408 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 02:04:36,477 INFO L280 TraceCheckUtils]: 0: Hoare triple {273#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {273#true} is VALID [2020-07-29 02:04:36,477 INFO L280 TraceCheckUtils]: 1: Hoare triple {273#true} havoc main_#res;havoc main_#t~malloc2.base, main_#t~malloc2.offset, main_#t~malloc4.base, main_#t~malloc4.offset, main_#t~mem5.base, main_#t~mem5.offset, main_#t~post6, main_#t~nondet3, main_#t~mem7, main_#t~mem8.base, main_#t~mem8.offset, main_#t~post9, main_#t~mem10.base, main_#t~mem10.offset, main_~tmp~0.base, main_~tmp~0.offset, main_~a~0.base, main_~a~0.offset, main_~t~0.base, main_~t~0.offset, main_~p~0.base, main_~p~0.offset, main_~i~0;call main_#t~malloc2.base, main_#t~malloc2.offset := #Ultimate.allocOnHeap(8);main_~a~0.base, main_~a~0.offset := main_#t~malloc2.base, main_#t~malloc2.offset; {273#true} is VALID [2020-07-29 02:04:36,477 INFO L280 TraceCheckUtils]: 2: Hoare triple {273#true} assume !(main_~a~0.base == 0 && main_~a~0.offset == 0); {273#true} is VALID [2020-07-29 02:04:36,478 INFO L280 TraceCheckUtils]: 3: Hoare triple {273#true} havoc main_~t~0.base, main_~t~0.offset;main_~p~0.base, main_~p~0.offset := main_~a~0.base, main_~a~0.offset;main_~i~0 := 0; {275#(and (= 0 ULTIMATE.start_main_~i~0) (= ULTIMATE.start_main_~a~0.offset ULTIMATE.start_main_~p~0.offset) (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base))} is VALID [2020-07-29 02:04:36,479 INFO L280 TraceCheckUtils]: 4: Hoare triple {275#(and (= 0 ULTIMATE.start_main_~i~0) (= ULTIMATE.start_main_~a~0.offset ULTIMATE.start_main_~p~0.offset) (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base))} assume !(main_~i~0 < 30 && 0 != main_#t~nondet3);havoc main_#t~nondet3; {275#(and (= 0 ULTIMATE.start_main_~i~0) (= ULTIMATE.start_main_~a~0.offset ULTIMATE.start_main_~p~0.offset) (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base))} is VALID [2020-07-29 02:04:36,482 INFO L280 TraceCheckUtils]: 5: Hoare triple {275#(and (= 0 ULTIMATE.start_main_~i~0) (= ULTIMATE.start_main_~a~0.offset ULTIMATE.start_main_~p~0.offset) (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base))} call write~int(main_~i~0, main_~p~0.base, main_~p~0.offset, 4);call write~$Pointer$(0, 0, main_~p~0.base, 4 + main_~p~0.offset, 4);main_~p~0.base, main_~p~0.offset := main_~a~0.base, main_~a~0.offset;main_~i~0 := 0; {276#(= (select (select |#memory_int| ULTIMATE.start_main_~p~0.base) ULTIMATE.start_main_~p~0.offset) 0)} is VALID [2020-07-29 02:04:36,483 INFO L280 TraceCheckUtils]: 6: Hoare triple {276#(= (select (select |#memory_int| ULTIMATE.start_main_~p~0.base) ULTIMATE.start_main_~p~0.offset) 0)} assume !!(main_~p~0.base != 0 || main_~p~0.offset != 0);call main_#t~mem7 := read~int(main_~p~0.base, main_~p~0.offset, 4); {277#(= 0 |ULTIMATE.start_main_#t~mem7|)} is VALID [2020-07-29 02:04:36,484 INFO L280 TraceCheckUtils]: 7: Hoare triple {277#(= 0 |ULTIMATE.start_main_#t~mem7|)} assume !(1 != main_#t~mem7);havoc main_#t~mem7; {274#false} is VALID [2020-07-29 02:04:36,484 INFO L280 TraceCheckUtils]: 8: Hoare triple {274#false} call main_#t~mem8.base, main_#t~mem8.offset := read~$Pointer$(main_~p~0.base, 4 + main_~p~0.offset, 4);main_~p~0.base, main_~p~0.offset := main_#t~mem8.base, main_#t~mem8.offset;havoc main_#t~mem8.base, main_#t~mem8.offset;main_#t~post9 := main_~i~0;main_~i~0 := 1 + main_#t~post9;havoc main_#t~post9; {274#false} is VALID [2020-07-29 02:04:36,485 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 02:04:36,485 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1129867761] [2020-07-29 02:04:36,486 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-29 02:04:36,486 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2020-07-29 02:04:36,486 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1345606456] [2020-07-29 02:04:36,572 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-29 02:04:36,572 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2020-07-29 02:04:36,572 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2020-07-29 02:04:36,572 INFO L87 Difference]: Start difference. First operand 16 states and 21 transitions. cyclomatic complexity: 9 Second operand 5 states. [2020-07-29 02:04:36,821 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 02:04:36,822 INFO L93 Difference]: Finished difference Result 30 states and 36 transitions. [2020-07-29 02:04:36,822 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2020-07-29 02:04:36,822 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states. [2020-07-29 02:04:36,838 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 9 edges. 9 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 02:04:36,839 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 30 states and 36 transitions. [2020-07-29 02:04:36,843 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 6 [2020-07-29 02:04:36,845 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 30 states to 29 states and 35 transitions. [2020-07-29 02:04:36,846 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 24 [2020-07-29 02:04:36,846 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 24 [2020-07-29 02:04:36,846 INFO L73 IsDeterministic]: Start isDeterministic. Operand 29 states and 35 transitions. [2020-07-29 02:04:36,846 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2020-07-29 02:04:36,846 INFO L688 BuchiCegarLoop]: Abstraction has 29 states and 35 transitions. [2020-07-29 02:04:36,846 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states and 35 transitions. [2020-07-29 02:04:36,848 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 18. [2020-07-29 02:04:36,849 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-29 02:04:36,849 INFO L82 GeneralOperation]: Start isEquivalent. First operand 29 states and 35 transitions. Second operand 18 states. [2020-07-29 02:04:36,849 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states and 35 transitions. Second operand 18 states. [2020-07-29 02:04:36,849 INFO L87 Difference]: Start difference. First operand 29 states and 35 transitions. Second operand 18 states. [2020-07-29 02:04:36,849 INFO L149 Difference]: Subtrahend was not deterministic. Recomputing result with determinization. [2020-07-29 02:04:36,852 INFO L93 Difference]: Finished difference Result 29 states and 35 transitions. [2020-07-29 02:04:36,852 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2020-07-29 02:04:36,852 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 02:04:36,852 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 02:04:36,853 INFO L74 IsIncluded]: Start isIncluded. First operand 18 states. Second operand 29 states and 35 transitions. [2020-07-29 02:04:36,853 INFO L87 Difference]: Start difference. First operand 18 states. Second operand 29 states and 35 transitions. [2020-07-29 02:04:36,857 INFO L149 Difference]: Subtrahend was not deterministic. Recomputing result with determinization. [2020-07-29 02:04:36,859 INFO L93 Difference]: Finished difference Result 29 states and 35 transitions. [2020-07-29 02:04:36,860 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2020-07-29 02:04:36,860 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 02:04:36,860 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 02:04:36,861 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-29 02:04:36,861 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-29 02:04:36,861 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2020-07-29 02:04:36,862 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 23 transitions. [2020-07-29 02:04:36,863 INFO L711 BuchiCegarLoop]: Abstraction has 18 states and 23 transitions. [2020-07-29 02:04:36,863 INFO L591 BuchiCegarLoop]: Abstraction has 18 states and 23 transitions. [2020-07-29 02:04:36,863 INFO L424 BuchiCegarLoop]: ======== Iteration 4============ [2020-07-29 02:04:36,863 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 18 states and 23 transitions. [2020-07-29 02:04:36,864 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 5 [2020-07-29 02:04:36,864 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2020-07-29 02:04:36,864 INFO L119 BuchiIsEmpty]: Starting construction of run [2020-07-29 02:04:36,865 INFO L849 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1] [2020-07-29 02:04:36,865 INFO L850 BuchiCegarLoop]: Counterexample loop histogram [1] [2020-07-29 02:04:36,865 INFO L794 eck$LassoCheckResult]: Stem: 327#ULTIMATE.startENTRY #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; 326#L-1 havoc main_#res;havoc main_#t~malloc2.base, main_#t~malloc2.offset, main_#t~malloc4.base, main_#t~malloc4.offset, main_#t~mem5.base, main_#t~mem5.offset, main_#t~post6, main_#t~nondet3, main_#t~mem7, main_#t~mem8.base, main_#t~mem8.offset, main_#t~post9, main_#t~mem10.base, main_#t~mem10.offset, main_~tmp~0.base, main_~tmp~0.offset, main_~a~0.base, main_~a~0.offset, main_~t~0.base, main_~t~0.offset, main_~p~0.base, main_~p~0.offset, main_~i~0;call main_#t~malloc2.base, main_#t~malloc2.offset := #Ultimate.allocOnHeap(8);main_~a~0.base, main_~a~0.offset := main_#t~malloc2.base, main_#t~malloc2.offset; 324#L522 assume !(main_~a~0.base == 0 && main_~a~0.offset == 0); 325#L522-1 havoc main_~t~0.base, main_~t~0.offset;main_~p~0.base, main_~p~0.offset := main_~a~0.base, main_~a~0.offset;main_~i~0 := 0; 317#L526-2 assume !!(main_~i~0 < 30 && 0 != main_#t~nondet3);havoc main_#t~nondet3;call write~int(main_~i~0, main_~p~0.base, main_~p~0.offset, 4);call main_#t~malloc4.base, main_#t~malloc4.offset := #Ultimate.allocOnHeap(8);main_~t~0.base, main_~t~0.offset := main_#t~malloc4.base, main_#t~malloc4.offset; 319#L529 assume main_~t~0.base == 0 && main_~t~0.offset == 0;myexit_#in~s := 1;havoc myexit_~s;myexit_~s := myexit_#in~s; 323#L514-1 [2020-07-29 02:04:36,866 INFO L796 eck$LassoCheckResult]: Loop: 323#L514-1 assume true; 323#L514-1 [2020-07-29 02:04:36,866 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 02:04:36,866 INFO L82 PathProgramCache]: Analyzing trace with hash 889599272, now seen corresponding path program 1 times [2020-07-29 02:04:36,866 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-29 02:04:36,867 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [87136074] [2020-07-29 02:04:36,867 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-29 02:04:36,877 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 02:04:36,900 INFO L280 TraceCheckUtils]: 0: Hoare triple {451#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {451#true} is VALID [2020-07-29 02:04:36,900 INFO L280 TraceCheckUtils]: 1: Hoare triple {451#true} havoc main_#res;havoc main_#t~malloc2.base, main_#t~malloc2.offset, main_#t~malloc4.base, main_#t~malloc4.offset, main_#t~mem5.base, main_#t~mem5.offset, main_#t~post6, main_#t~nondet3, main_#t~mem7, main_#t~mem8.base, main_#t~mem8.offset, main_#t~post9, main_#t~mem10.base, main_#t~mem10.offset, main_~tmp~0.base, main_~tmp~0.offset, main_~a~0.base, main_~a~0.offset, main_~t~0.base, main_~t~0.offset, main_~p~0.base, main_~p~0.offset, main_~i~0;call main_#t~malloc2.base, main_#t~malloc2.offset := #Ultimate.allocOnHeap(8);main_~a~0.base, main_~a~0.offset := main_#t~malloc2.base, main_#t~malloc2.offset; {451#true} is VALID [2020-07-29 02:04:36,900 INFO L280 TraceCheckUtils]: 2: Hoare triple {451#true} assume !(main_~a~0.base == 0 && main_~a~0.offset == 0); {451#true} is VALID [2020-07-29 02:04:36,901 INFO L280 TraceCheckUtils]: 3: Hoare triple {451#true} havoc main_~t~0.base, main_~t~0.offset;main_~p~0.base, main_~p~0.offset := main_~a~0.base, main_~a~0.offset;main_~i~0 := 0; {451#true} is VALID [2020-07-29 02:04:36,902 INFO L280 TraceCheckUtils]: 4: Hoare triple {451#true} assume !!(main_~i~0 < 30 && 0 != main_#t~nondet3);havoc main_#t~nondet3;call write~int(main_~i~0, main_~p~0.base, main_~p~0.offset, 4);call main_#t~malloc4.base, main_#t~malloc4.offset := #Ultimate.allocOnHeap(8);main_~t~0.base, main_~t~0.offset := main_#t~malloc4.base, main_#t~malloc4.offset; {453#(not (= 0 ULTIMATE.start_main_~t~0.base))} is VALID [2020-07-29 02:04:36,904 INFO L280 TraceCheckUtils]: 5: Hoare triple {453#(not (= 0 ULTIMATE.start_main_~t~0.base))} assume main_~t~0.base == 0 && main_~t~0.offset == 0;myexit_#in~s := 1;havoc myexit_~s;myexit_~s := myexit_#in~s; {452#false} is VALID [2020-07-29 02:04:36,904 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 02:04:36,904 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [87136074] [2020-07-29 02:04:36,904 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-29 02:04:36,905 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2020-07-29 02:04:36,905 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [664343650] [2020-07-29 02:04:36,906 INFO L799 eck$LassoCheckResult]: stem already infeasible [2020-07-29 02:04:36,906 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 02:04:36,906 INFO L82 PathProgramCache]: Analyzing trace with hash 102, now seen corresponding path program 1 times [2020-07-29 02:04:36,906 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-29 02:04:36,906 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [710243454] [2020-07-29 02:04:36,906 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-29 02:04:36,909 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-29 02:04:36,910 INFO L221 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2020-07-29 02:04:36,911 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-29 02:04:36,911 INFO L221 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2020-07-29 02:04:36,912 INFO L174 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2020-07-29 02:04:36,916 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-29 02:04:36,917 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2020-07-29 02:04:36,917 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2020-07-29 02:04:36,917 INFO L87 Difference]: Start difference. First operand 18 states and 23 transitions. cyclomatic complexity: 9 Second operand 3 states. [2020-07-29 02:04:36,967 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 02:04:36,968 INFO L93 Difference]: Finished difference Result 19 states and 23 transitions. [2020-07-29 02:04:36,968 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2020-07-29 02:04:36,969 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2020-07-29 02:04:36,978 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 6 edges. 6 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 02:04:36,979 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 19 states and 23 transitions. [2020-07-29 02:04:36,981 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 5 [2020-07-29 02:04:36,982 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 19 states to 18 states and 21 transitions. [2020-07-29 02:04:36,982 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 15 [2020-07-29 02:04:36,982 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 15 [2020-07-29 02:04:36,982 INFO L73 IsDeterministic]: Start isDeterministic. Operand 18 states and 21 transitions. [2020-07-29 02:04:36,983 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2020-07-29 02:04:36,983 INFO L688 BuchiCegarLoop]: Abstraction has 18 states and 21 transitions. [2020-07-29 02:04:36,983 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 18 states and 21 transitions. [2020-07-29 02:04:36,984 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 18 to 16. [2020-07-29 02:04:36,985 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-29 02:04:36,985 INFO L82 GeneralOperation]: Start isEquivalent. First operand 18 states and 21 transitions. Second operand 16 states. [2020-07-29 02:04:36,985 INFO L74 IsIncluded]: Start isIncluded. First operand 18 states and 21 transitions. Second operand 16 states. [2020-07-29 02:04:36,985 INFO L87 Difference]: Start difference. First operand 18 states and 21 transitions. Second operand 16 states. [2020-07-29 02:04:36,986 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 02:04:36,987 INFO L93 Difference]: Finished difference Result 18 states and 21 transitions. [2020-07-29 02:04:36,987 INFO L276 IsEmpty]: Start isEmpty. Operand 18 states and 21 transitions. [2020-07-29 02:04:36,987 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 02:04:36,987 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 02:04:36,988 INFO L74 IsIncluded]: Start isIncluded. First operand 16 states. Second operand 18 states and 21 transitions. [2020-07-29 02:04:36,988 INFO L87 Difference]: Start difference. First operand 16 states. Second operand 18 states and 21 transitions. [2020-07-29 02:04:36,989 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 02:04:36,989 INFO L93 Difference]: Finished difference Result 18 states and 21 transitions. [2020-07-29 02:04:36,990 INFO L276 IsEmpty]: Start isEmpty. Operand 18 states and 21 transitions. [2020-07-29 02:04:36,990 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 02:04:36,990 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 02:04:36,990 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-29 02:04:36,990 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-29 02:04:36,991 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2020-07-29 02:04:36,992 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 19 transitions. [2020-07-29 02:04:36,992 INFO L711 BuchiCegarLoop]: Abstraction has 16 states and 19 transitions. [2020-07-29 02:04:36,992 INFO L591 BuchiCegarLoop]: Abstraction has 16 states and 19 transitions. [2020-07-29 02:04:36,992 INFO L424 BuchiCegarLoop]: ======== Iteration 5============ [2020-07-29 02:04:36,993 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 16 states and 19 transitions. [2020-07-29 02:04:36,993 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 4 [2020-07-29 02:04:36,993 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2020-07-29 02:04:36,993 INFO L119 BuchiIsEmpty]: Starting construction of run [2020-07-29 02:04:36,994 INFO L849 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1] [2020-07-29 02:04:36,994 INFO L850 BuchiCegarLoop]: Counterexample loop histogram [1] [2020-07-29 02:04:36,994 INFO L794 eck$LassoCheckResult]: Stem: 488#ULTIMATE.startENTRY #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; 487#L-1 havoc main_#res;havoc main_#t~malloc2.base, main_#t~malloc2.offset, main_#t~malloc4.base, main_#t~malloc4.offset, main_#t~mem5.base, main_#t~mem5.offset, main_#t~post6, main_#t~nondet3, main_#t~mem7, main_#t~mem8.base, main_#t~mem8.offset, main_#t~post9, main_#t~mem10.base, main_#t~mem10.offset, main_~tmp~0.base, main_~tmp~0.offset, main_~a~0.base, main_~a~0.offset, main_~t~0.base, main_~t~0.offset, main_~p~0.base, main_~p~0.offset, main_~i~0;call main_#t~malloc2.base, main_#t~malloc2.offset := #Ultimate.allocOnHeap(8);main_~a~0.base, main_~a~0.offset := main_#t~malloc2.base, main_#t~malloc2.offset; 485#L522 assume !(main_~a~0.base == 0 && main_~a~0.offset == 0); 486#L522-1 havoc main_~t~0.base, main_~t~0.offset;main_~p~0.base, main_~p~0.offset := main_~a~0.base, main_~a~0.offset;main_~i~0 := 0; 480#L526-2 assume !(main_~i~0 < 30 && 0 != main_#t~nondet3);havoc main_#t~nondet3; 481#L526-3 call write~int(main_~i~0, main_~p~0.base, main_~p~0.offset, 4);call write~$Pointer$(0, 0, main_~p~0.base, 4 + main_~p~0.offset, 4);main_~p~0.base, main_~p~0.offset := main_~a~0.base, main_~a~0.offset;main_~i~0 := 0; 477#L538-2 assume !(main_~p~0.base != 0 || main_~p~0.offset != 0); 478#L538-3 main_~p~0.base, main_~p~0.offset := main_~a~0.base, main_~a~0.offset; 479#L546-2 [2020-07-29 02:04:36,995 INFO L796 eck$LassoCheckResult]: Loop: 479#L546-2 assume !!(main_~p~0.base != 0 || main_~p~0.offset != 0);call main_#t~mem10.base, main_#t~mem10.offset := read~$Pointer$(main_~p~0.base, 4 + main_~p~0.offset, 4);main_~tmp~0.base, main_~tmp~0.offset := main_#t~mem10.base, main_#t~mem10.offset;havoc main_#t~mem10.base, main_#t~mem10.offset;call ULTIMATE.dealloc(main_~p~0.base, main_~p~0.offset);main_~p~0.base, main_~p~0.offset := main_~tmp~0.base, main_~tmp~0.offset; 479#L546-2 [2020-07-29 02:04:36,995 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 02:04:36,995 INFO L82 PathProgramCache]: Analyzing trace with hash 206358786, now seen corresponding path program 1 times [2020-07-29 02:04:36,995 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-29 02:04:36,996 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2021090171] [2020-07-29 02:04:36,996 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-29 02:04:37,013 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 02:04:37,076 INFO L280 TraceCheckUtils]: 0: Hoare triple {530#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {530#true} is VALID [2020-07-29 02:04:37,077 INFO L280 TraceCheckUtils]: 1: Hoare triple {530#true} havoc main_#res;havoc main_#t~malloc2.base, main_#t~malloc2.offset, main_#t~malloc4.base, main_#t~malloc4.offset, main_#t~mem5.base, main_#t~mem5.offset, main_#t~post6, main_#t~nondet3, main_#t~mem7, main_#t~mem8.base, main_#t~mem8.offset, main_#t~post9, main_#t~mem10.base, main_#t~mem10.offset, main_~tmp~0.base, main_~tmp~0.offset, main_~a~0.base, main_~a~0.offset, main_~t~0.base, main_~t~0.offset, main_~p~0.base, main_~p~0.offset, main_~i~0;call main_#t~malloc2.base, main_#t~malloc2.offset := #Ultimate.allocOnHeap(8);main_~a~0.base, main_~a~0.offset := main_#t~malloc2.base, main_#t~malloc2.offset; {532#(= 0 ULTIMATE.start_main_~a~0.offset)} is VALID [2020-07-29 02:04:37,078 INFO L280 TraceCheckUtils]: 2: Hoare triple {532#(= 0 ULTIMATE.start_main_~a~0.offset)} assume !(main_~a~0.base == 0 && main_~a~0.offset == 0); {533#(not (= 0 ULTIMATE.start_main_~a~0.base))} is VALID [2020-07-29 02:04:37,079 INFO L280 TraceCheckUtils]: 3: Hoare triple {533#(not (= 0 ULTIMATE.start_main_~a~0.base))} havoc main_~t~0.base, main_~t~0.offset;main_~p~0.base, main_~p~0.offset := main_~a~0.base, main_~a~0.offset;main_~i~0 := 0; {533#(not (= 0 ULTIMATE.start_main_~a~0.base))} is VALID [2020-07-29 02:04:37,080 INFO L280 TraceCheckUtils]: 4: Hoare triple {533#(not (= 0 ULTIMATE.start_main_~a~0.base))} assume !(main_~i~0 < 30 && 0 != main_#t~nondet3);havoc main_#t~nondet3; {533#(not (= 0 ULTIMATE.start_main_~a~0.base))} is VALID [2020-07-29 02:04:37,081 INFO L280 TraceCheckUtils]: 5: Hoare triple {533#(not (= 0 ULTIMATE.start_main_~a~0.base))} call write~int(main_~i~0, main_~p~0.base, main_~p~0.offset, 4);call write~$Pointer$(0, 0, main_~p~0.base, 4 + main_~p~0.offset, 4);main_~p~0.base, main_~p~0.offset := main_~a~0.base, main_~a~0.offset;main_~i~0 := 0; {534#(not (= 0 ULTIMATE.start_main_~p~0.base))} is VALID [2020-07-29 02:04:37,082 INFO L280 TraceCheckUtils]: 6: Hoare triple {534#(not (= 0 ULTIMATE.start_main_~p~0.base))} assume !(main_~p~0.base != 0 || main_~p~0.offset != 0); {531#false} is VALID [2020-07-29 02:04:37,083 INFO L280 TraceCheckUtils]: 7: Hoare triple {531#false} main_~p~0.base, main_~p~0.offset := main_~a~0.base, main_~a~0.offset; {531#false} is VALID [2020-07-29 02:04:37,083 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 02:04:37,083 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2021090171] [2020-07-29 02:04:37,084 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-29 02:04:37,084 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2020-07-29 02:04:37,084 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2022568024] [2020-07-29 02:04:37,085 INFO L799 eck$LassoCheckResult]: stem already infeasible [2020-07-29 02:04:37,085 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 02:04:37,085 INFO L82 PathProgramCache]: Analyzing trace with hash 93, now seen corresponding path program 1 times [2020-07-29 02:04:37,086 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-29 02:04:37,086 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [479729053] [2020-07-29 02:04:37,086 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-29 02:04:37,096 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-29 02:04:37,097 INFO L221 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2020-07-29 02:04:37,101 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-29 02:04:37,101 INFO L221 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2020-07-29 02:04:37,105 INFO L174 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2020-07-29 02:04:37,169 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-29 02:04:37,169 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2020-07-29 02:04:37,170 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2020-07-29 02:04:37,170 INFO L87 Difference]: Start difference. First operand 16 states and 19 transitions. cyclomatic complexity: 6 Second operand 5 states. [2020-07-29 02:04:37,321 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 02:04:37,321 INFO L93 Difference]: Finished difference Result 22 states and 24 transitions. [2020-07-29 02:04:37,321 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2020-07-29 02:04:37,321 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states. [2020-07-29 02:04:37,334 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 8 edges. 8 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 02:04:37,334 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 22 states and 24 transitions. [2020-07-29 02:04:37,335 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 4 [2020-07-29 02:04:37,336 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 22 states to 20 states and 22 transitions. [2020-07-29 02:04:37,338 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 15 [2020-07-29 02:04:37,338 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 15 [2020-07-29 02:04:37,338 INFO L73 IsDeterministic]: Start isDeterministic. Operand 20 states and 22 transitions. [2020-07-29 02:04:37,339 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2020-07-29 02:04:37,339 INFO L688 BuchiCegarLoop]: Abstraction has 20 states and 22 transitions. [2020-07-29 02:04:37,339 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 20 states and 22 transitions. [2020-07-29 02:04:37,340 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 20 to 15. [2020-07-29 02:04:37,340 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-29 02:04:37,340 INFO L82 GeneralOperation]: Start isEquivalent. First operand 20 states and 22 transitions. Second operand 15 states. [2020-07-29 02:04:37,340 INFO L74 IsIncluded]: Start isIncluded. First operand 20 states and 22 transitions. Second operand 15 states. [2020-07-29 02:04:37,340 INFO L87 Difference]: Start difference. First operand 20 states and 22 transitions. Second operand 15 states. [2020-07-29 02:04:37,341 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 02:04:37,341 INFO L93 Difference]: Finished difference Result 20 states and 22 transitions. [2020-07-29 02:04:37,342 INFO L276 IsEmpty]: Start isEmpty. Operand 20 states and 22 transitions. [2020-07-29 02:04:37,342 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 02:04:37,342 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 02:04:37,342 INFO L74 IsIncluded]: Start isIncluded. First operand 15 states. Second operand 20 states and 22 transitions. [2020-07-29 02:04:37,343 INFO L87 Difference]: Start difference. First operand 15 states. Second operand 20 states and 22 transitions. [2020-07-29 02:04:37,346 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 02:04:37,346 INFO L93 Difference]: Finished difference Result 20 states and 22 transitions. [2020-07-29 02:04:37,346 INFO L276 IsEmpty]: Start isEmpty. Operand 20 states and 22 transitions. [2020-07-29 02:04:37,346 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 02:04:37,347 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 02:04:37,347 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-29 02:04:37,347 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-29 02:04:37,347 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 15 states. [2020-07-29 02:04:37,349 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 17 transitions. [2020-07-29 02:04:37,349 INFO L711 BuchiCegarLoop]: Abstraction has 15 states and 17 transitions. [2020-07-29 02:04:37,349 INFO L591 BuchiCegarLoop]: Abstraction has 15 states and 17 transitions. [2020-07-29 02:04:37,349 INFO L424 BuchiCegarLoop]: ======== Iteration 6============ [2020-07-29 02:04:37,350 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 15 states and 17 transitions. [2020-07-29 02:04:37,350 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 4 [2020-07-29 02:04:37,350 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2020-07-29 02:04:37,350 INFO L119 BuchiIsEmpty]: Starting construction of run [2020-07-29 02:04:37,352 INFO L849 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-29 02:04:37,353 INFO L850 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1] [2020-07-29 02:04:37,353 INFO L794 eck$LassoCheckResult]: Stem: 576#ULTIMATE.startENTRY #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; 575#L-1 havoc main_#res;havoc main_#t~malloc2.base, main_#t~malloc2.offset, main_#t~malloc4.base, main_#t~malloc4.offset, main_#t~mem5.base, main_#t~mem5.offset, main_#t~post6, main_#t~nondet3, main_#t~mem7, main_#t~mem8.base, main_#t~mem8.offset, main_#t~post9, main_#t~mem10.base, main_#t~mem10.offset, main_~tmp~0.base, main_~tmp~0.offset, main_~a~0.base, main_~a~0.offset, main_~t~0.base, main_~t~0.offset, main_~p~0.base, main_~p~0.offset, main_~i~0;call main_#t~malloc2.base, main_#t~malloc2.offset := #Ultimate.allocOnHeap(8);main_~a~0.base, main_~a~0.offset := main_#t~malloc2.base, main_#t~malloc2.offset; 573#L522 assume !(main_~a~0.base == 0 && main_~a~0.offset == 0); 574#L522-1 havoc main_~t~0.base, main_~t~0.offset;main_~p~0.base, main_~p~0.offset := main_~a~0.base, main_~a~0.offset;main_~i~0 := 0; 569#L526-2 assume !!(main_~i~0 < 30 && 0 != main_#t~nondet3);havoc main_#t~nondet3;call write~int(main_~i~0, main_~p~0.base, main_~p~0.offset, 4);call main_#t~malloc4.base, main_#t~malloc4.offset := #Ultimate.allocOnHeap(8);main_~t~0.base, main_~t~0.offset := main_#t~malloc4.base, main_#t~malloc4.offset; 570#L529 assume !(main_~t~0.base == 0 && main_~t~0.offset == 0); 577#L529-1 call write~$Pointer$(main_~t~0.base, main_~t~0.offset, main_~p~0.base, 4 + main_~p~0.offset, 4);call main_#t~mem5.base, main_#t~mem5.offset := read~$Pointer$(main_~p~0.base, 4 + main_~p~0.offset, 4);main_~p~0.base, main_~p~0.offset := main_#t~mem5.base, main_#t~mem5.offset;havoc main_#t~mem5.base, main_#t~mem5.offset;main_#t~post6 := main_~i~0;main_~i~0 := 1 + main_#t~post6;havoc main_#t~post6; 571#L526-2 assume !(main_~i~0 < 30 && 0 != main_#t~nondet3);havoc main_#t~nondet3; 572#L526-3 call write~int(main_~i~0, main_~p~0.base, main_~p~0.offset, 4);call write~$Pointer$(0, 0, main_~p~0.base, 4 + main_~p~0.offset, 4);main_~p~0.base, main_~p~0.offset := main_~a~0.base, main_~a~0.offset;main_~i~0 := 0; 565#L538-2 assume !!(main_~p~0.base != 0 || main_~p~0.offset != 0);call main_#t~mem7 := read~int(main_~p~0.base, main_~p~0.offset, 4); 566#L539 [2020-07-29 02:04:37,353 INFO L796 eck$LassoCheckResult]: Loop: 566#L539 assume !(1 != main_#t~mem7);havoc main_#t~mem7; 563#L539-2 call main_#t~mem8.base, main_#t~mem8.offset := read~$Pointer$(main_~p~0.base, 4 + main_~p~0.offset, 4);main_~p~0.base, main_~p~0.offset := main_#t~mem8.base, main_#t~mem8.offset;havoc main_#t~mem8.base, main_#t~mem8.offset;main_#t~post9 := main_~i~0;main_~i~0 := 1 + main_#t~post9;havoc main_#t~post9; 564#L538-2 assume !!(main_~p~0.base != 0 || main_~p~0.offset != 0);call main_#t~mem7 := read~int(main_~p~0.base, main_~p~0.offset, 4); 566#L539 [2020-07-29 02:04:37,353 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 02:04:37,354 INFO L82 PathProgramCache]: Analyzing trace with hash 793653610, now seen corresponding path program 1 times [2020-07-29 02:04:37,354 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-29 02:04:37,354 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [169492111] [2020-07-29 02:04:37,354 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-29 02:04:37,394 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-29 02:04:37,395 INFO L221 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2020-07-29 02:04:37,410 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-29 02:04:37,410 INFO L221 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2020-07-29 02:04:37,416 INFO L174 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2020-07-29 02:04:37,417 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 02:04:37,417 INFO L82 PathProgramCache]: Analyzing trace with hash 76517, now seen corresponding path program 2 times [2020-07-29 02:04:37,417 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-29 02:04:37,417 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [508096721] [2020-07-29 02:04:37,417 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-29 02:04:37,422 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-29 02:04:37,422 INFO L221 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2020-07-29 02:04:37,425 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-29 02:04:37,425 INFO L221 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2020-07-29 02:04:37,427 INFO L174 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2020-07-29 02:04:37,428 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 02:04:37,428 INFO L82 PathProgramCache]: Analyzing trace with hash -60222244, now seen corresponding path program 1 times [2020-07-29 02:04:37,428 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-29 02:04:37,429 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1997381888] [2020-07-29 02:04:37,429 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-29 02:04:37,444 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 02:04:37,580 INFO L280 TraceCheckUtils]: 0: Hoare triple {625#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {625#true} is VALID [2020-07-29 02:04:37,582 INFO L280 TraceCheckUtils]: 1: Hoare triple {625#true} havoc main_#res;havoc main_#t~malloc2.base, main_#t~malloc2.offset, main_#t~malloc4.base, main_#t~malloc4.offset, main_#t~mem5.base, main_#t~mem5.offset, main_#t~post6, main_#t~nondet3, main_#t~mem7, main_#t~mem8.base, main_#t~mem8.offset, main_#t~post9, main_#t~mem10.base, main_#t~mem10.offset, main_~tmp~0.base, main_~tmp~0.offset, main_~a~0.base, main_~a~0.offset, main_~t~0.base, main_~t~0.offset, main_~p~0.base, main_~p~0.offset, main_~i~0;call main_#t~malloc2.base, main_#t~malloc2.offset := #Ultimate.allocOnHeap(8);main_~a~0.base, main_~a~0.offset := main_#t~malloc2.base, main_#t~malloc2.offset; {627#(= 1 (select |#valid| ULTIMATE.start_main_~a~0.base))} is VALID [2020-07-29 02:04:37,583 INFO L280 TraceCheckUtils]: 2: Hoare triple {627#(= 1 (select |#valid| ULTIMATE.start_main_~a~0.base))} assume !(main_~a~0.base == 0 && main_~a~0.offset == 0); {627#(= 1 (select |#valid| ULTIMATE.start_main_~a~0.base))} is VALID [2020-07-29 02:04:37,583 INFO L280 TraceCheckUtils]: 3: Hoare triple {627#(= 1 (select |#valid| ULTIMATE.start_main_~a~0.base))} havoc main_~t~0.base, main_~t~0.offset;main_~p~0.base, main_~p~0.offset := main_~a~0.base, main_~a~0.offset;main_~i~0 := 0; {628#(and (= 0 ULTIMATE.start_main_~i~0) (= ULTIMATE.start_main_~a~0.offset ULTIMATE.start_main_~p~0.offset) (= 1 (select |#valid| ULTIMATE.start_main_~p~0.base)) (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base))} is VALID [2020-07-29 02:04:37,585 INFO L280 TraceCheckUtils]: 4: Hoare triple {628#(and (= 0 ULTIMATE.start_main_~i~0) (= ULTIMATE.start_main_~a~0.offset ULTIMATE.start_main_~p~0.offset) (= 1 (select |#valid| ULTIMATE.start_main_~p~0.base)) (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base))} assume !!(main_~i~0 < 30 && 0 != main_#t~nondet3);havoc main_#t~nondet3;call write~int(main_~i~0, main_~p~0.base, main_~p~0.offset, 4);call main_#t~malloc4.base, main_#t~malloc4.offset := #Ultimate.allocOnHeap(8);main_~t~0.base, main_~t~0.offset := main_#t~malloc4.base, main_#t~malloc4.offset; {629#(and (= (select (select |#memory_int| ULTIMATE.start_main_~p~0.base) ULTIMATE.start_main_~p~0.offset) 0) (not (= ULTIMATE.start_main_~t~0.base ULTIMATE.start_main_~p~0.base)) (= ULTIMATE.start_main_~a~0.offset ULTIMATE.start_main_~p~0.offset) (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base))} is VALID [2020-07-29 02:04:37,586 INFO L280 TraceCheckUtils]: 5: Hoare triple {629#(and (= (select (select |#memory_int| ULTIMATE.start_main_~p~0.base) ULTIMATE.start_main_~p~0.offset) 0) (not (= ULTIMATE.start_main_~t~0.base ULTIMATE.start_main_~p~0.base)) (= ULTIMATE.start_main_~a~0.offset ULTIMATE.start_main_~p~0.offset) (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base))} assume !(main_~t~0.base == 0 && main_~t~0.offset == 0); {629#(and (= (select (select |#memory_int| ULTIMATE.start_main_~p~0.base) ULTIMATE.start_main_~p~0.offset) 0) (not (= ULTIMATE.start_main_~t~0.base ULTIMATE.start_main_~p~0.base)) (= ULTIMATE.start_main_~a~0.offset ULTIMATE.start_main_~p~0.offset) (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base))} is VALID [2020-07-29 02:04:37,588 INFO L280 TraceCheckUtils]: 6: Hoare triple {629#(and (= (select (select |#memory_int| ULTIMATE.start_main_~p~0.base) ULTIMATE.start_main_~p~0.offset) 0) (not (= ULTIMATE.start_main_~t~0.base ULTIMATE.start_main_~p~0.base)) (= ULTIMATE.start_main_~a~0.offset ULTIMATE.start_main_~p~0.offset) (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base))} call write~$Pointer$(main_~t~0.base, main_~t~0.offset, main_~p~0.base, 4 + main_~p~0.offset, 4);call main_#t~mem5.base, main_#t~mem5.offset := read~$Pointer$(main_~p~0.base, 4 + main_~p~0.offset, 4);main_~p~0.base, main_~p~0.offset := main_#t~mem5.base, main_#t~mem5.offset;havoc main_#t~mem5.base, main_#t~mem5.offset;main_#t~post6 := main_~i~0;main_~i~0 := 1 + main_#t~post6;havoc main_#t~post6; {630#(and (not (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base)) (= 0 (select (select |#memory_int| ULTIMATE.start_main_~a~0.base) ULTIMATE.start_main_~a~0.offset)))} is VALID [2020-07-29 02:04:37,588 INFO L280 TraceCheckUtils]: 7: Hoare triple {630#(and (not (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base)) (= 0 (select (select |#memory_int| ULTIMATE.start_main_~a~0.base) ULTIMATE.start_main_~a~0.offset)))} assume !(main_~i~0 < 30 && 0 != main_#t~nondet3);havoc main_#t~nondet3; {630#(and (not (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base)) (= 0 (select (select |#memory_int| ULTIMATE.start_main_~a~0.base) ULTIMATE.start_main_~a~0.offset)))} is VALID [2020-07-29 02:04:37,592 INFO L280 TraceCheckUtils]: 8: Hoare triple {630#(and (not (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base)) (= 0 (select (select |#memory_int| ULTIMATE.start_main_~a~0.base) ULTIMATE.start_main_~a~0.offset)))} call write~int(main_~i~0, main_~p~0.base, main_~p~0.offset, 4);call write~$Pointer$(0, 0, main_~p~0.base, 4 + main_~p~0.offset, 4);main_~p~0.base, main_~p~0.offset := main_~a~0.base, main_~a~0.offset;main_~i~0 := 0; {631#(= (select (select |#memory_int| ULTIMATE.start_main_~p~0.base) ULTIMATE.start_main_~p~0.offset) 0)} is VALID [2020-07-29 02:04:37,593 INFO L280 TraceCheckUtils]: 9: Hoare triple {631#(= (select (select |#memory_int| ULTIMATE.start_main_~p~0.base) ULTIMATE.start_main_~p~0.offset) 0)} assume !!(main_~p~0.base != 0 || main_~p~0.offset != 0);call main_#t~mem7 := read~int(main_~p~0.base, main_~p~0.offset, 4); {632#(= 0 |ULTIMATE.start_main_#t~mem7|)} is VALID [2020-07-29 02:04:37,594 INFO L280 TraceCheckUtils]: 10: Hoare triple {632#(= 0 |ULTIMATE.start_main_#t~mem7|)} assume !(1 != main_#t~mem7);havoc main_#t~mem7; {626#false} is VALID [2020-07-29 02:04:37,594 INFO L280 TraceCheckUtils]: 11: Hoare triple {626#false} call main_#t~mem8.base, main_#t~mem8.offset := read~$Pointer$(main_~p~0.base, 4 + main_~p~0.offset, 4);main_~p~0.base, main_~p~0.offset := main_#t~mem8.base, main_#t~mem8.offset;havoc main_#t~mem8.base, main_#t~mem8.offset;main_#t~post9 := main_~i~0;main_~i~0 := 1 + main_#t~post9;havoc main_#t~post9; {626#false} is VALID [2020-07-29 02:04:37,594 INFO L280 TraceCheckUtils]: 12: Hoare triple {626#false} assume !!(main_~p~0.base != 0 || main_~p~0.offset != 0);call main_#t~mem7 := read~int(main_~p~0.base, main_~p~0.offset, 4); {626#false} is VALID [2020-07-29 02:04:37,595 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 02:04:37,596 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1997381888] [2020-07-29 02:04:37,596 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2055255337] [2020-07-29 02:04:37,596 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 15 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 15 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2020-07-29 02:04:37,655 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 02:04:37,657 INFO L263 TraceCheckSpWp]: Trace formula consists of 106 conjuncts, 30 conjunts are in the unsatisfiable core [2020-07-29 02:04:37,668 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 02:04:37,670 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2020-07-29 02:04:37,700 INFO L384 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 [2020-07-29 02:04:37,700 INFO L544 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2020-07-29 02:04:37,706 INFO L624 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2020-07-29 02:04:37,706 INFO L544 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2020-07-29 02:04:37,707 INFO L244 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:10, output treesize:9 [2020-07-29 02:04:37,711 WARN L406 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2020-07-29 02:04:37,711 WARN L407 uantifierElimination]: Input elimination task: ∃ [|v_#valid_57|]. (and (= |#valid| (store |v_#valid_57| ULTIMATE.start_main_~a~0.base 1)) (= 0 ULTIMATE.start_main_~a~0.offset)) [2020-07-29 02:04:37,711 WARN L408 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= 1 (select |#valid| ULTIMATE.start_main_~a~0.base)) (= 0 ULTIMATE.start_main_~a~0.offset)) [2020-07-29 02:04:37,815 INFO L350 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2020-07-29 02:04:37,816 INFO L384 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 15 [2020-07-29 02:04:37,817 INFO L544 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2020-07-29 02:04:37,833 INFO L624 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2020-07-29 02:04:37,842 INFO L384 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 [2020-07-29 02:04:37,843 INFO L544 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2020-07-29 02:04:37,858 INFO L624 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2020-07-29 02:04:37,860 INFO L544 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2020-07-29 02:04:37,861 INFO L244 ElimStorePlain]: Needed 3 recursive calls to eliminate 3 variables, input treesize:37, output treesize:24 [2020-07-29 02:04:37,865 WARN L406 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2020-07-29 02:04:37,865 WARN L407 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_21|, ULTIMATE.start_main_~i~0, |v_#valid_58|]. (and (= 0 (select |v_#valid_58| ULTIMATE.start_main_~t~0.base)) (<= ULTIMATE.start_main_~i~0 0) (<= ULTIMATE.start_main_~p~0.offset ULTIMATE.start_main_~a~0.offset) (<= 0 ULTIMATE.start_main_~p~0.offset) (= 0 ULTIMATE.start_main_~a~0.offset) (= (store |v_#memory_int_21| ULTIMATE.start_main_~p~0.base (store (select |v_#memory_int_21| ULTIMATE.start_main_~p~0.base) ULTIMATE.start_main_~p~0.offset ULTIMATE.start_main_~i~0)) |#memory_int|) (= 1 (select |v_#valid_58| ULTIMATE.start_main_~a~0.base)) (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base)) [2020-07-29 02:04:37,866 WARN L408 uantifierElimination]: ElimStorePlain result: ∃ []. (and (not (= ULTIMATE.start_main_~t~0.base ULTIMATE.start_main_~a~0.base)) (<= ULTIMATE.start_main_~p~0.offset ULTIMATE.start_main_~a~0.offset) (<= 0 ULTIMATE.start_main_~p~0.offset) (<= (select (select |#memory_int| ULTIMATE.start_main_~p~0.base) ULTIMATE.start_main_~p~0.offset) 0) (= 0 ULTIMATE.start_main_~a~0.offset) (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base)) [2020-07-29 02:04:38,075 INFO L190 IndexEqualityManager]: detected not equals via solver [2020-07-29 02:04:38,078 INFO L384 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 27 treesize of output 11 [2020-07-29 02:04:38,080 INFO L544 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2020-07-29 02:04:38,088 INFO L624 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2020-07-29 02:04:38,096 INFO L544 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-2 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2020-07-29 02:04:38,096 INFO L244 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:40, output treesize:21 [2020-07-29 02:04:38,284 INFO L350 Elim1Store]: treesize reduction 27, result has 20.6 percent of original size [2020-07-29 02:04:38,285 INFO L384 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 30 treesize of output 18 [2020-07-29 02:04:38,286 INFO L544 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2020-07-29 02:04:38,298 INFO L624 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2020-07-29 02:04:38,313 INFO L544 ElimStorePlain]: Start of recursive call 1: 4 dim-0 vars, 1 dim-2 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2020-07-29 02:04:38,314 INFO L244 ElimStorePlain]: Needed 2 recursive calls to eliminate 5 variables, input treesize:43, output treesize:17 [2020-07-29 02:04:38,319 WARN L406 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2020-07-29 02:04:38,319 WARN L407 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_23|, v_ULTIMATE.start_main_~p~0.base_104, v_ULTIMATE.start_main_~p~0.offset_62, v_ULTIMATE.start_main_~i~0_18, v_ULTIMATE.start_main_~p~0.offset_61]. (and (<= (select (select |v_#memory_int_23| ULTIMATE.start_main_~p~0.base) v_ULTIMATE.start_main_~p~0.offset_61) 0) (<= ULTIMATE.start_main_~p~0.offset 0) (<= 0 v_ULTIMATE.start_main_~p~0.offset_61) (<= v_ULTIMATE.start_main_~p~0.offset_61 0) (= (store |v_#memory_int_23| v_ULTIMATE.start_main_~p~0.base_104 (let ((.cse0 (+ v_ULTIMATE.start_main_~p~0.offset_62 4))) (store (store (select |v_#memory_int_23| v_ULTIMATE.start_main_~p~0.base_104) v_ULTIMATE.start_main_~p~0.offset_62 v_ULTIMATE.start_main_~i~0_18) .cse0 (select (select |#memory_int| v_ULTIMATE.start_main_~p~0.base_104) .cse0)))) |#memory_int|) (not (= v_ULTIMATE.start_main_~p~0.base_104 ULTIMATE.start_main_~p~0.base))) [2020-07-29 02:04:38,320 WARN L408 uantifierElimination]: ElimStorePlain result: ∃ [v_ULTIMATE.start_main_~p~0.offset_61]. (and (<= (select (select |#memory_int| ULTIMATE.start_main_~p~0.base) v_ULTIMATE.start_main_~p~0.offset_61) 0) (<= ULTIMATE.start_main_~p~0.offset 0) (<= 0 v_ULTIMATE.start_main_~p~0.offset_61) (<= v_ULTIMATE.start_main_~p~0.offset_61 0)) [2020-07-29 02:04:38,452 INFO L173 IndexEqualityManager]: detected equality via solver [2020-07-29 02:04:38,459 INFO L350 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2020-07-29 02:04:38,460 INFO L384 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 15 treesize of output 10 [2020-07-29 02:04:38,477 INFO L544 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2020-07-29 02:04:38,487 INFO L624 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2020-07-29 02:04:38,504 INFO L544 ElimStorePlain]: Start of recursive call 1: 3 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2020-07-29 02:04:38,504 INFO L244 ElimStorePlain]: Needed 2 recursive calls to eliminate 4 variables, input treesize:27, output treesize:3 [2020-07-29 02:04:38,508 WARN L406 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2020-07-29 02:04:38,508 WARN L407 uantifierElimination]: Input elimination task: ∃ [|#memory_int|, ULTIMATE.start_main_~p~0.base, ULTIMATE.start_main_~p~0.offset, v_ULTIMATE.start_main_~p~0.offset_61]. (let ((.cse0 (select |#memory_int| ULTIMATE.start_main_~p~0.base))) (and (<= (select .cse0 v_ULTIMATE.start_main_~p~0.offset_61) 0) (<= ULTIMATE.start_main_~p~0.offset 0) (<= 0 v_ULTIMATE.start_main_~p~0.offset_61) (<= |ULTIMATE.start_main_#t~mem7| (select .cse0 ULTIMATE.start_main_~p~0.offset)) (<= 0 ULTIMATE.start_main_~p~0.offset) (<= v_ULTIMATE.start_main_~p~0.offset_61 0))) [2020-07-29 02:04:38,508 WARN L408 uantifierElimination]: ElimStorePlain result: ∃ []. (<= |ULTIMATE.start_main_#t~mem7| 0) [2020-07-29 02:04:38,545 INFO L280 TraceCheckUtils]: 0: Hoare triple {625#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {625#true} is VALID [2020-07-29 02:04:38,546 INFO L280 TraceCheckUtils]: 1: Hoare triple {625#true} havoc main_#res;havoc main_#t~malloc2.base, main_#t~malloc2.offset, main_#t~malloc4.base, main_#t~malloc4.offset, main_#t~mem5.base, main_#t~mem5.offset, main_#t~post6, main_#t~nondet3, main_#t~mem7, main_#t~mem8.base, main_#t~mem8.offset, main_#t~post9, main_#t~mem10.base, main_#t~mem10.offset, main_~tmp~0.base, main_~tmp~0.offset, main_~a~0.base, main_~a~0.offset, main_~t~0.base, main_~t~0.offset, main_~p~0.base, main_~p~0.offset, main_~i~0;call main_#t~malloc2.base, main_#t~malloc2.offset := #Ultimate.allocOnHeap(8);main_~a~0.base, main_~a~0.offset := main_#t~malloc2.base, main_#t~malloc2.offset; {639#(and (= 1 (select |#valid| ULTIMATE.start_main_~a~0.base)) (= 0 ULTIMATE.start_main_~a~0.offset))} is VALID [2020-07-29 02:04:38,547 INFO L280 TraceCheckUtils]: 2: Hoare triple {639#(and (= 1 (select |#valid| ULTIMATE.start_main_~a~0.base)) (= 0 ULTIMATE.start_main_~a~0.offset))} assume !(main_~a~0.base == 0 && main_~a~0.offset == 0); {639#(and (= 1 (select |#valid| ULTIMATE.start_main_~a~0.base)) (= 0 ULTIMATE.start_main_~a~0.offset))} is VALID [2020-07-29 02:04:38,549 INFO L280 TraceCheckUtils]: 3: Hoare triple {639#(and (= 1 (select |#valid| ULTIMATE.start_main_~a~0.base)) (= 0 ULTIMATE.start_main_~a~0.offset))} havoc main_~t~0.base, main_~t~0.offset;main_~p~0.base, main_~p~0.offset := main_~a~0.base, main_~a~0.offset;main_~i~0 := 0; {646#(and (<= ULTIMATE.start_main_~i~0 0) (<= ULTIMATE.start_main_~p~0.offset ULTIMATE.start_main_~a~0.offset) (= 1 (select |#valid| ULTIMATE.start_main_~a~0.base)) (= 0 ULTIMATE.start_main_~a~0.offset) (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base))} is VALID [2020-07-29 02:04:38,551 INFO L280 TraceCheckUtils]: 4: Hoare triple {646#(and (<= ULTIMATE.start_main_~i~0 0) (<= ULTIMATE.start_main_~p~0.offset ULTIMATE.start_main_~a~0.offset) (= 1 (select |#valid| ULTIMATE.start_main_~a~0.base)) (= 0 ULTIMATE.start_main_~a~0.offset) (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base))} assume !!(main_~i~0 < 30 && 0 != main_#t~nondet3);havoc main_#t~nondet3;call write~int(main_~i~0, main_~p~0.base, main_~p~0.offset, 4);call main_#t~malloc4.base, main_#t~malloc4.offset := #Ultimate.allocOnHeap(8);main_~t~0.base, main_~t~0.offset := main_#t~malloc4.base, main_#t~malloc4.offset; {650#(and (not (= ULTIMATE.start_main_~t~0.base ULTIMATE.start_main_~a~0.base)) (<= ULTIMATE.start_main_~p~0.offset ULTIMATE.start_main_~a~0.offset) (<= 0 ULTIMATE.start_main_~p~0.offset) (<= (select (select |#memory_int| ULTIMATE.start_main_~p~0.base) ULTIMATE.start_main_~p~0.offset) 0) (= 0 ULTIMATE.start_main_~a~0.offset) (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base))} is VALID [2020-07-29 02:04:38,552 INFO L280 TraceCheckUtils]: 5: Hoare triple {650#(and (not (= ULTIMATE.start_main_~t~0.base ULTIMATE.start_main_~a~0.base)) (<= ULTIMATE.start_main_~p~0.offset ULTIMATE.start_main_~a~0.offset) (<= 0 ULTIMATE.start_main_~p~0.offset) (<= (select (select |#memory_int| ULTIMATE.start_main_~p~0.base) ULTIMATE.start_main_~p~0.offset) 0) (= 0 ULTIMATE.start_main_~a~0.offset) (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base))} assume !(main_~t~0.base == 0 && main_~t~0.offset == 0); {650#(and (not (= ULTIMATE.start_main_~t~0.base ULTIMATE.start_main_~a~0.base)) (<= ULTIMATE.start_main_~p~0.offset ULTIMATE.start_main_~a~0.offset) (<= 0 ULTIMATE.start_main_~p~0.offset) (<= (select (select |#memory_int| ULTIMATE.start_main_~p~0.base) ULTIMATE.start_main_~p~0.offset) 0) (= 0 ULTIMATE.start_main_~a~0.offset) (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base))} is VALID [2020-07-29 02:04:38,559 INFO L280 TraceCheckUtils]: 6: Hoare triple {650#(and (not (= ULTIMATE.start_main_~t~0.base ULTIMATE.start_main_~a~0.base)) (<= ULTIMATE.start_main_~p~0.offset ULTIMATE.start_main_~a~0.offset) (<= 0 ULTIMATE.start_main_~p~0.offset) (<= (select (select |#memory_int| ULTIMATE.start_main_~p~0.base) ULTIMATE.start_main_~p~0.offset) 0) (= 0 ULTIMATE.start_main_~a~0.offset) (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base))} call write~$Pointer$(main_~t~0.base, main_~t~0.offset, main_~p~0.base, 4 + main_~p~0.offset, 4);call main_#t~mem5.base, main_#t~mem5.offset := read~$Pointer$(main_~p~0.base, 4 + main_~p~0.offset, 4);main_~p~0.base, main_~p~0.offset := main_#t~mem5.base, main_#t~mem5.offset;havoc main_#t~mem5.base, main_#t~mem5.offset;main_#t~post6 := main_~i~0;main_~i~0 := 1 + main_#t~post6;havoc main_#t~post6; {657#(and (exists ((v_ULTIMATE.start_main_~p~0.offset_61 Int)) (and (<= 0 v_ULTIMATE.start_main_~p~0.offset_61) (<= (select (select |#memory_int| ULTIMATE.start_main_~a~0.base) v_ULTIMATE.start_main_~p~0.offset_61) 0) (<= v_ULTIMATE.start_main_~p~0.offset_61 ULTIMATE.start_main_~a~0.offset))) (not (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base)) (= 0 ULTIMATE.start_main_~a~0.offset))} is VALID [2020-07-29 02:04:38,560 INFO L280 TraceCheckUtils]: 7: Hoare triple {657#(and (exists ((v_ULTIMATE.start_main_~p~0.offset_61 Int)) (and (<= 0 v_ULTIMATE.start_main_~p~0.offset_61) (<= (select (select |#memory_int| ULTIMATE.start_main_~a~0.base) v_ULTIMATE.start_main_~p~0.offset_61) 0) (<= v_ULTIMATE.start_main_~p~0.offset_61 ULTIMATE.start_main_~a~0.offset))) (not (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base)) (= 0 ULTIMATE.start_main_~a~0.offset))} assume !(main_~i~0 < 30 && 0 != main_#t~nondet3);havoc main_#t~nondet3; {657#(and (exists ((v_ULTIMATE.start_main_~p~0.offset_61 Int)) (and (<= 0 v_ULTIMATE.start_main_~p~0.offset_61) (<= (select (select |#memory_int| ULTIMATE.start_main_~a~0.base) v_ULTIMATE.start_main_~p~0.offset_61) 0) (<= v_ULTIMATE.start_main_~p~0.offset_61 ULTIMATE.start_main_~a~0.offset))) (not (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base)) (= 0 ULTIMATE.start_main_~a~0.offset))} is VALID [2020-07-29 02:04:38,562 INFO L280 TraceCheckUtils]: 8: Hoare triple {657#(and (exists ((v_ULTIMATE.start_main_~p~0.offset_61 Int)) (and (<= 0 v_ULTIMATE.start_main_~p~0.offset_61) (<= (select (select |#memory_int| ULTIMATE.start_main_~a~0.base) v_ULTIMATE.start_main_~p~0.offset_61) 0) (<= v_ULTIMATE.start_main_~p~0.offset_61 ULTIMATE.start_main_~a~0.offset))) (not (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base)) (= 0 ULTIMATE.start_main_~a~0.offset))} call write~int(main_~i~0, main_~p~0.base, main_~p~0.offset, 4);call write~$Pointer$(0, 0, main_~p~0.base, 4 + main_~p~0.offset, 4);main_~p~0.base, main_~p~0.offset := main_~a~0.base, main_~a~0.offset;main_~i~0 := 0; {664#(and (exists ((v_ULTIMATE.start_main_~p~0.offset_61 Int)) (and (<= (select (select |#memory_int| ULTIMATE.start_main_~p~0.base) v_ULTIMATE.start_main_~p~0.offset_61) 0) (<= 0 v_ULTIMATE.start_main_~p~0.offset_61) (<= v_ULTIMATE.start_main_~p~0.offset_61 0))) (<= ULTIMATE.start_main_~p~0.offset 0))} is VALID [2020-07-29 02:04:38,563 INFO L280 TraceCheckUtils]: 9: Hoare triple {664#(and (exists ((v_ULTIMATE.start_main_~p~0.offset_61 Int)) (and (<= (select (select |#memory_int| ULTIMATE.start_main_~p~0.base) v_ULTIMATE.start_main_~p~0.offset_61) 0) (<= 0 v_ULTIMATE.start_main_~p~0.offset_61) (<= v_ULTIMATE.start_main_~p~0.offset_61 0))) (<= ULTIMATE.start_main_~p~0.offset 0))} assume !!(main_~p~0.base != 0 || main_~p~0.offset != 0);call main_#t~mem7 := read~int(main_~p~0.base, main_~p~0.offset, 4); {668#(<= |ULTIMATE.start_main_#t~mem7| 0)} is VALID [2020-07-29 02:04:38,563 INFO L280 TraceCheckUtils]: 10: Hoare triple {668#(<= |ULTIMATE.start_main_#t~mem7| 0)} assume !(1 != main_#t~mem7);havoc main_#t~mem7; {626#false} is VALID [2020-07-29 02:04:38,564 INFO L280 TraceCheckUtils]: 11: Hoare triple {626#false} call main_#t~mem8.base, main_#t~mem8.offset := read~$Pointer$(main_~p~0.base, 4 + main_~p~0.offset, 4);main_~p~0.base, main_~p~0.offset := main_#t~mem8.base, main_#t~mem8.offset;havoc main_#t~mem8.base, main_#t~mem8.offset;main_#t~post9 := main_~i~0;main_~i~0 := 1 + main_#t~post9;havoc main_#t~post9; {626#false} is VALID [2020-07-29 02:04:38,564 INFO L280 TraceCheckUtils]: 12: Hoare triple {626#false} assume !!(main_~p~0.base != 0 || main_~p~0.offset != 0);call main_#t~mem7 := read~int(main_~p~0.base, main_~p~0.offset, 4); {626#false} is VALID [2020-07-29 02:04:38,565 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 02:04:38,565 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2020-07-29 02:04:38,567 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2020-07-29 02:04:38,567 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1524783506] [2020-07-29 02:04:38,647 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-29 02:04:38,648 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2020-07-29 02:04:38,648 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=32, Invalid=150, Unknown=0, NotChecked=0, Total=182 [2020-07-29 02:04:38,648 INFO L87 Difference]: Start difference. First operand 15 states and 17 transitions. cyclomatic complexity: 5 Second operand 14 states. [2020-07-29 02:04:39,510 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 02:04:39,511 INFO L93 Difference]: Finished difference Result 26 states and 28 transitions. [2020-07-29 02:04:39,511 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2020-07-29 02:04:39,511 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states. [2020-07-29 02:04:39,550 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 23 edges. 23 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 02:04:39,550 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 26 states and 28 transitions. [2020-07-29 02:04:39,552 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 4 [2020-07-29 02:04:39,553 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 26 states to 23 states and 25 transitions. [2020-07-29 02:04:39,553 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 15 [2020-07-29 02:04:39,554 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 15 [2020-07-29 02:04:39,554 INFO L73 IsDeterministic]: Start isDeterministic. Operand 23 states and 25 transitions. [2020-07-29 02:04:39,554 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2020-07-29 02:04:39,554 INFO L688 BuchiCegarLoop]: Abstraction has 23 states and 25 transitions. [2020-07-29 02:04:39,554 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 23 states and 25 transitions. [2020-07-29 02:04:39,555 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 23 to 18. [2020-07-29 02:04:39,555 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-29 02:04:39,556 INFO L82 GeneralOperation]: Start isEquivalent. First operand 23 states and 25 transitions. Second operand 18 states. [2020-07-29 02:04:39,556 INFO L74 IsIncluded]: Start isIncluded. First operand 23 states and 25 transitions. Second operand 18 states. [2020-07-29 02:04:39,556 INFO L87 Difference]: Start difference. First operand 23 states and 25 transitions. Second operand 18 states. [2020-07-29 02:04:39,557 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 02:04:39,557 INFO L93 Difference]: Finished difference Result 23 states and 25 transitions. [2020-07-29 02:04:39,557 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 25 transitions. [2020-07-29 02:04:39,557 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 02:04:39,557 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 02:04:39,558 INFO L74 IsIncluded]: Start isIncluded. First operand 18 states. Second operand 23 states and 25 transitions. [2020-07-29 02:04:39,558 INFO L87 Difference]: Start difference. First operand 18 states. Second operand 23 states and 25 transitions. [2020-07-29 02:04:39,559 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 02:04:39,559 INFO L93 Difference]: Finished difference Result 23 states and 25 transitions. [2020-07-29 02:04:39,559 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 25 transitions. [2020-07-29 02:04:39,559 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 02:04:39,560 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 02:04:39,560 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-29 02:04:39,560 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-29 02:04:39,560 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2020-07-29 02:04:39,561 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 20 transitions. [2020-07-29 02:04:39,561 INFO L711 BuchiCegarLoop]: Abstraction has 18 states and 20 transitions. [2020-07-29 02:04:39,561 INFO L591 BuchiCegarLoop]: Abstraction has 18 states and 20 transitions. [2020-07-29 02:04:39,561 INFO L424 BuchiCegarLoop]: ======== Iteration 7============ [2020-07-29 02:04:39,561 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 18 states and 20 transitions. [2020-07-29 02:04:39,562 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 4 [2020-07-29 02:04:39,562 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2020-07-29 02:04:39,562 INFO L119 BuchiIsEmpty]: Starting construction of run [2020-07-29 02:04:39,562 INFO L849 BuchiCegarLoop]: Counterexample stem histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1] [2020-07-29 02:04:39,562 INFO L850 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1] [2020-07-29 02:04:39,562 INFO L794 eck$LassoCheckResult]: Stem: 725#ULTIMATE.startENTRY #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; 724#L-1 havoc main_#res;havoc main_#t~malloc2.base, main_#t~malloc2.offset, main_#t~malloc4.base, main_#t~malloc4.offset, main_#t~mem5.base, main_#t~mem5.offset, main_#t~post6, main_#t~nondet3, main_#t~mem7, main_#t~mem8.base, main_#t~mem8.offset, main_#t~post9, main_#t~mem10.base, main_#t~mem10.offset, main_~tmp~0.base, main_~tmp~0.offset, main_~a~0.base, main_~a~0.offset, main_~t~0.base, main_~t~0.offset, main_~p~0.base, main_~p~0.offset, main_~i~0;call main_#t~malloc2.base, main_#t~malloc2.offset := #Ultimate.allocOnHeap(8);main_~a~0.base, main_~a~0.offset := main_#t~malloc2.base, main_#t~malloc2.offset; 722#L522 assume !(main_~a~0.base == 0 && main_~a~0.offset == 0); 723#L522-1 havoc main_~t~0.base, main_~t~0.offset;main_~p~0.base, main_~p~0.offset := main_~a~0.base, main_~a~0.offset;main_~i~0 := 0; 717#L526-2 assume !!(main_~i~0 < 30 && 0 != main_#t~nondet3);havoc main_#t~nondet3;call write~int(main_~i~0, main_~p~0.base, main_~p~0.offset, 4);call main_#t~malloc4.base, main_#t~malloc4.offset := #Ultimate.allocOnHeap(8);main_~t~0.base, main_~t~0.offset := main_#t~malloc4.base, main_#t~malloc4.offset; 718#L529 assume !(main_~t~0.base == 0 && main_~t~0.offset == 0); 726#L529-1 call write~$Pointer$(main_~t~0.base, main_~t~0.offset, main_~p~0.base, 4 + main_~p~0.offset, 4);call main_#t~mem5.base, main_#t~mem5.offset := read~$Pointer$(main_~p~0.base, 4 + main_~p~0.offset, 4);main_~p~0.base, main_~p~0.offset := main_#t~mem5.base, main_#t~mem5.offset;havoc main_#t~mem5.base, main_#t~mem5.offset;main_#t~post6 := main_~i~0;main_~i~0 := 1 + main_#t~post6;havoc main_#t~post6; 719#L526-2 assume !!(main_~i~0 < 30 && 0 != main_#t~nondet3);havoc main_#t~nondet3;call write~int(main_~i~0, main_~p~0.base, main_~p~0.offset, 4);call main_#t~malloc4.base, main_#t~malloc4.offset := #Ultimate.allocOnHeap(8);main_~t~0.base, main_~t~0.offset := main_#t~malloc4.base, main_#t~malloc4.offset; 720#L529 assume !(main_~t~0.base == 0 && main_~t~0.offset == 0); 728#L529-1 call write~$Pointer$(main_~t~0.base, main_~t~0.offset, main_~p~0.base, 4 + main_~p~0.offset, 4);call main_#t~mem5.base, main_#t~mem5.offset := read~$Pointer$(main_~p~0.base, 4 + main_~p~0.offset, 4);main_~p~0.base, main_~p~0.offset := main_#t~mem5.base, main_#t~mem5.offset;havoc main_#t~mem5.base, main_#t~mem5.offset;main_#t~post6 := main_~i~0;main_~i~0 := 1 + main_#t~post6;havoc main_#t~post6; 727#L526-2 assume !(main_~i~0 < 30 && 0 != main_#t~nondet3);havoc main_#t~nondet3; 721#L526-3 call write~int(main_~i~0, main_~p~0.base, main_~p~0.offset, 4);call write~$Pointer$(0, 0, main_~p~0.base, 4 + main_~p~0.offset, 4);main_~p~0.base, main_~p~0.offset := main_~a~0.base, main_~a~0.offset;main_~i~0 := 0; 713#L538-2 assume !!(main_~p~0.base != 0 || main_~p~0.offset != 0);call main_#t~mem7 := read~int(main_~p~0.base, main_~p~0.offset, 4); 714#L539 [2020-07-29 02:04:39,563 INFO L796 eck$LassoCheckResult]: Loop: 714#L539 assume !(1 != main_#t~mem7);havoc main_#t~mem7; 711#L539-2 call main_#t~mem8.base, main_#t~mem8.offset := read~$Pointer$(main_~p~0.base, 4 + main_~p~0.offset, 4);main_~p~0.base, main_~p~0.offset := main_#t~mem8.base, main_#t~mem8.offset;havoc main_#t~mem8.base, main_#t~mem8.offset;main_#t~post9 := main_~i~0;main_~i~0 := 1 + main_#t~post9;havoc main_#t~post9; 712#L538-2 assume !!(main_~p~0.base != 0 || main_~p~0.offset != 0);call main_#t~mem7 := read~int(main_~p~0.base, main_~p~0.offset, 4); 714#L539 [2020-07-29 02:04:39,563 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 02:04:39,563 INFO L82 PathProgramCache]: Analyzing trace with hash -8921739, now seen corresponding path program 2 times [2020-07-29 02:04:39,563 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-29 02:04:39,563 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [488226577] [2020-07-29 02:04:39,564 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-29 02:04:39,585 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-29 02:04:39,585 INFO L221 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2020-07-29 02:04:39,605 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-29 02:04:39,605 INFO L221 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2020-07-29 02:04:39,612 INFO L174 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2020-07-29 02:04:39,612 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 02:04:39,613 INFO L82 PathProgramCache]: Analyzing trace with hash 76517, now seen corresponding path program 3 times [2020-07-29 02:04:39,613 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-29 02:04:39,613 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2068865704] [2020-07-29 02:04:39,613 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-29 02:04:39,617 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-29 02:04:39,617 INFO L221 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2020-07-29 02:04:39,620 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-29 02:04:39,620 INFO L221 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2020-07-29 02:04:39,622 INFO L174 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2020-07-29 02:04:39,623 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 02:04:39,623 INFO L82 PathProgramCache]: Analyzing trace with hash 500492529, now seen corresponding path program 2 times [2020-07-29 02:04:39,623 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-29 02:04:39,623 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1252845383] [2020-07-29 02:04:39,623 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-29 02:04:39,641 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 02:04:39,819 INFO L280 TraceCheckUtils]: 0: Hoare triple {782#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {782#true} is VALID [2020-07-29 02:04:39,821 INFO L280 TraceCheckUtils]: 1: Hoare triple {782#true} havoc main_#res;havoc main_#t~malloc2.base, main_#t~malloc2.offset, main_#t~malloc4.base, main_#t~malloc4.offset, main_#t~mem5.base, main_#t~mem5.offset, main_#t~post6, main_#t~nondet3, main_#t~mem7, main_#t~mem8.base, main_#t~mem8.offset, main_#t~post9, main_#t~mem10.base, main_#t~mem10.offset, main_~tmp~0.base, main_~tmp~0.offset, main_~a~0.base, main_~a~0.offset, main_~t~0.base, main_~t~0.offset, main_~p~0.base, main_~p~0.offset, main_~i~0;call main_#t~malloc2.base, main_#t~malloc2.offset := #Ultimate.allocOnHeap(8);main_~a~0.base, main_~a~0.offset := main_#t~malloc2.base, main_#t~malloc2.offset; {784#(= 1 (select |#valid| ULTIMATE.start_main_~a~0.base))} is VALID [2020-07-29 02:04:39,823 INFO L280 TraceCheckUtils]: 2: Hoare triple {784#(= 1 (select |#valid| ULTIMATE.start_main_~a~0.base))} assume !(main_~a~0.base == 0 && main_~a~0.offset == 0); {784#(= 1 (select |#valid| ULTIMATE.start_main_~a~0.base))} is VALID [2020-07-29 02:04:39,824 INFO L280 TraceCheckUtils]: 3: Hoare triple {784#(= 1 (select |#valid| ULTIMATE.start_main_~a~0.base))} havoc main_~t~0.base, main_~t~0.offset;main_~p~0.base, main_~p~0.offset := main_~a~0.base, main_~a~0.offset;main_~i~0 := 0; {785#(and (= 0 ULTIMATE.start_main_~i~0) (= ULTIMATE.start_main_~a~0.offset ULTIMATE.start_main_~p~0.offset) (= 1 (select |#valid| ULTIMATE.start_main_~p~0.base)) (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base))} is VALID [2020-07-29 02:04:39,829 INFO L280 TraceCheckUtils]: 4: Hoare triple {785#(and (= 0 ULTIMATE.start_main_~i~0) (= ULTIMATE.start_main_~a~0.offset ULTIMATE.start_main_~p~0.offset) (= 1 (select |#valid| ULTIMATE.start_main_~p~0.base)) (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base))} assume !!(main_~i~0 < 30 && 0 != main_#t~nondet3);havoc main_#t~nondet3;call write~int(main_~i~0, main_~p~0.base, main_~p~0.offset, 4);call main_#t~malloc4.base, main_#t~malloc4.offset := #Ultimate.allocOnHeap(8);main_~t~0.base, main_~t~0.offset := main_#t~malloc4.base, main_#t~malloc4.offset; {786#(and (= (select (select |#memory_int| ULTIMATE.start_main_~p~0.base) ULTIMATE.start_main_~p~0.offset) 0) (not (= ULTIMATE.start_main_~t~0.base ULTIMATE.start_main_~p~0.base)) (= ULTIMATE.start_main_~a~0.offset ULTIMATE.start_main_~p~0.offset) (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base))} is VALID [2020-07-29 02:04:39,831 INFO L280 TraceCheckUtils]: 5: Hoare triple {786#(and (= (select (select |#memory_int| ULTIMATE.start_main_~p~0.base) ULTIMATE.start_main_~p~0.offset) 0) (not (= ULTIMATE.start_main_~t~0.base ULTIMATE.start_main_~p~0.base)) (= ULTIMATE.start_main_~a~0.offset ULTIMATE.start_main_~p~0.offset) (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base))} assume !(main_~t~0.base == 0 && main_~t~0.offset == 0); {786#(and (= (select (select |#memory_int| ULTIMATE.start_main_~p~0.base) ULTIMATE.start_main_~p~0.offset) 0) (not (= ULTIMATE.start_main_~t~0.base ULTIMATE.start_main_~p~0.base)) (= ULTIMATE.start_main_~a~0.offset ULTIMATE.start_main_~p~0.offset) (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base))} is VALID [2020-07-29 02:04:39,834 INFO L280 TraceCheckUtils]: 6: Hoare triple {786#(and (= (select (select |#memory_int| ULTIMATE.start_main_~p~0.base) ULTIMATE.start_main_~p~0.offset) 0) (not (= ULTIMATE.start_main_~t~0.base ULTIMATE.start_main_~p~0.base)) (= ULTIMATE.start_main_~a~0.offset ULTIMATE.start_main_~p~0.offset) (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base))} call write~$Pointer$(main_~t~0.base, main_~t~0.offset, main_~p~0.base, 4 + main_~p~0.offset, 4);call main_#t~mem5.base, main_#t~mem5.offset := read~$Pointer$(main_~p~0.base, 4 + main_~p~0.offset, 4);main_~p~0.base, main_~p~0.offset := main_#t~mem5.base, main_#t~mem5.offset;havoc main_#t~mem5.base, main_#t~mem5.offset;main_#t~post6 := main_~i~0;main_~i~0 := 1 + main_#t~post6;havoc main_#t~post6; {787#(and (not (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base)) (= 1 (select |#valid| ULTIMATE.start_main_~a~0.base)) (= 0 (select (select |#memory_int| ULTIMATE.start_main_~a~0.base) ULTIMATE.start_main_~a~0.offset)))} is VALID [2020-07-29 02:04:39,837 INFO L280 TraceCheckUtils]: 7: Hoare triple {787#(and (not (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base)) (= 1 (select |#valid| ULTIMATE.start_main_~a~0.base)) (= 0 (select (select |#memory_int| ULTIMATE.start_main_~a~0.base) ULTIMATE.start_main_~a~0.offset)))} assume !!(main_~i~0 < 30 && 0 != main_#t~nondet3);havoc main_#t~nondet3;call write~int(main_~i~0, main_~p~0.base, main_~p~0.offset, 4);call main_#t~malloc4.base, main_#t~malloc4.offset := #Ultimate.allocOnHeap(8);main_~t~0.base, main_~t~0.offset := main_#t~malloc4.base, main_#t~malloc4.offset; {788#(and (not (= ULTIMATE.start_main_~t~0.base ULTIMATE.start_main_~a~0.base)) (not (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base)) (= 0 (select (select |#memory_int| ULTIMATE.start_main_~a~0.base) ULTIMATE.start_main_~a~0.offset)))} is VALID [2020-07-29 02:04:39,838 INFO L280 TraceCheckUtils]: 8: Hoare triple {788#(and (not (= ULTIMATE.start_main_~t~0.base ULTIMATE.start_main_~a~0.base)) (not (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base)) (= 0 (select (select |#memory_int| ULTIMATE.start_main_~a~0.base) ULTIMATE.start_main_~a~0.offset)))} assume !(main_~t~0.base == 0 && main_~t~0.offset == 0); {788#(and (not (= ULTIMATE.start_main_~t~0.base ULTIMATE.start_main_~a~0.base)) (not (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base)) (= 0 (select (select |#memory_int| ULTIMATE.start_main_~a~0.base) ULTIMATE.start_main_~a~0.offset)))} is VALID [2020-07-29 02:04:39,839 INFO L280 TraceCheckUtils]: 9: Hoare triple {788#(and (not (= ULTIMATE.start_main_~t~0.base ULTIMATE.start_main_~a~0.base)) (not (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base)) (= 0 (select (select |#memory_int| ULTIMATE.start_main_~a~0.base) ULTIMATE.start_main_~a~0.offset)))} call write~$Pointer$(main_~t~0.base, main_~t~0.offset, main_~p~0.base, 4 + main_~p~0.offset, 4);call main_#t~mem5.base, main_#t~mem5.offset := read~$Pointer$(main_~p~0.base, 4 + main_~p~0.offset, 4);main_~p~0.base, main_~p~0.offset := main_#t~mem5.base, main_#t~mem5.offset;havoc main_#t~mem5.base, main_#t~mem5.offset;main_#t~post6 := main_~i~0;main_~i~0 := 1 + main_#t~post6;havoc main_#t~post6; {789#(and (not (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base)) (= 0 (select (select |#memory_int| ULTIMATE.start_main_~a~0.base) ULTIMATE.start_main_~a~0.offset)))} is VALID [2020-07-29 02:04:39,840 INFO L280 TraceCheckUtils]: 10: Hoare triple {789#(and (not (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base)) (= 0 (select (select |#memory_int| ULTIMATE.start_main_~a~0.base) ULTIMATE.start_main_~a~0.offset)))} assume !(main_~i~0 < 30 && 0 != main_#t~nondet3);havoc main_#t~nondet3; {789#(and (not (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base)) (= 0 (select (select |#memory_int| ULTIMATE.start_main_~a~0.base) ULTIMATE.start_main_~a~0.offset)))} is VALID [2020-07-29 02:04:39,842 INFO L280 TraceCheckUtils]: 11: Hoare triple {789#(and (not (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base)) (= 0 (select (select |#memory_int| ULTIMATE.start_main_~a~0.base) ULTIMATE.start_main_~a~0.offset)))} call write~int(main_~i~0, main_~p~0.base, main_~p~0.offset, 4);call write~$Pointer$(0, 0, main_~p~0.base, 4 + main_~p~0.offset, 4);main_~p~0.base, main_~p~0.offset := main_~a~0.base, main_~a~0.offset;main_~i~0 := 0; {790#(= (select (select |#memory_int| ULTIMATE.start_main_~p~0.base) ULTIMATE.start_main_~p~0.offset) 0)} is VALID [2020-07-29 02:04:39,843 INFO L280 TraceCheckUtils]: 12: Hoare triple {790#(= (select (select |#memory_int| ULTIMATE.start_main_~p~0.base) ULTIMATE.start_main_~p~0.offset) 0)} assume !!(main_~p~0.base != 0 || main_~p~0.offset != 0);call main_#t~mem7 := read~int(main_~p~0.base, main_~p~0.offset, 4); {791#(= 0 |ULTIMATE.start_main_#t~mem7|)} is VALID [2020-07-29 02:04:39,843 INFO L280 TraceCheckUtils]: 13: Hoare triple {791#(= 0 |ULTIMATE.start_main_#t~mem7|)} assume !(1 != main_#t~mem7);havoc main_#t~mem7; {783#false} is VALID [2020-07-29 02:04:39,843 INFO L280 TraceCheckUtils]: 14: Hoare triple {783#false} call main_#t~mem8.base, main_#t~mem8.offset := read~$Pointer$(main_~p~0.base, 4 + main_~p~0.offset, 4);main_~p~0.base, main_~p~0.offset := main_#t~mem8.base, main_#t~mem8.offset;havoc main_#t~mem8.base, main_#t~mem8.offset;main_#t~post9 := main_~i~0;main_~i~0 := 1 + main_#t~post9;havoc main_#t~post9; {783#false} is VALID [2020-07-29 02:04:39,844 INFO L280 TraceCheckUtils]: 15: Hoare triple {783#false} assume !!(main_~p~0.base != 0 || main_~p~0.offset != 0);call main_#t~mem7 := read~int(main_~p~0.base, main_~p~0.offset, 4); {783#false} is VALID [2020-07-29 02:04:39,844 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 1 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 02:04:39,845 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1252845383] [2020-07-29 02:04:39,845 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1790246342] [2020-07-29 02:04:39,845 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 16 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 16 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2020-07-29 02:04:39,907 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2020-07-29 02:04:39,908 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2020-07-29 02:04:39,909 INFO L263 TraceCheckSpWp]: Trace formula consists of 141 conjuncts, 44 conjunts are in the unsatisfiable core [2020-07-29 02:04:39,924 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 02:04:39,925 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2020-07-29 02:04:39,938 INFO L384 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 [2020-07-29 02:04:39,938 INFO L544 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2020-07-29 02:04:39,943 INFO L624 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2020-07-29 02:04:39,943 INFO L544 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2020-07-29 02:04:39,943 INFO L244 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:10, output treesize:9 [2020-07-29 02:04:39,947 WARN L406 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2020-07-29 02:04:39,947 WARN L407 uantifierElimination]: Input elimination task: ∃ [|v_#valid_60|]. (and (= |#valid| (store |v_#valid_60| ULTIMATE.start_main_~a~0.base 1)) (= 0 ULTIMATE.start_main_~a~0.offset)) [2020-07-29 02:04:39,947 WARN L408 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= 1 (select |#valid| ULTIMATE.start_main_~a~0.base)) (= 0 ULTIMATE.start_main_~a~0.offset)) [2020-07-29 02:04:40,046 INFO L350 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2020-07-29 02:04:40,047 INFO L384 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 15 [2020-07-29 02:04:40,048 INFO L544 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2020-07-29 02:04:40,064 INFO L624 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2020-07-29 02:04:40,073 INFO L384 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 [2020-07-29 02:04:40,073 INFO L544 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2020-07-29 02:04:40,091 INFO L624 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2020-07-29 02:04:40,091 INFO L544 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2020-07-29 02:04:40,092 INFO L244 ElimStorePlain]: Needed 3 recursive calls to eliminate 2 variables, input treesize:37, output treesize:27 [2020-07-29 02:04:40,096 WARN L406 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2020-07-29 02:04:40,096 WARN L407 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_25|, |v_#valid_61|]. (and (= 0 ULTIMATE.start_main_~i~0) (<= ULTIMATE.start_main_~p~0.offset ULTIMATE.start_main_~a~0.offset) (= 0 (select |v_#valid_61| ULTIMATE.start_main_~t~0.base)) (= |#memory_int| (store |v_#memory_int_25| ULTIMATE.start_main_~p~0.base (store (select |v_#memory_int_25| ULTIMATE.start_main_~p~0.base) ULTIMATE.start_main_~p~0.offset ULTIMATE.start_main_~i~0))) (<= 0 ULTIMATE.start_main_~p~0.offset) (= 0 ULTIMATE.start_main_~a~0.offset) (= 1 (select |v_#valid_61| ULTIMATE.start_main_~a~0.base)) (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base)) [2020-07-29 02:04:40,096 WARN L408 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= (select (select |#memory_int| ULTIMATE.start_main_~p~0.base) ULTIMATE.start_main_~p~0.offset) ULTIMATE.start_main_~i~0) (= 0 ULTIMATE.start_main_~i~0) (not (= ULTIMATE.start_main_~t~0.base ULTIMATE.start_main_~a~0.base)) (<= ULTIMATE.start_main_~p~0.offset ULTIMATE.start_main_~a~0.offset) (<= 0 ULTIMATE.start_main_~p~0.offset) (= 0 ULTIMATE.start_main_~a~0.offset) (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base)) [2020-07-29 02:04:40,260 INFO L190 IndexEqualityManager]: detected not equals via solver [2020-07-29 02:04:40,261 INFO L384 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 27 treesize of output 11 [2020-07-29 02:04:40,262 INFO L544 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2020-07-29 02:04:40,272 INFO L624 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2020-07-29 02:04:40,283 INFO L544 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-2 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2020-07-29 02:04:40,283 INFO L244 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:43, output treesize:24 [2020-07-29 02:04:40,414 INFO L384 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 19 treesize of output 18 [2020-07-29 02:04:40,415 INFO L544 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2020-07-29 02:04:40,434 INFO L624 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2020-07-29 02:04:40,449 INFO L544 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-2 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2020-07-29 02:04:40,450 INFO L244 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:38, output treesize:34 [2020-07-29 02:04:40,775 INFO L350 Elim1Store]: treesize reduction 27, result has 20.6 percent of original size [2020-07-29 02:04:40,776 INFO L384 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 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 1 case distinctions, treesize of input 43 treesize of output 26 [2020-07-29 02:04:40,782 INFO L544 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2020-07-29 02:04:40,802 INFO L624 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2020-07-29 02:04:40,826 INFO L544 ElimStorePlain]: Start of recursive call 1: 3 dim-0 vars, 1 dim-2 vars, End of recursive call: 3 dim-0 vars, and 1 xjuncts. [2020-07-29 02:04:40,826 INFO L244 ElimStorePlain]: Needed 2 recursive calls to eliminate 4 variables, input treesize:59, output treesize:40 [2020-07-29 02:04:40,834 WARN L406 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2020-07-29 02:04:40,834 WARN L407 uantifierElimination]: Input elimination task: ∃ [v_ULTIMATE.start_main_~p~0.base_108, v_ULTIMATE.start_main_~p~0.offset_66, |v_#memory_int_28|, v_ULTIMATE.start_main_~p~0.offset_65]. (let ((.cse0 (select |v_#memory_int_28| v_ULTIMATE.start_main_~p~0.base_108))) (let ((.cse2 (select .cse0 v_ULTIMATE.start_main_~p~0.offset_66))) (and (= (store |v_#memory_int_28| v_ULTIMATE.start_main_~p~0.base_108 (let ((.cse1 (+ v_ULTIMATE.start_main_~p~0.offset_66 4))) (store .cse0 .cse1 (select (select |#memory_int| v_ULTIMATE.start_main_~p~0.base_108) .cse1)))) |#memory_int|) (<= 0 v_ULTIMATE.start_main_~p~0.offset_65) (= 0 ULTIMATE.start_main_~p~0.offset) (<= v_ULTIMATE.start_main_~p~0.offset_65 ULTIMATE.start_main_~a~0.offset) (= 0 (select (select |v_#memory_int_28| ULTIMATE.start_main_~a~0.base) v_ULTIMATE.start_main_~p~0.offset_65)) (<= (+ .cse2 1) ULTIMATE.start_main_~i~0) (= 0 ULTIMATE.start_main_~a~0.offset) (not (= v_ULTIMATE.start_main_~p~0.base_108 ULTIMATE.start_main_~a~0.base)) (<= 1 .cse2)))) [2020-07-29 02:04:40,835 WARN L408 uantifierElimination]: ElimStorePlain result: ∃ [v_ULTIMATE.start_main_~p~0.base_108, v_ULTIMATE.start_main_~p~0.offset_66, v_ULTIMATE.start_main_~p~0.offset_65]. (let ((.cse0 (select (select |#memory_int| v_ULTIMATE.start_main_~p~0.base_108) v_ULTIMATE.start_main_~p~0.offset_66))) (and (<= 0 v_ULTIMATE.start_main_~p~0.offset_65) (= 0 ULTIMATE.start_main_~p~0.offset) (<= v_ULTIMATE.start_main_~p~0.offset_65 ULTIMATE.start_main_~a~0.offset) (<= (+ .cse0 1) ULTIMATE.start_main_~i~0) (= (select (select |#memory_int| ULTIMATE.start_main_~a~0.base) v_ULTIMATE.start_main_~p~0.offset_65) 0) (= 0 ULTIMATE.start_main_~a~0.offset) (not (= v_ULTIMATE.start_main_~p~0.base_108 ULTIMATE.start_main_~a~0.base)) (<= 1 .cse0))) [2020-07-29 02:04:41,146 INFO L173 IndexEqualityManager]: detected equality via solver [2020-07-29 02:04:41,240 INFO L350 Elim1Store]: treesize reduction 27, result has 69.7 percent of original size [2020-07-29 02:04:41,240 INFO L384 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 42 treesize of output 80 [2020-07-29 02:04:41,250 INFO L523 QuantifierPusher]: Distributing 3 conjuncts over 3 disjuncts [2020-07-29 02:04:41,266 INFO L544 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2020-07-29 02:04:41,354 INFO L624 ElimStorePlain]: treesize reduction 28, result has 71.4 percent of original size [2020-07-29 02:04:41,416 INFO L523 QuantifierPusher]: Distributing 2 conjuncts over 2 disjuncts [2020-07-29 02:04:41,426 INFO L523 QuantifierPusher]: Distributing 2 conjuncts over 2 disjuncts [2020-07-29 02:04:41,446 INFO L523 QuantifierPusher]: Distributing 2 conjuncts over 2 disjuncts [2020-07-29 02:04:41,452 INFO L544 ElimStorePlain]: Start of recursive call 1: 5 dim-0 vars, 1 dim-2 vars, End of recursive call: 4 dim-0 vars, and 1 xjuncts. [2020-07-29 02:04:41,452 INFO L244 ElimStorePlain]: Needed 2 recursive calls to eliminate 6 variables, input treesize:55, output treesize:75 [2020-07-29 02:04:41,460 WARN L406 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2020-07-29 02:04:41,460 WARN L407 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_29|, v_ULTIMATE.start_main_~p~0.base_109, v_ULTIMATE.start_main_~i~0_23, v_ULTIMATE.start_main_~p~0.offset_65, v_ULTIMATE.start_main_~p~0.base_108, v_ULTIMATE.start_main_~p~0.offset_66]. (let ((.cse0 (select (select |v_#memory_int_29| v_ULTIMATE.start_main_~p~0.base_108) v_ULTIMATE.start_main_~p~0.offset_66))) (and (<= 0 v_ULTIMATE.start_main_~p~0.offset_65) (<= v_ULTIMATE.start_main_~p~0.offset_65 0) (<= ULTIMATE.start_main_~p~0.offset 0) (= 0 (select (select |v_#memory_int_29| ULTIMATE.start_main_~p~0.base) v_ULTIMATE.start_main_~p~0.offset_65)) (<= 1 .cse0) (= (store |v_#memory_int_29| v_ULTIMATE.start_main_~p~0.base_109 (store (store (select |v_#memory_int_29| v_ULTIMATE.start_main_~p~0.base_109) 0 v_ULTIMATE.start_main_~i~0_23) 4 (select (select |#memory_int| v_ULTIMATE.start_main_~p~0.base_109) 4))) |#memory_int|) (<= (+ .cse0 1) v_ULTIMATE.start_main_~i~0_23) (not (= v_ULTIMATE.start_main_~p~0.base_108 ULTIMATE.start_main_~p~0.base)))) [2020-07-29 02:04:41,461 WARN L408 uantifierElimination]: ElimStorePlain result: ∃ [v_ULTIMATE.start_main_~p~0.base_108, v_ULTIMATE.start_main_~p~0.offset_66, v_ULTIMATE.start_main_~p~0.base_109, v_ULTIMATE.start_main_~p~0.offset_65]. (and (<= 0 v_ULTIMATE.start_main_~p~0.offset_65) (let ((.cse1 (select (select |#memory_int| v_ULTIMATE.start_main_~p~0.base_109) 0))) (let ((.cse2 (= v_ULTIMATE.start_main_~p~0.base_109 v_ULTIMATE.start_main_~p~0.base_108)) (.cse3 (<= 2 .cse1))) (or (let ((.cse0 (select (select |#memory_int| v_ULTIMATE.start_main_~p~0.base_108) v_ULTIMATE.start_main_~p~0.offset_66))) (and (<= (+ .cse0 1) .cse1) (<= 1 .cse0))) (and .cse2 .cse3 (= 4 v_ULTIMATE.start_main_~p~0.offset_66)) (and (= 0 v_ULTIMATE.start_main_~p~0.offset_66) .cse2 .cse3)))) (<= v_ULTIMATE.start_main_~p~0.offset_65 0) (<= ULTIMATE.start_main_~p~0.offset 0) (or (= 0 (select (select |#memory_int| ULTIMATE.start_main_~p~0.base) v_ULTIMATE.start_main_~p~0.offset_65)) (= v_ULTIMATE.start_main_~p~0.base_109 ULTIMATE.start_main_~p~0.base)) (not (= v_ULTIMATE.start_main_~p~0.base_108 ULTIMATE.start_main_~p~0.base))) [2020-07-29 02:04:41,484 INFO L523 QuantifierPusher]: Distributing 2 conjuncts over 2 disjuncts [2020-07-29 02:04:41,496 INFO L523 QuantifierPusher]: Distributing 2 conjuncts over 2 disjuncts [2020-07-29 02:04:41,511 INFO L523 QuantifierPusher]: Distributing 2 conjuncts over 2 disjuncts [2020-07-29 02:04:42,941 INFO L523 QuantifierPusher]: Distributing 2 conjuncts over 2 disjuncts [2020-07-29 02:04:42,952 INFO L523 QuantifierPusher]: Distributing 2 conjuncts over 2 disjuncts [2020-07-29 02:04:42,962 INFO L523 QuantifierPusher]: Distributing 2 conjuncts over 2 disjuncts [2020-07-29 02:04:43,004 INFO L523 QuantifierPusher]: Distributing 2 conjuncts over 2 disjuncts [2020-07-29 02:04:43,022 INFO L523 QuantifierPusher]: Distributing 2 conjuncts over 2 disjuncts [2020-07-29 02:04:43,033 INFO L523 QuantifierPusher]: Distributing 2 conjuncts over 2 disjuncts [2020-07-29 02:04:43,069 INFO L523 QuantifierPusher]: Distributing 2 conjuncts over 2 disjuncts [2020-07-29 02:04:43,087 INFO L523 QuantifierPusher]: Distributing 2 conjuncts over 2 disjuncts [2020-07-29 02:04:43,099 INFO L523 QuantifierPusher]: Distributing 2 conjuncts over 2 disjuncts [2020-07-29 02:04:43,140 INFO L523 QuantifierPusher]: Distributing 2 conjuncts over 2 disjuncts [2020-07-29 02:04:43,152 INFO L523 QuantifierPusher]: Distributing 2 conjuncts over 2 disjuncts [2020-07-29 02:04:43,161 INFO L523 QuantifierPusher]: Distributing 2 conjuncts over 2 disjuncts [2020-07-29 02:04:43,226 INFO L173 IndexEqualityManager]: detected equality via solver [2020-07-29 02:04:43,227 INFO L173 IndexEqualityManager]: detected equality via solver [2020-07-29 02:04:43,230 INFO L384 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 12 [2020-07-29 02:04:43,248 INFO L544 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2020-07-29 02:04:43,263 INFO L173 IndexEqualityManager]: detected equality via solver [2020-07-29 02:04:43,266 INFO L173 IndexEqualityManager]: detected equality via solver [2020-07-29 02:04:43,274 INFO L384 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 10 [2020-07-29 02:04:43,279 INFO L544 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2020-07-29 02:04:43,298 INFO L173 IndexEqualityManager]: detected equality via solver [2020-07-29 02:04:43,299 INFO L173 IndexEqualityManager]: detected equality via solver [2020-07-29 02:04:43,311 INFO L350 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2020-07-29 02:04:43,312 INFO L384 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 4 select indices, 4 select index equivalence classes, 1 disjoint index pairs (out of 6 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 35 treesize of output 35 [2020-07-29 02:04:43,368 INFO L523 QuantifierPusher]: Distributing 2 conjuncts over 3 disjuncts [2020-07-29 02:04:43,375 INFO L523 QuantifierPusher]: Distributing 3 conjuncts over 2 disjuncts [2020-07-29 02:04:43,383 INFO L523 QuantifierPusher]: Distributing 2 conjuncts over 2 disjuncts [2020-07-29 02:04:43,389 INFO L523 QuantifierPusher]: Distributing 3 conjuncts over 3 disjuncts [2020-07-29 02:04:43,410 INFO L544 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2020-07-29 02:04:43,470 INFO L624 ElimStorePlain]: treesize reduction 51, result has 40.7 percent of original size [2020-07-29 02:04:43,503 INFO L544 ElimStorePlain]: Start of recursive call 1: 6 dim-0 vars, 1 dim-2 vars, End of recursive call: and 2 xjuncts. [2020-07-29 02:04:43,503 INFO L244 ElimStorePlain]: Needed 4 recursive calls to eliminate 7 variables, input treesize:128, output treesize:7 [2020-07-29 02:04:43,507 WARN L406 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2020-07-29 02:04:43,507 WARN L407 uantifierElimination]: Input elimination task: ∃ [|#memory_int|, v_ULTIMATE.start_main_~p~0.base_108, v_ULTIMATE.start_main_~p~0.offset_66, v_ULTIMATE.start_main_~p~0.base_109, ULTIMATE.start_main_~p~0.base, v_ULTIMATE.start_main_~p~0.offset_65, ULTIMATE.start_main_~p~0.offset]. (let ((.cse1 (select |#memory_int| v_ULTIMATE.start_main_~p~0.base_109))) (let ((.cse11 (select |#memory_int| ULTIMATE.start_main_~p~0.base)) (.cse10 (select (select |#memory_int| v_ULTIMATE.start_main_~p~0.base_108) v_ULTIMATE.start_main_~p~0.offset_66)) (.cse9 (select .cse1 0))) (let ((.cse0 (<= (+ .cse10 1) .cse9)) (.cse5 (= 0 (select .cse11 v_ULTIMATE.start_main_~p~0.offset_65))) (.cse6 (= (select .cse11 ULTIMATE.start_main_~p~0.offset) |ULTIMATE.start_main_#t~mem7|)) (.cse7 (<= 0 v_ULTIMATE.start_main_~p~0.offset_65)) (.cse8 (<= v_ULTIMATE.start_main_~p~0.offset_65 0)) (.cse2 (<= ULTIMATE.start_main_~p~0.offset 0)) (.cse3 (<= 0 ULTIMATE.start_main_~p~0.offset)) (.cse4 (<= 1 .cse10))) (or (and .cse0 (= (select .cse1 ULTIMATE.start_main_~p~0.offset) |ULTIMATE.start_main_#t~mem7|) .cse2 .cse3 (not (= v_ULTIMATE.start_main_~p~0.base_109 v_ULTIMATE.start_main_~p~0.base_108)) .cse4) (and .cse5 .cse6 .cse7 .cse8 .cse2 (not (= v_ULTIMATE.start_main_~p~0.base_109 ULTIMATE.start_main_~p~0.base)) .cse3 (<= 2 .cse9)) (and .cse0 .cse5 .cse6 .cse7 .cse8 .cse2 .cse3 (not (= v_ULTIMATE.start_main_~p~0.base_108 ULTIMATE.start_main_~p~0.base)) .cse4))))) [2020-07-29 02:04:43,507 WARN L408 uantifierElimination]: ElimStorePlain result: ∃ []. (or (<= 2 |ULTIMATE.start_main_#t~mem7|) (= 0 |ULTIMATE.start_main_#t~mem7|)) [2020-07-29 02:04:43,535 INFO L280 TraceCheckUtils]: 0: Hoare triple {782#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {782#true} is VALID [2020-07-29 02:04:43,536 INFO L280 TraceCheckUtils]: 1: Hoare triple {782#true} havoc main_#res;havoc main_#t~malloc2.base, main_#t~malloc2.offset, main_#t~malloc4.base, main_#t~malloc4.offset, main_#t~mem5.base, main_#t~mem5.offset, main_#t~post6, main_#t~nondet3, main_#t~mem7, main_#t~mem8.base, main_#t~mem8.offset, main_#t~post9, main_#t~mem10.base, main_#t~mem10.offset, main_~tmp~0.base, main_~tmp~0.offset, main_~a~0.base, main_~a~0.offset, main_~t~0.base, main_~t~0.offset, main_~p~0.base, main_~p~0.offset, main_~i~0;call main_#t~malloc2.base, main_#t~malloc2.offset := #Ultimate.allocOnHeap(8);main_~a~0.base, main_~a~0.offset := main_#t~malloc2.base, main_#t~malloc2.offset; {798#(and (= 1 (select |#valid| ULTIMATE.start_main_~a~0.base)) (= 0 ULTIMATE.start_main_~a~0.offset))} is VALID [2020-07-29 02:04:43,537 INFO L280 TraceCheckUtils]: 2: Hoare triple {798#(and (= 1 (select |#valid| ULTIMATE.start_main_~a~0.base)) (= 0 ULTIMATE.start_main_~a~0.offset))} assume !(main_~a~0.base == 0 && main_~a~0.offset == 0); {798#(and (= 1 (select |#valid| ULTIMATE.start_main_~a~0.base)) (= 0 ULTIMATE.start_main_~a~0.offset))} is VALID [2020-07-29 02:04:43,538 INFO L280 TraceCheckUtils]: 3: Hoare triple {798#(and (= 1 (select |#valid| ULTIMATE.start_main_~a~0.base)) (= 0 ULTIMATE.start_main_~a~0.offset))} havoc main_~t~0.base, main_~t~0.offset;main_~p~0.base, main_~p~0.offset := main_~a~0.base, main_~a~0.offset;main_~i~0 := 0; {805#(and (= 0 ULTIMATE.start_main_~i~0) (<= ULTIMATE.start_main_~p~0.offset ULTIMATE.start_main_~a~0.offset) (= 1 (select |#valid| ULTIMATE.start_main_~a~0.base)) (= 0 ULTIMATE.start_main_~a~0.offset) (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base))} is VALID [2020-07-29 02:04:43,540 INFO L280 TraceCheckUtils]: 4: Hoare triple {805#(and (= 0 ULTIMATE.start_main_~i~0) (<= ULTIMATE.start_main_~p~0.offset ULTIMATE.start_main_~a~0.offset) (= 1 (select |#valid| ULTIMATE.start_main_~a~0.base)) (= 0 ULTIMATE.start_main_~a~0.offset) (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base))} assume !!(main_~i~0 < 30 && 0 != main_#t~nondet3);havoc main_#t~nondet3;call write~int(main_~i~0, main_~p~0.base, main_~p~0.offset, 4);call main_#t~malloc4.base, main_#t~malloc4.offset := #Ultimate.allocOnHeap(8);main_~t~0.base, main_~t~0.offset := main_#t~malloc4.base, main_#t~malloc4.offset; {809#(and (= (select (select |#memory_int| ULTIMATE.start_main_~p~0.base) ULTIMATE.start_main_~p~0.offset) ULTIMATE.start_main_~i~0) (= 0 ULTIMATE.start_main_~i~0) (not (= ULTIMATE.start_main_~t~0.base ULTIMATE.start_main_~a~0.base)) (<= ULTIMATE.start_main_~p~0.offset ULTIMATE.start_main_~a~0.offset) (<= 0 ULTIMATE.start_main_~p~0.offset) (= 0 ULTIMATE.start_main_~a~0.offset) (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base))} is VALID [2020-07-29 02:04:43,541 INFO L280 TraceCheckUtils]: 5: Hoare triple {809#(and (= (select (select |#memory_int| ULTIMATE.start_main_~p~0.base) ULTIMATE.start_main_~p~0.offset) ULTIMATE.start_main_~i~0) (= 0 ULTIMATE.start_main_~i~0) (not (= ULTIMATE.start_main_~t~0.base ULTIMATE.start_main_~a~0.base)) (<= ULTIMATE.start_main_~p~0.offset ULTIMATE.start_main_~a~0.offset) (<= 0 ULTIMATE.start_main_~p~0.offset) (= 0 ULTIMATE.start_main_~a~0.offset) (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base))} assume !(main_~t~0.base == 0 && main_~t~0.offset == 0); {809#(and (= (select (select |#memory_int| ULTIMATE.start_main_~p~0.base) ULTIMATE.start_main_~p~0.offset) ULTIMATE.start_main_~i~0) (= 0 ULTIMATE.start_main_~i~0) (not (= ULTIMATE.start_main_~t~0.base ULTIMATE.start_main_~a~0.base)) (<= ULTIMATE.start_main_~p~0.offset ULTIMATE.start_main_~a~0.offset) (<= 0 ULTIMATE.start_main_~p~0.offset) (= 0 ULTIMATE.start_main_~a~0.offset) (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base))} is VALID [2020-07-29 02:04:43,546 INFO L280 TraceCheckUtils]: 6: Hoare triple {809#(and (= (select (select |#memory_int| ULTIMATE.start_main_~p~0.base) ULTIMATE.start_main_~p~0.offset) ULTIMATE.start_main_~i~0) (= 0 ULTIMATE.start_main_~i~0) (not (= ULTIMATE.start_main_~t~0.base ULTIMATE.start_main_~a~0.base)) (<= ULTIMATE.start_main_~p~0.offset ULTIMATE.start_main_~a~0.offset) (<= 0 ULTIMATE.start_main_~p~0.offset) (= 0 ULTIMATE.start_main_~a~0.offset) (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base))} call write~$Pointer$(main_~t~0.base, main_~t~0.offset, main_~p~0.base, 4 + main_~p~0.offset, 4);call main_#t~mem5.base, main_#t~mem5.offset := read~$Pointer$(main_~p~0.base, 4 + main_~p~0.offset, 4);main_~p~0.base, main_~p~0.offset := main_#t~mem5.base, main_#t~mem5.offset;havoc main_#t~mem5.base, main_#t~mem5.offset;main_#t~post6 := main_~i~0;main_~i~0 := 1 + main_#t~post6;havoc main_#t~post6; {816#(and (<= 1 ULTIMATE.start_main_~i~0) (not (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base)) (exists ((v_ULTIMATE.start_main_~p~0.offset_65 Int)) (and (<= 0 v_ULTIMATE.start_main_~p~0.offset_65) (<= v_ULTIMATE.start_main_~p~0.offset_65 ULTIMATE.start_main_~a~0.offset) (= (select (select |#memory_int| ULTIMATE.start_main_~a~0.base) v_ULTIMATE.start_main_~p~0.offset_65) 0))) (= 0 ULTIMATE.start_main_~a~0.offset))} is VALID [2020-07-29 02:04:43,548 INFO L280 TraceCheckUtils]: 7: Hoare triple {816#(and (<= 1 ULTIMATE.start_main_~i~0) (not (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base)) (exists ((v_ULTIMATE.start_main_~p~0.offset_65 Int)) (and (<= 0 v_ULTIMATE.start_main_~p~0.offset_65) (<= v_ULTIMATE.start_main_~p~0.offset_65 ULTIMATE.start_main_~a~0.offset) (= (select (select |#memory_int| ULTIMATE.start_main_~a~0.base) v_ULTIMATE.start_main_~p~0.offset_65) 0))) (= 0 ULTIMATE.start_main_~a~0.offset))} assume !!(main_~i~0 < 30 && 0 != main_#t~nondet3);havoc main_#t~nondet3;call write~int(main_~i~0, main_~p~0.base, main_~p~0.offset, 4);call main_#t~malloc4.base, main_#t~malloc4.offset := #Ultimate.allocOnHeap(8);main_~t~0.base, main_~t~0.offset := main_#t~malloc4.base, main_#t~malloc4.offset; {820#(and (<= 1 ULTIMATE.start_main_~i~0) (= (select (select |#memory_int| ULTIMATE.start_main_~p~0.base) ULTIMATE.start_main_~p~0.offset) ULTIMATE.start_main_~i~0) (not (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base)) (= 0 ULTIMATE.start_main_~t~0.offset) (exists ((v_ULTIMATE.start_main_~p~0.offset_65 Int)) (and (<= 0 v_ULTIMATE.start_main_~p~0.offset_65) (<= v_ULTIMATE.start_main_~p~0.offset_65 ULTIMATE.start_main_~a~0.offset) (= (select (select |#memory_int| ULTIMATE.start_main_~a~0.base) v_ULTIMATE.start_main_~p~0.offset_65) 0))) (= 0 ULTIMATE.start_main_~a~0.offset))} is VALID [2020-07-29 02:04:43,549 INFO L280 TraceCheckUtils]: 8: Hoare triple {820#(and (<= 1 ULTIMATE.start_main_~i~0) (= (select (select |#memory_int| ULTIMATE.start_main_~p~0.base) ULTIMATE.start_main_~p~0.offset) ULTIMATE.start_main_~i~0) (not (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base)) (= 0 ULTIMATE.start_main_~t~0.offset) (exists ((v_ULTIMATE.start_main_~p~0.offset_65 Int)) (and (<= 0 v_ULTIMATE.start_main_~p~0.offset_65) (<= v_ULTIMATE.start_main_~p~0.offset_65 ULTIMATE.start_main_~a~0.offset) (= (select (select |#memory_int| ULTIMATE.start_main_~a~0.base) v_ULTIMATE.start_main_~p~0.offset_65) 0))) (= 0 ULTIMATE.start_main_~a~0.offset))} assume !(main_~t~0.base == 0 && main_~t~0.offset == 0); {820#(and (<= 1 ULTIMATE.start_main_~i~0) (= (select (select |#memory_int| ULTIMATE.start_main_~p~0.base) ULTIMATE.start_main_~p~0.offset) ULTIMATE.start_main_~i~0) (not (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base)) (= 0 ULTIMATE.start_main_~t~0.offset) (exists ((v_ULTIMATE.start_main_~p~0.offset_65 Int)) (and (<= 0 v_ULTIMATE.start_main_~p~0.offset_65) (<= v_ULTIMATE.start_main_~p~0.offset_65 ULTIMATE.start_main_~a~0.offset) (= (select (select |#memory_int| ULTIMATE.start_main_~a~0.base) v_ULTIMATE.start_main_~p~0.offset_65) 0))) (= 0 ULTIMATE.start_main_~a~0.offset))} is VALID [2020-07-29 02:04:43,552 INFO L280 TraceCheckUtils]: 9: Hoare triple {820#(and (<= 1 ULTIMATE.start_main_~i~0) (= (select (select |#memory_int| ULTIMATE.start_main_~p~0.base) ULTIMATE.start_main_~p~0.offset) ULTIMATE.start_main_~i~0) (not (= ULTIMATE.start_main_~a~0.base ULTIMATE.start_main_~p~0.base)) (= 0 ULTIMATE.start_main_~t~0.offset) (exists ((v_ULTIMATE.start_main_~p~0.offset_65 Int)) (and (<= 0 v_ULTIMATE.start_main_~p~0.offset_65) (<= v_ULTIMATE.start_main_~p~0.offset_65 ULTIMATE.start_main_~a~0.offset) (= (select (select |#memory_int| ULTIMATE.start_main_~a~0.base) v_ULTIMATE.start_main_~p~0.offset_65) 0))) (= 0 ULTIMATE.start_main_~a~0.offset))} call write~$Pointer$(main_~t~0.base, main_~t~0.offset, main_~p~0.base, 4 + main_~p~0.offset, 4);call main_#t~mem5.base, main_#t~mem5.offset := read~$Pointer$(main_~p~0.base, 4 + main_~p~0.offset, 4);main_~p~0.base, main_~p~0.offset := main_#t~mem5.base, main_#t~mem5.offset;havoc main_#t~mem5.base, main_#t~mem5.offset;main_#t~post6 := main_~i~0;main_~i~0 := 1 + main_#t~post6;havoc main_#t~post6; {827#(and (= 0 ULTIMATE.start_main_~p~0.offset) (exists ((v_ULTIMATE.start_main_~p~0.offset_66 Int) (v_ULTIMATE.start_main_~p~0.base_108 Int)) (and (<= (+ (select (select |#memory_int| v_ULTIMATE.start_main_~p~0.base_108) v_ULTIMATE.start_main_~p~0.offset_66) 1) ULTIMATE.start_main_~i~0) (not (= v_ULTIMATE.start_main_~p~0.base_108 ULTIMATE.start_main_~a~0.base)) (<= 1 (select (select |#memory_int| v_ULTIMATE.start_main_~p~0.base_108) v_ULTIMATE.start_main_~p~0.offset_66)))) (exists ((v_ULTIMATE.start_main_~p~0.offset_65 Int)) (and (<= 0 v_ULTIMATE.start_main_~p~0.offset_65) (<= v_ULTIMATE.start_main_~p~0.offset_65 ULTIMATE.start_main_~a~0.offset) (= (select (select |#memory_int| ULTIMATE.start_main_~a~0.base) v_ULTIMATE.start_main_~p~0.offset_65) 0))) (= 0 ULTIMATE.start_main_~a~0.offset))} is VALID [2020-07-29 02:04:43,553 INFO L280 TraceCheckUtils]: 10: Hoare triple {827#(and (= 0 ULTIMATE.start_main_~p~0.offset) (exists ((v_ULTIMATE.start_main_~p~0.offset_66 Int) (v_ULTIMATE.start_main_~p~0.base_108 Int)) (and (<= (+ (select (select |#memory_int| v_ULTIMATE.start_main_~p~0.base_108) v_ULTIMATE.start_main_~p~0.offset_66) 1) ULTIMATE.start_main_~i~0) (not (= v_ULTIMATE.start_main_~p~0.base_108 ULTIMATE.start_main_~a~0.base)) (<= 1 (select (select |#memory_int| v_ULTIMATE.start_main_~p~0.base_108) v_ULTIMATE.start_main_~p~0.offset_66)))) (exists ((v_ULTIMATE.start_main_~p~0.offset_65 Int)) (and (<= 0 v_ULTIMATE.start_main_~p~0.offset_65) (<= v_ULTIMATE.start_main_~p~0.offset_65 ULTIMATE.start_main_~a~0.offset) (= (select (select |#memory_int| ULTIMATE.start_main_~a~0.base) v_ULTIMATE.start_main_~p~0.offset_65) 0))) (= 0 ULTIMATE.start_main_~a~0.offset))} assume !(main_~i~0 < 30 && 0 != main_#t~nondet3);havoc main_#t~nondet3; {827#(and (= 0 ULTIMATE.start_main_~p~0.offset) (exists ((v_ULTIMATE.start_main_~p~0.offset_66 Int) (v_ULTIMATE.start_main_~p~0.base_108 Int)) (and (<= (+ (select (select |#memory_int| v_ULTIMATE.start_main_~p~0.base_108) v_ULTIMATE.start_main_~p~0.offset_66) 1) ULTIMATE.start_main_~i~0) (not (= v_ULTIMATE.start_main_~p~0.base_108 ULTIMATE.start_main_~a~0.base)) (<= 1 (select (select |#memory_int| v_ULTIMATE.start_main_~p~0.base_108) v_ULTIMATE.start_main_~p~0.offset_66)))) (exists ((v_ULTIMATE.start_main_~p~0.offset_65 Int)) (and (<= 0 v_ULTIMATE.start_main_~p~0.offset_65) (<= v_ULTIMATE.start_main_~p~0.offset_65 ULTIMATE.start_main_~a~0.offset) (= (select (select |#memory_int| ULTIMATE.start_main_~a~0.base) v_ULTIMATE.start_main_~p~0.offset_65) 0))) (= 0 ULTIMATE.start_main_~a~0.offset))} is VALID [2020-07-29 02:04:43,558 INFO L280 TraceCheckUtils]: 11: Hoare triple {827#(and (= 0 ULTIMATE.start_main_~p~0.offset) (exists ((v_ULTIMATE.start_main_~p~0.offset_66 Int) (v_ULTIMATE.start_main_~p~0.base_108 Int)) (and (<= (+ (select (select |#memory_int| v_ULTIMATE.start_main_~p~0.base_108) v_ULTIMATE.start_main_~p~0.offset_66) 1) ULTIMATE.start_main_~i~0) (not (= v_ULTIMATE.start_main_~p~0.base_108 ULTIMATE.start_main_~a~0.base)) (<= 1 (select (select |#memory_int| v_ULTIMATE.start_main_~p~0.base_108) v_ULTIMATE.start_main_~p~0.offset_66)))) (exists ((v_ULTIMATE.start_main_~p~0.offset_65 Int)) (and (<= 0 v_ULTIMATE.start_main_~p~0.offset_65) (<= v_ULTIMATE.start_main_~p~0.offset_65 ULTIMATE.start_main_~a~0.offset) (= (select (select |#memory_int| ULTIMATE.start_main_~a~0.base) v_ULTIMATE.start_main_~p~0.offset_65) 0))) (= 0 ULTIMATE.start_main_~a~0.offset))} call write~int(main_~i~0, main_~p~0.base, main_~p~0.offset, 4);call write~$Pointer$(0, 0, main_~p~0.base, 4 + main_~p~0.offset, 4);main_~p~0.base, main_~p~0.offset := main_~a~0.base, main_~a~0.offset;main_~i~0 := 0; {834#(and (<= ULTIMATE.start_main_~p~0.offset 0) (exists ((v_ULTIMATE.start_main_~p~0.offset_66 Int) (v_ULTIMATE.start_main_~p~0.offset_65 Int) (v_ULTIMATE.start_main_~p~0.base_108 Int) (v_ULTIMATE.start_main_~p~0.base_109 Int)) (and (<= 0 v_ULTIMATE.start_main_~p~0.offset_65) (or (and (<= (+ (select (select |#memory_int| v_ULTIMATE.start_main_~p~0.base_108) v_ULTIMATE.start_main_~p~0.offset_66) 1) (select (select |#memory_int| v_ULTIMATE.start_main_~p~0.base_109) 0)) (<= 1 (select (select |#memory_int| v_ULTIMATE.start_main_~p~0.base_108) v_ULTIMATE.start_main_~p~0.offset_66))) (and (= v_ULTIMATE.start_main_~p~0.base_109 v_ULTIMATE.start_main_~p~0.base_108) (<= 2 (select (select |#memory_int| v_ULTIMATE.start_main_~p~0.base_109) 0)) (= 4 v_ULTIMATE.start_main_~p~0.offset_66)) (and (= 0 v_ULTIMATE.start_main_~p~0.offset_66) (= v_ULTIMATE.start_main_~p~0.base_109 v_ULTIMATE.start_main_~p~0.base_108) (<= 2 (select (select |#memory_int| v_ULTIMATE.start_main_~p~0.base_109) 0)))) (<= v_ULTIMATE.start_main_~p~0.offset_65 0) (or (= 0 (select (select |#memory_int| ULTIMATE.start_main_~p~0.base) v_ULTIMATE.start_main_~p~0.offset_65)) (= v_ULTIMATE.start_main_~p~0.base_109 ULTIMATE.start_main_~p~0.base)) (not (= v_ULTIMATE.start_main_~p~0.base_108 ULTIMATE.start_main_~p~0.base)))))} is VALID [2020-07-29 02:04:43,560 INFO L280 TraceCheckUtils]: 12: Hoare triple {834#(and (<= ULTIMATE.start_main_~p~0.offset 0) (exists ((v_ULTIMATE.start_main_~p~0.offset_66 Int) (v_ULTIMATE.start_main_~p~0.offset_65 Int) (v_ULTIMATE.start_main_~p~0.base_108 Int) (v_ULTIMATE.start_main_~p~0.base_109 Int)) (and (<= 0 v_ULTIMATE.start_main_~p~0.offset_65) (or (and (<= (+ (select (select |#memory_int| v_ULTIMATE.start_main_~p~0.base_108) v_ULTIMATE.start_main_~p~0.offset_66) 1) (select (select |#memory_int| v_ULTIMATE.start_main_~p~0.base_109) 0)) (<= 1 (select (select |#memory_int| v_ULTIMATE.start_main_~p~0.base_108) v_ULTIMATE.start_main_~p~0.offset_66))) (and (= v_ULTIMATE.start_main_~p~0.base_109 v_ULTIMATE.start_main_~p~0.base_108) (<= 2 (select (select |#memory_int| v_ULTIMATE.start_main_~p~0.base_109) 0)) (= 4 v_ULTIMATE.start_main_~p~0.offset_66)) (and (= 0 v_ULTIMATE.start_main_~p~0.offset_66) (= v_ULTIMATE.start_main_~p~0.base_109 v_ULTIMATE.start_main_~p~0.base_108) (<= 2 (select (select |#memory_int| v_ULTIMATE.start_main_~p~0.base_109) 0)))) (<= v_ULTIMATE.start_main_~p~0.offset_65 0) (or (= 0 (select (select |#memory_int| ULTIMATE.start_main_~p~0.base) v_ULTIMATE.start_main_~p~0.offset_65)) (= v_ULTIMATE.start_main_~p~0.base_109 ULTIMATE.start_main_~p~0.base)) (not (= v_ULTIMATE.start_main_~p~0.base_108 ULTIMATE.start_main_~p~0.base)))))} assume !!(main_~p~0.base != 0 || main_~p~0.offset != 0);call main_#t~mem7 := read~int(main_~p~0.base, main_~p~0.offset, 4); {838#(or (<= 2 |ULTIMATE.start_main_#t~mem7|) (= 0 |ULTIMATE.start_main_#t~mem7|))} is VALID [2020-07-29 02:04:43,561 INFO L280 TraceCheckUtils]: 13: Hoare triple {838#(or (<= 2 |ULTIMATE.start_main_#t~mem7|) (= 0 |ULTIMATE.start_main_#t~mem7|))} assume !(1 != main_#t~mem7);havoc main_#t~mem7; {783#false} is VALID [2020-07-29 02:04:43,561 INFO L280 TraceCheckUtils]: 14: Hoare triple {783#false} call main_#t~mem8.base, main_#t~mem8.offset := read~$Pointer$(main_~p~0.base, 4 + main_~p~0.offset, 4);main_~p~0.base, main_~p~0.offset := main_#t~mem8.base, main_#t~mem8.offset;havoc main_#t~mem8.base, main_#t~mem8.offset;main_#t~post9 := main_~i~0;main_~i~0 := 1 + main_#t~post9;havoc main_#t~post9; {783#false} is VALID [2020-07-29 02:04:43,561 INFO L280 TraceCheckUtils]: 15: Hoare triple {783#false} assume !!(main_~p~0.base != 0 || main_~p~0.offset != 0);call main_#t~mem7 := read~int(main_~p~0.base, main_~p~0.offset, 4); {783#false} is VALID [2020-07-29 02:04:43,563 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 1 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 02:04:43,563 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2020-07-29 02:04:43,563 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 18 [2020-07-29 02:04:43,564 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1208245133] [2020-07-29 02:04:43,642 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-29 02:04:43,642 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2020-07-29 02:04:43,643 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=47, Invalid=258, Unknown=1, NotChecked=0, Total=306 [2020-07-29 02:04:43,643 INFO L87 Difference]: Start difference. First operand 18 states and 20 transitions. cyclomatic complexity: 5 Second operand 18 states. [2020-07-29 02:05:33,482 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 02:05:33,482 INFO L93 Difference]: Finished difference Result 14 states and 14 transitions. [2020-07-29 02:05:33,483 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2020-07-29 02:05:33,483 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states. [2020-07-29 02:05:33,589 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 29 edges. 29 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 02:05:33,590 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 14 states and 14 transitions. [2020-07-29 02:05:33,591 INFO L131 ngComponentsAnalysis]: Automaton has 0 accepting balls. 0 [2020-07-29 02:05:33,591 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 14 states to 0 states and 0 transitions. [2020-07-29 02:05:33,591 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 0 [2020-07-29 02:05:33,591 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 0 [2020-07-29 02:05:33,591 INFO L73 IsDeterministic]: Start isDeterministic. Operand 0 states and 0 transitions. [2020-07-29 02:05:33,591 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2020-07-29 02:05:33,591 INFO L688 BuchiCegarLoop]: Abstraction has 0 states and 0 transitions. [2020-07-29 02:05:33,592 INFO L711 BuchiCegarLoop]: Abstraction has 0 states and 0 transitions. [2020-07-29 02:05:33,592 INFO L591 BuchiCegarLoop]: Abstraction has 0 states and 0 transitions. [2020-07-29 02:05:33,592 INFO L424 BuchiCegarLoop]: ======== Iteration 8============ [2020-07-29 02:05:33,592 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 0 states and 0 transitions. [2020-07-29 02:05:33,592 INFO L131 ngComponentsAnalysis]: Automaton has 0 accepting balls. 0 [2020-07-29 02:05:33,592 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is true [2020-07-29 02:05:33,598 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer CFG 29.07 02:05:33 BoogieIcfgContainer [2020-07-29 02:05:33,598 INFO L132 PluginConnector]: ------------------------ END BuchiAutomizer---------------------------- [2020-07-29 02:05:33,598 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2020-07-29 02:05:33,598 INFO L271 PluginConnector]: Initializing Witness Printer... [2020-07-29 02:05:33,599 INFO L275 PluginConnector]: Witness Printer initialized [2020-07-29 02:05:33,599 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 29.07 02:04:32" (3/4) ... [2020-07-29 02:05:33,602 INFO L140 WitnessPrinter]: No result that supports witness generation found [2020-07-29 02:05:33,603 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2020-07-29 02:05:33,611 INFO L168 Benchmark]: Toolchain (without parser) took 62691.00 ms. Allocated memory was 1.0 GB in the beginning and 1.3 GB in the end (delta: 306.7 MB). Free memory was 957.6 MB in the beginning and 946.3 MB in the end (delta: 11.3 MB). Peak memory consumption was 318.0 MB. Max. memory is 11.5 GB. [2020-07-29 02:05:33,612 INFO L168 Benchmark]: CDTParser took 0.18 ms. Allocated memory is still 1.0 GB. Free memory is still 987.1 MB. There was no memory consumed. Max. memory is 11.5 GB. [2020-07-29 02:05:33,613 INFO L168 Benchmark]: CACSL2BoogieTranslator took 643.66 ms. Allocated memory was 1.0 GB in the beginning and 1.1 GB in the end (delta: 119.5 MB). Free memory was 957.6 MB in the beginning and 1.1 GB in the end (delta: -142.3 MB). Peak memory consumption was 26.3 MB. Max. memory is 11.5 GB. [2020-07-29 02:05:33,614 INFO L168 Benchmark]: Boogie Procedure Inliner took 51.97 ms. Allocated memory is still 1.1 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 6.8 MB). Peak memory consumption was 6.8 MB. Max. memory is 11.5 GB. [2020-07-29 02:05:33,615 INFO L168 Benchmark]: Boogie Preprocessor took 32.15 ms. Allocated memory is still 1.1 GB. Free memory is still 1.1 GB. There was no memory consumed. Max. memory is 11.5 GB. [2020-07-29 02:05:33,615 INFO L168 Benchmark]: RCFGBuilder took 571.33 ms. Allocated memory is still 1.1 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 32.6 MB). Peak memory consumption was 32.6 MB. Max. memory is 11.5 GB. [2020-07-29 02:05:33,615 INFO L168 Benchmark]: BuchiAutomizer took 61380.18 ms. Allocated memory was 1.1 GB in the beginning and 1.3 GB in the end (delta: 187.2 MB). Free memory was 1.1 GB in the beginning and 946.3 MB in the end (delta: 114.2 MB). Peak memory consumption was 301.3 MB. Max. memory is 11.5 GB. [2020-07-29 02:05:33,617 INFO L168 Benchmark]: Witness Printer took 4.39 ms. Allocated memory is still 1.3 GB. Free memory is still 946.3 MB. There was no memory consumed. Max. memory is 11.5 GB. [2020-07-29 02:05:33,625 INFO L336 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.18 ms. Allocated memory is still 1.0 GB. Free memory is still 987.1 MB. There was no memory consumed. Max. memory is 11.5 GB. * CACSL2BoogieTranslator took 643.66 ms. Allocated memory was 1.0 GB in the beginning and 1.1 GB in the end (delta: 119.5 MB). Free memory was 957.6 MB in the beginning and 1.1 GB in the end (delta: -142.3 MB). Peak memory consumption was 26.3 MB. Max. memory is 11.5 GB. * Boogie Procedure Inliner took 51.97 ms. Allocated memory is still 1.1 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 6.8 MB). Peak memory consumption was 6.8 MB. Max. memory is 11.5 GB. * Boogie Preprocessor took 32.15 ms. Allocated memory is still 1.1 GB. Free memory is still 1.1 GB. There was no memory consumed. Max. memory is 11.5 GB. * RCFGBuilder took 571.33 ms. Allocated memory is still 1.1 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 32.6 MB). Peak memory consumption was 32.6 MB. Max. memory is 11.5 GB. * BuchiAutomizer took 61380.18 ms. Allocated memory was 1.1 GB in the beginning and 1.3 GB in the end (delta: 187.2 MB). Free memory was 1.1 GB in the beginning and 946.3 MB in the end (delta: 114.2 MB). Peak memory consumption was 301.3 MB. Max. memory is 11.5 GB. * Witness Printer took 4.39 ms. Allocated memory is still 1.3 GB. Free memory is still 946.3 MB. There was no memory consumed. Max. memory is 11.5 GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: Constructed decomposition of program Your program was decomposed into 7 terminating modules (6 trivial, 1 deterministic, 0 nondeterministic). One deterministic module has affine ranking function -2 * i + 59 and consists of 4 locations. 6 modules have a trivial ranking function, the largest among these consists of 18 locations. - StatisticsResult: Timing statistics BüchiAutomizer plugin needed 61.3s and 8 iterations. TraceHistogramMax:2. Analysis of lassos took 9.3s. Construction of modules took 24.9s. Büchi inclusion checks took 26.7s. Highest rank in rank-based complementation 3. Minimization of det autom 5. Minimization of nondet autom 2. Automata minimization 0.0s AutomataMinimizationTime, 6 MinimizatonAttempts, 23 StatesRemovedByMinimization, 4 NontrivialMinimizations. Non-live state removal took 0.0s Buchi closure took 0.0s. Biggest automaton had 18 states and ocurred in iteration 3. Nontrivial modules had stage [1, 0, 0, 0, 0]. InterpolantCoveringCapabilityFinite: 0/0 InterpolantCoveringCapabilityBuchi: 0/0 HoareTripleCheckerStatistics: 66 SDtfs, 150 SDslu, 72 SDs, 0 SdLazy, 320 SolverSat, 60 SolverUnsat, 2 SolverUnknown, 0 SolverNotchecked, 24.9s Time LassoAnalysisResults: nont0 unkn0 SFLI0 SFLT0 conc3 concLT0 SILN2 SILU1 SILI0 SILT0 lasso1 LassoPreprocessingBenchmarks: Lassos: inital191 mio100 ax109 hnf100 lsp86 ukn51 mio100 lsp33 div100 bol100 ite100 ukn100 eq177 hnf92 smp100 dnf172 smp93 tf100 neg95 sie120 LassoTerminationAnalysisBenchmarks: ConstraintsSatisfiability: unsat Degree: 0 Time: 13ms VariablesStem: 1 VariablesLoop: 0 DisjunctsStem: 1 DisjunctsLoop: 1 SupportingInvariants: 2 MotzkinApplications: 6 LassoTerminationAnalysisBenchmarks: LassoNonterminationAnalysisSatFixpoint: 0 LassoNonterminationAnalysisSatUnbounded: 0 LassoNonterminationAnalysisUnsat: 0 LassoNonterminationAnalysisUnknown: 0 LassoNonterminationAnalysisTime: 0.0s - TerminationAnalysisResult: Termination proven Buchi Automizer proved that your program is terminating RESULT: Ultimate proved your program to be correct! Received shutdown request...