/usr/bin/java -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data -tc ../../../trunk/examples/toolchains/BuchiAutomizerCInline.xml -s ../../../trunk/examples/settings/buchiAutomizer/concurrent-automaton-syntacticLbe.epf -i ../../../trunk/examples/svcomp/pthread-nondet/nondet-array-2.i -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-0d686a6 [2022-07-26 14:08:13,645 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-07-26 14:08:13,650 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-07-26 14:08:13,671 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-07-26 14:08:13,671 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-07-26 14:08:13,672 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-07-26 14:08:13,673 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-07-26 14:08:13,674 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-07-26 14:08:13,675 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-07-26 14:08:13,675 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-07-26 14:08:13,676 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-07-26 14:08:13,677 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-07-26 14:08:13,677 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-07-26 14:08:13,678 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-07-26 14:08:13,678 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-07-26 14:08:13,679 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-07-26 14:08:13,679 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-07-26 14:08:13,680 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-07-26 14:08:13,681 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-07-26 14:08:13,682 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-07-26 14:08:13,683 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-07-26 14:08:13,683 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-07-26 14:08:13,684 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-07-26 14:08:13,685 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-07-26 14:08:13,685 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-07-26 14:08:13,687 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-07-26 14:08:13,687 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-07-26 14:08:13,687 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-07-26 14:08:13,688 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-07-26 14:08:13,688 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-07-26 14:08:13,688 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-07-26 14:08:13,689 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-07-26 14:08:13,689 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-07-26 14:08:13,689 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-07-26 14:08:13,690 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-07-26 14:08:13,690 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-07-26 14:08:13,691 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-07-26 14:08:13,691 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-07-26 14:08:13,691 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-07-26 14:08:13,691 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-07-26 14:08:13,692 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-07-26 14:08:13,709 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-07-26 14:08:13,710 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/buchiAutomizer/concurrent-automaton-syntacticLbe.epf [2022-07-26 14:08:13,731 INFO L113 SettingsManager]: Loading preferences was successful [2022-07-26 14:08:13,731 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-07-26 14:08:13,731 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-07-26 14:08:13,731 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-07-26 14:08:13,732 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-07-26 14:08:13,732 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-07-26 14:08:13,732 INFO L138 SettingsManager]: * Use SBE=true [2022-07-26 14:08:13,732 INFO L136 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2022-07-26 14:08:13,732 INFO L138 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2022-07-26 14:08:13,732 INFO L138 SettingsManager]: * Use old map elimination=false [2022-07-26 14:08:13,732 INFO L138 SettingsManager]: * Use external solver (rank synthesis)=false [2022-07-26 14:08:13,732 INFO L138 SettingsManager]: * Use only trivial implications for array writes=true [2022-07-26 14:08:13,732 INFO L138 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2022-07-26 14:08:13,732 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-07-26 14:08:13,733 INFO L138 SettingsManager]: * sizeof long=4 [2022-07-26 14:08:13,733 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-07-26 14:08:13,733 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-07-26 14:08:13,733 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-07-26 14:08:13,733 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-07-26 14:08:13,733 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2022-07-26 14:08:13,733 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2022-07-26 14:08:13,733 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2022-07-26 14:08:13,733 INFO L138 SettingsManager]: * sizeof long double=12 [2022-07-26 14:08:13,733 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-07-26 14:08:13,733 INFO L138 SettingsManager]: * Assume nondeterminstic values are in range=false [2022-07-26 14:08:13,733 INFO L138 SettingsManager]: * Use constant arrays=true [2022-07-26 14:08:13,734 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2022-07-26 14:08:13,736 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-07-26 14:08:13,736 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-07-26 14:08:13,736 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-07-26 14:08:13,736 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-07-26 14:08:13,736 INFO L138 SettingsManager]: * Independence relation used for large block encoding in concurrent analysis=SYNTACTIC [2022-07-26 14:08:13,737 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-07-26 14:08:13,737 INFO L138 SettingsManager]: * TransformationType=MODULO_NEIGHBOR WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release [2022-07-26 14:08:13,896 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-07-26 14:08:13,911 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-07-26 14:08:13,913 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-07-26 14:08:13,913 INFO L271 PluginConnector]: Initializing CDTParser... [2022-07-26 14:08:13,916 INFO L275 PluginConnector]: CDTParser initialized [2022-07-26 14:08:13,917 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/pthread-nondet/nondet-array-2.i [2022-07-26 14:08:13,967 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/0216fd3cb/d5df4d2b384e4de28991729d9b2d4291/FLAGf3b6d179e [2022-07-26 14:08:14,351 INFO L306 CDTParser]: Found 1 translation units. [2022-07-26 14:08:14,351 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/pthread-nondet/nondet-array-2.i [2022-07-26 14:08:14,380 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/0216fd3cb/d5df4d2b384e4de28991729d9b2d4291/FLAGf3b6d179e [2022-07-26 14:08:14,389 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/0216fd3cb/d5df4d2b384e4de28991729d9b2d4291 [2022-07-26 14:08:14,391 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-07-26 14:08:14,391 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-07-26 14:08:14,392 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-07-26 14:08:14,393 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-07-26 14:08:14,395 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-07-26 14:08:14,395 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 26.07 02:08:14" (1/1) ... [2022-07-26 14:08:14,396 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2aa0dab7 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.07 02:08:14, skipping insertion in model container [2022-07-26 14:08:14,396 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 26.07 02:08:14" (1/1) ... [2022-07-26 14:08:14,400 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-07-26 14:08:14,426 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-07-26 14:08:14,665 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/pthread-nondet/nondet-array-2.i[30035,30048] [2022-07-26 14:08:14,678 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-07-26 14:08:14,685 INFO L203 MainTranslator]: Completed pre-run [2022-07-26 14:08:14,722 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/pthread-nondet/nondet-array-2.i[30035,30048] [2022-07-26 14:08:14,726 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-07-26 14:08:14,752 INFO L208 MainTranslator]: Completed translation [2022-07-26 14:08:14,753 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.07 02:08:14 WrapperNode [2022-07-26 14:08:14,753 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-07-26 14:08:14,754 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-07-26 14:08:14,754 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-07-26 14:08:14,754 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-07-26 14:08:14,759 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.07 02:08:14" (1/1) ... [2022-07-26 14:08:14,783 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.07 02:08:14" (1/1) ... [2022-07-26 14:08:14,801 INFO L137 Inliner]: procedures = 170, calls = 18, calls flagged for inlining = 4, calls inlined = 4, statements flattened = 73 [2022-07-26 14:08:14,802 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-07-26 14:08:14,802 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-07-26 14:08:14,802 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-07-26 14:08:14,802 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-07-26 14:08:14,807 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.07 02:08:14" (1/1) ... [2022-07-26 14:08:14,807 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.07 02:08:14" (1/1) ... [2022-07-26 14:08:14,815 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.07 02:08:14" (1/1) ... [2022-07-26 14:08:14,816 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.07 02:08:14" (1/1) ... [2022-07-26 14:08:14,820 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.07 02:08:14" (1/1) ... [2022-07-26 14:08:14,822 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.07 02:08:14" (1/1) ... [2022-07-26 14:08:14,823 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.07 02:08:14" (1/1) ... [2022-07-26 14:08:14,825 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-07-26 14:08:14,835 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-07-26 14:08:14,836 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-07-26 14:08:14,836 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-07-26 14:08:14,837 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.07 02:08:14" (1/1) ... [2022-07-26 14:08:14,841 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-26 14:08:14,850 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-26 14:08:14,859 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-26 14:08:14,863 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (1)] Waiting until timeout for monitored process [2022-07-26 14:08:14,889 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int [2022-07-26 14:08:14,890 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-07-26 14:08:14,890 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-07-26 14:08:14,890 INFO L130 BoogieDeclarations]: Found specification of procedure thr [2022-07-26 14:08:14,890 INFO L138 BoogieDeclarations]: Found implementation of procedure thr [2022-07-26 14:08:14,890 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-07-26 14:08:14,890 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-07-26 14:08:14,890 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-07-26 14:08:14,890 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-07-26 14:08:14,890 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-07-26 14:08:14,890 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-07-26 14:08:14,891 WARN L208 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to SingleStatement [2022-07-26 14:08:14,962 INFO L234 CfgBuilder]: Building ICFG [2022-07-26 14:08:14,963 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-07-26 14:08:15,121 INFO L275 CfgBuilder]: Performing block encoding [2022-07-26 14:08:15,126 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-07-26 14:08:15,126 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-07-26 14:08:15,128 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 26.07 02:08:15 BoogieIcfgContainer [2022-07-26 14:08:15,128 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-07-26 14:08:15,129 INFO L113 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2022-07-26 14:08:15,129 INFO L271 PluginConnector]: Initializing BuchiAutomizer... [2022-07-26 14:08:15,132 INFO L275 PluginConnector]: BuchiAutomizer initialized [2022-07-26 14:08:15,132 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2022-07-26 14:08:15,132 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "CDTParser AST 26.07 02:08:14" (1/3) ... [2022-07-26 14:08:15,133 INFO L205 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@590e32ee and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 26.07 02:08:15, skipping insertion in model container [2022-07-26 14:08:15,133 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2022-07-26 14:08:15,134 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.07 02:08:14" (2/3) ... [2022-07-26 14:08:15,134 INFO L205 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@590e32ee and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 26.07 02:08:15, skipping insertion in model container [2022-07-26 14:08:15,134 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2022-07-26 14:08:15,134 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 26.07 02:08:15" (3/3) ... [2022-07-26 14:08:15,135 INFO L322 chiAutomizerObserver]: Analyzing ICFG nondet-array-2.i [2022-07-26 14:08:15,199 INFO L144 ThreadInstanceAdder]: Constructed 1 joinOtherThreadTransitions. [2022-07-26 14:08:15,218 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 83 places, 88 transitions, 184 flow [2022-07-26 14:08:15,245 INFO L129 PetriNetUnfolder]: 13/125 cut-off events. [2022-07-26 14:08:15,245 INFO L130 PetriNetUnfolder]: For 1/1 co-relation queries the response was YES. [2022-07-26 14:08:15,247 INFO L84 FinitePrefix]: Finished finitePrefix Result has 131 conditions, 125 events. 13/125 cut-off events. For 1/1 co-relation queries the response was YES. Maximal size of possible extension queue 5. Compared 215 event pairs, 0 based on Foata normal form. 0/110 useless extension candidates. Maximal degree in co-relation 70. Up to 4 conditions per place. [2022-07-26 14:08:15,247 INFO L82 GeneralOperation]: Start removeDead. Operand has 83 places, 88 transitions, 184 flow [2022-07-26 14:08:15,251 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 83 places, 88 transitions, 184 flow [2022-07-26 14:08:15,254 INFO L124 etLargeBlockEncoding]: Petri net LBE is using variable-based independence relation. [2022-07-26 14:08:15,259 INFO L131 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 83 places, 88 transitions, 184 flow [2022-07-26 14:08:15,261 INFO L110 LiptonReduction]: Starting Lipton reduction on Petri net that has 83 places, 88 transitions, 184 flow [2022-07-26 14:08:15,261 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 83 places, 88 transitions, 184 flow [2022-07-26 14:08:15,296 INFO L129 PetriNetUnfolder]: 13/125 cut-off events. [2022-07-26 14:08:15,296 INFO L130 PetriNetUnfolder]: For 1/1 co-relation queries the response was YES. [2022-07-26 14:08:15,297 INFO L84 FinitePrefix]: Finished finitePrefix Result has 131 conditions, 125 events. 13/125 cut-off events. For 1/1 co-relation queries the response was YES. Maximal size of possible extension queue 6. Compared 213 event pairs, 0 based on Foata normal form. 0/110 useless extension candidates. Maximal degree in co-relation 70. Up to 4 conditions per place. [2022-07-26 14:08:15,298 INFO L116 LiptonReduction]: Number of co-enabled transitions 440 [2022-07-26 14:08:17,332 INFO L131 LiptonReduction]: Checked pairs total: 443 [2022-07-26 14:08:17,332 INFO L133 LiptonReduction]: Total number of compositions: 86 [2022-07-26 14:08:17,343 INFO L301 stractBuchiCegarLoop]: Interprodecural is true [2022-07-26 14:08:17,343 INFO L302 stractBuchiCegarLoop]: Hoare is false [2022-07-26 14:08:17,343 INFO L303 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2022-07-26 14:08:17,344 INFO L304 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2022-07-26 14:08:17,344 INFO L305 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2022-07-26 14:08:17,344 INFO L306 stractBuchiCegarLoop]: Difference is false [2022-07-26 14:08:17,344 INFO L307 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2022-07-26 14:08:17,344 INFO L311 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2022-07-26 14:08:17,345 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 0 states, but on-demand construction may add more states [2022-07-26 14:08:17,371 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 5 [2022-07-26 14:08:17,371 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 14:08:17,371 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 14:08:17,375 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2022-07-26 14:08:17,375 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 14:08:17,375 INFO L333 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2022-07-26 14:08:17,375 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 23 states, but on-demand construction may add more states [2022-07-26 14:08:17,376 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 5 [2022-07-26 14:08:17,376 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 14:08:17,376 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 14:08:17,377 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2022-07-26 14:08:17,377 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 14:08:17,381 INFO L733 eck$LassoCheckResult]: Stem: 86#[ULTIMATE.startENTRY]don't care [303] ULTIMATE.startENTRY-->L702-6: Formula: (let ((.cse0 (select |v_#memory_int_74| 1))) (and (= (select .cse0 0) 48) (= (select |v_#valid_84| 0) 0) (= |v_#NULL.base_10| 0) (= (store |v_#length_59| |v_ULTIMATE.start_main_~#t~1#1.base_45| 40) |v_#length_58|) (= |v_ULTIMATE.start_#in~argv#1.base_12| |v_ULTIMATE.start_main_#in~argv#1.base_15|) (= |v_#memory_int_73| (store |v_#memory_int_74| |v_~#a~0.base_32| (store ((as const (Array Int Int)) 0) |v_~#a~0.offset_29| 0))) (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_25| |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_21|) (= 2 (select |v_#length_59| 1)) (= |v_ULTIMATE.start_main_~i~0#1_115| 0) (= |v_ULTIMATE.start_main_~n~0#1_62| (let ((.cse1 (mod |v_ULTIMATE.start_main_#t~nondet3#1_27| 4294967296))) (ite (<= .cse1 2147483647) .cse1 (+ (- 4294967296) .cse1)))) (= (select |v_#valid_84| 1) 1) (= |v_ULTIMATE.start_#in~argc#1_12| |v_ULTIMATE.start_main_#in~argc#1_15|) (= |v_#valid_83| (store |v_#valid_84| |v_ULTIMATE.start_main_~#t~1#1.base_45| 1)) (= (select .cse0 1) 0) (= (select |v_#valid_84| |v_ULTIMATE.start_main_~#t~1#1.base_45|) 0) (= |v_~#a~0.base_32| 3) (= |v_ULTIMATE.start_main_#in~argv#1.offset_15| |v_ULTIMATE.start_#in~argv#1.offset_12|) (= v_~x~0_22 0) (= (ite (and (<= |v_ULTIMATE.start_main_~n~0#1_62| 10) (<= 5 |v_ULTIMATE.start_main_~n~0#1_62|)) 1 0) |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_21|) (= (select |v_#valid_84| 2) 1) (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_25| 0)) (= |v_ULTIMATE.start_main_#in~argv#1.offset_15| |v_ULTIMATE.start_main_~argv#1.offset_17|) (< 0 |v_#StackHeapBarrier_19|) (= 40 (select |v_#length_59| 3)) (= |v_~#a~0.offset_29| 0) (= |v_ULTIMATE.start_main_~argc#1_17| |v_ULTIMATE.start_main_#in~argc#1_15|) (= |v_#NULL.offset_10| 0) (= |v_ULTIMATE.start_main_~#t~1#1.offset_37| 0) (= |v_ULTIMATE.start_main_#in~argv#1.base_15| |v_ULTIMATE.start_main_~argv#1.base_17|) (= (select |v_#length_59| 2) 9) (< |v_#StackHeapBarrier_19| |v_ULTIMATE.start_main_~#t~1#1.base_45|) (= (select |v_#valid_84| 3) 1))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_12|, #StackHeapBarrier=|v_#StackHeapBarrier_19|, #valid=|v_#valid_84|, #memory_int=|v_#memory_int_74|, #length=|v_#length_59|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_12|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_12|} OutVars{ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_37|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_22|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_45|, #NULL.offset=|v_#NULL.offset_10|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_17|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_17|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_12|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_115|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_15|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_44|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_62|, ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_25|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_27|, #length=|v_#length_58|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_23|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_12|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_12|, ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_17|, ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_28|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_17|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_15|, ~#a~0.base=|v_~#a~0.base_32|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_27|, #NULL.base=|v_#NULL.base_10|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_27|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_15|, #StackHeapBarrier=|v_#StackHeapBarrier_19|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_26|, #valid=|v_#valid_83|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_23|, #memory_int=|v_#memory_int_73|, ~#a~0.offset=|v_~#a~0.offset_29|, ~x~0=v_~x~0_22, ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_21|} AuxVars[|v_ULTIMATE.start_main_#t~nondet3#1_27|] AssignedVars[ULTIMATE.start_main_~#t~1#1.offset, ULTIMATE.start_main_#t~mem8#1, ULTIMATE.start_main_~#t~1#1.base, #NULL.offset, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_~sum~0#1, ULTIMATE.start_main_~n~0#1, ULTIMATE.start_assume_abort_if_not_~cond#1, ULTIMATE.start_main_#t~post9#1, #length, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#res#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#in~argv#1.offset, ~#a~0.base, ULTIMATE.start_main_#t~mem10#1, #NULL.base, ULTIMATE.start_main_#t~pre5#1, ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#t~nondet3#1, #valid, ULTIMATE.start_main_#t~post7#1, #memory_int, ~#a~0.offset, ~x~0, ULTIMATE.start_assume_abort_if_not_#in~cond#1] 89#[L702-6]don't care [259] L702-6-->L705-5: Formula: (and (= |v_ULTIMATE.start_main_~i~0#1_Out_2| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_In_5| |v_ULTIMATE.start_main_~n~0#1_In_5|))) InVars {ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_In_5|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_In_5|} OutVars{ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_In_5|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_Out_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] 93#[L705-5]don't care [274] L705-5-->L709-6: Formula: (and (not (< |v_ULTIMATE.start_main_~i~0#1_66| |v_ULTIMATE.start_main_~n~0#1_30|)) (= |v_ULTIMATE.start_main_~sum~0#1_20| 0) (= |v_ULTIMATE.start_main_~i~0#1_65| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_66|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_30|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_65|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_20|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_30|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1] 99#[L709-6]don't care [2022-07-26 14:08:17,381 INFO L735 eck$LassoCheckResult]: Loop: 99#[L709-6]don't care [291] L709-6-->L709-6: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_94| 4))) (let ((.cse0 (+ |v_~#a~0.offset_25| .cse1))) (and (= (+ |v_ULTIMATE.start_main_~sum~0#1_31| (select (select |v_#memory_int_67| |v_~#a~0.base_28|) .cse0)) |v_ULTIMATE.start_main_~sum~0#1_30|) (<= (+ |v_~#a~0.offset_25| .cse1 4) (select |v_#length_46| |v_~#a~0.base_28|)) (= (select |v_#valid_57| |v_~#a~0.base_28|) 1) (< |v_ULTIMATE.start_main_~i~0#1_94| |v_ULTIMATE.start_main_~n~0#1_44|) (<= 0 .cse0) (= |v_ULTIMATE.start_main_~i~0#1_93| (+ |v_ULTIMATE.start_main_~i~0#1_94| 1))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_94|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_31|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_44|, #valid=|v_#valid_57|, #memory_int=|v_#memory_int_67|, ~#a~0.base=|v_~#a~0.base_28|, ~#a~0.offset=|v_~#a~0.offset_25|, #length=|v_#length_46|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_93|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_30|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_44|, #valid=|v_#valid_57|, #memory_int=|v_#memory_int_67|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_21|, ~#a~0.base=|v_~#a~0.base_28|, ~#a~0.offset=|v_~#a~0.offset_25|, #length=|v_#length_46|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_19|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1, ULTIMATE.start_main_#t~post9#1, ULTIMATE.start_main_#t~mem10#1] 99#[L709-6]don't care [2022-07-26 14:08:17,384 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:17,385 INFO L85 PathProgramCache]: Analyzing trace with hash 329277, now seen corresponding path program 1 times [2022-07-26 14:08:17,390 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:17,390 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1784276762] [2022-07-26 14:08:17,390 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:17,391 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:17,485 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-26 14:08:17,555 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-26 14:08:17,555 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-26 14:08:17,555 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1784276762] [2022-07-26 14:08:17,556 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1784276762] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-26 14:08:17,556 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-26 14:08:17,556 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-07-26 14:08:17,557 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1758735147] [2022-07-26 14:08:17,558 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-26 14:08:17,561 INFO L738 eck$LassoCheckResult]: stem already infeasible [2022-07-26 14:08:17,564 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:17,564 INFO L85 PathProgramCache]: Analyzing trace with hash 322, now seen corresponding path program 1 times [2022-07-26 14:08:17,564 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:17,564 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [836846743] [2022-07-26 14:08:17,564 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:17,564 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:17,584 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:17,584 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 14:08:17,587 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:17,597 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 14:08:17,642 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-26 14:08:17,661 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-07-26 14:08:17,661 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-07-26 14:08:17,662 INFO L87 Difference]: Start difference. First operand currently 23 states, but on-demand construction may add more states Second operand has 3 states, 3 states have (on average 1.0) internal successors, (3), 2 states have internal predecessors, (3), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-26 14:08:17,688 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-26 14:08:17,688 INFO L93 Difference]: Finished difference Result 24 states and 35 transitions. [2022-07-26 14:08:17,689 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 24 states and 35 transitions. [2022-07-26 14:08:17,690 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 5 [2022-07-26 14:08:17,692 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 24 states to 20 states and 30 transitions. [2022-07-26 14:08:17,693 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 20 [2022-07-26 14:08:17,693 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 20 [2022-07-26 14:08:17,693 INFO L73 IsDeterministic]: Start isDeterministic. Operand 20 states and 30 transitions. [2022-07-26 14:08:17,693 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-26 14:08:17,693 INFO L220 hiAutomatonCegarLoop]: Abstraction has 20 states and 30 transitions. [2022-07-26 14:08:17,703 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 20 states and 30 transitions. [2022-07-26 14:08:17,708 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 20 to 20. [2022-07-26 14:08:17,709 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 20 states have (on average 1.5) internal successors, (30), 19 states have internal predecessors, (30), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-26 14:08:17,710 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 30 transitions. [2022-07-26 14:08:17,710 INFO L242 hiAutomatonCegarLoop]: Abstraction has 20 states and 30 transitions. [2022-07-26 14:08:17,713 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-07-26 14:08:17,717 INFO L426 stractBuchiCegarLoop]: Abstraction has 20 states and 30 transitions. [2022-07-26 14:08:17,717 INFO L333 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2022-07-26 14:08:17,718 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 20 states and 30 transitions. [2022-07-26 14:08:17,723 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 5 [2022-07-26 14:08:17,723 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 14:08:17,723 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 14:08:17,724 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [2, 1, 1, 1, 1] [2022-07-26 14:08:17,726 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 14:08:17,729 INFO L733 eck$LassoCheckResult]: Stem: 175#[ULTIMATE.startENTRY]don't care [303] ULTIMATE.startENTRY-->L702-6: Formula: (let ((.cse0 (select |v_#memory_int_74| 1))) (and (= (select .cse0 0) 48) (= (select |v_#valid_84| 0) 0) (= |v_#NULL.base_10| 0) (= (store |v_#length_59| |v_ULTIMATE.start_main_~#t~1#1.base_45| 40) |v_#length_58|) (= |v_ULTIMATE.start_#in~argv#1.base_12| |v_ULTIMATE.start_main_#in~argv#1.base_15|) (= |v_#memory_int_73| (store |v_#memory_int_74| |v_~#a~0.base_32| (store ((as const (Array Int Int)) 0) |v_~#a~0.offset_29| 0))) (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_25| |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_21|) (= 2 (select |v_#length_59| 1)) (= |v_ULTIMATE.start_main_~i~0#1_115| 0) (= |v_ULTIMATE.start_main_~n~0#1_62| (let ((.cse1 (mod |v_ULTIMATE.start_main_#t~nondet3#1_27| 4294967296))) (ite (<= .cse1 2147483647) .cse1 (+ (- 4294967296) .cse1)))) (= (select |v_#valid_84| 1) 1) (= |v_ULTIMATE.start_#in~argc#1_12| |v_ULTIMATE.start_main_#in~argc#1_15|) (= |v_#valid_83| (store |v_#valid_84| |v_ULTIMATE.start_main_~#t~1#1.base_45| 1)) (= (select .cse0 1) 0) (= (select |v_#valid_84| |v_ULTIMATE.start_main_~#t~1#1.base_45|) 0) (= |v_~#a~0.base_32| 3) (= |v_ULTIMATE.start_main_#in~argv#1.offset_15| |v_ULTIMATE.start_#in~argv#1.offset_12|) (= v_~x~0_22 0) (= (ite (and (<= |v_ULTIMATE.start_main_~n~0#1_62| 10) (<= 5 |v_ULTIMATE.start_main_~n~0#1_62|)) 1 0) |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_21|) (= (select |v_#valid_84| 2) 1) (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_25| 0)) (= |v_ULTIMATE.start_main_#in~argv#1.offset_15| |v_ULTIMATE.start_main_~argv#1.offset_17|) (< 0 |v_#StackHeapBarrier_19|) (= 40 (select |v_#length_59| 3)) (= |v_~#a~0.offset_29| 0) (= |v_ULTIMATE.start_main_~argc#1_17| |v_ULTIMATE.start_main_#in~argc#1_15|) (= |v_#NULL.offset_10| 0) (= |v_ULTIMATE.start_main_~#t~1#1.offset_37| 0) (= |v_ULTIMATE.start_main_#in~argv#1.base_15| |v_ULTIMATE.start_main_~argv#1.base_17|) (= (select |v_#length_59| 2) 9) (< |v_#StackHeapBarrier_19| |v_ULTIMATE.start_main_~#t~1#1.base_45|) (= (select |v_#valid_84| 3) 1))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_12|, #StackHeapBarrier=|v_#StackHeapBarrier_19|, #valid=|v_#valid_84|, #memory_int=|v_#memory_int_74|, #length=|v_#length_59|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_12|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_12|} OutVars{ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_37|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_22|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_45|, #NULL.offset=|v_#NULL.offset_10|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_17|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_17|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_12|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_115|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_15|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_44|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_62|, ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_25|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_27|, #length=|v_#length_58|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_23|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_12|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_12|, ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_17|, ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_28|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_17|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_15|, ~#a~0.base=|v_~#a~0.base_32|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_27|, #NULL.base=|v_#NULL.base_10|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_27|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_15|, #StackHeapBarrier=|v_#StackHeapBarrier_19|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_26|, #valid=|v_#valid_83|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_23|, #memory_int=|v_#memory_int_73|, ~#a~0.offset=|v_~#a~0.offset_29|, ~x~0=v_~x~0_22, ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_21|} AuxVars[|v_ULTIMATE.start_main_#t~nondet3#1_27|] AssignedVars[ULTIMATE.start_main_~#t~1#1.offset, ULTIMATE.start_main_#t~mem8#1, ULTIMATE.start_main_~#t~1#1.base, #NULL.offset, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_~sum~0#1, ULTIMATE.start_main_~n~0#1, ULTIMATE.start_assume_abort_if_not_~cond#1, ULTIMATE.start_main_#t~post9#1, #length, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#res#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#in~argv#1.offset, ~#a~0.base, ULTIMATE.start_main_#t~mem10#1, #NULL.base, ULTIMATE.start_main_#t~pre5#1, ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#t~nondet3#1, #valid, ULTIMATE.start_main_#t~post7#1, #memory_int, ~#a~0.offset, ~x~0, ULTIMATE.start_assume_abort_if_not_#in~cond#1] 177#[L702-6]don't care [288] L702-6-->L703-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_87| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~1#1.offset_25| .cse0))) (and (< |v_ULTIMATE.start_main_~i~0#1_87| |v_ULTIMATE.start_main_~n~0#1_42|) (= |v_#pthreadsForks_12| (+ |v_#pthreadsForks_13| 1)) (<= (+ |v_ULTIMATE.start_main_~#t~1#1.offset_25| .cse0 4) (select |v_#length_42| |v_ULTIMATE.start_main_~#t~1#1.base_27|)) (= (select |v_#valid_53| |v_ULTIMATE.start_main_~#t~1#1.base_27|) 1) (<= 0 .cse1) (= |v_#memory_int_61| (store |v_#memory_int_62| |v_ULTIMATE.start_main_~#t~1#1.base_27| (store (select |v_#memory_int_62| |v_ULTIMATE.start_main_~#t~1#1.base_27|) .cse1 |v_ULTIMATE.start_main_#t~pre5#1_19|))) (= |v_#pthreadsForks_13| |v_ULTIMATE.start_main_#t~pre5#1_19|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_87|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_25|, #pthreadsForks=|v_#pthreadsForks_13|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_42|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_27|, #valid=|v_#valid_53|, #memory_int=|v_#memory_int_62|, #length=|v_#length_42|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_19|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_87|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_25|, #pthreadsForks=|v_#pthreadsForks_12|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_42|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_27|, #valid=|v_#valid_53|, #memory_int=|v_#memory_int_61|, #length=|v_#length_42|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 203#[L703-3]don't care [217] L703-3-->thrENTRY: Formula: (and (= |v_ULTIMATE.start_main_#t~pre5#1_6| v_thrThread1of1ForFork0_thidvar0_2) (= |v_thrThread1of1ForFork0_#in~arg.base_4| 0) (= |v_thrThread1of1ForFork0_#in~arg.offset_4| 0)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_6|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_6|, thrThread1of1ForFork0_#res.base=|v_thrThread1of1ForFork0_#res.base_2|, thrThread1of1ForFork0_~arg.offset=v_thrThread1of1ForFork0_~arg.offset_4, thrThread1of1ForFork0_~t~0=v_thrThread1of1ForFork0_~t~0_8, thrThread1of1ForFork0_~arg.base=v_thrThread1of1ForFork0_~arg.base_4, thrThread1of1ForFork0_thidvar0=v_thrThread1of1ForFork0_thidvar0_2, thrThread1of1ForFork0_#in~arg.offset=|v_thrThread1of1ForFork0_#in~arg.offset_4|, thrThread1of1ForFork0_#in~arg.base=|v_thrThread1of1ForFork0_#in~arg.base_4|, thrThread1of1ForFork0_#res.offset=|v_thrThread1of1ForFork0_#res.offset_2|} AuxVars[] AssignedVars[thrThread1of1ForFork0_#res.base, thrThread1of1ForFork0_~arg.offset, thrThread1of1ForFork0_~t~0, thrThread1of1ForFork0_~arg.base, thrThread1of1ForFork0_thidvar0, thrThread1of1ForFork0_#in~arg.offset, thrThread1of1ForFork0_#in~arg.base, thrThread1of1ForFork0_#res.offset] 195#[thrENTRY, L703-4]don't care [289] L703-4-->L702-6: Formula: (= |v_ULTIMATE.start_main_~i~0#1_89| (+ |v_ULTIMATE.start_main_~i~0#1_90| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_90|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_21|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_89|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_11|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_17|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#t~post4#1] 197#[thrENTRY, L702-6]don't care [288] L702-6-->L703-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_87| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~1#1.offset_25| .cse0))) (and (< |v_ULTIMATE.start_main_~i~0#1_87| |v_ULTIMATE.start_main_~n~0#1_42|) (= |v_#pthreadsForks_12| (+ |v_#pthreadsForks_13| 1)) (<= (+ |v_ULTIMATE.start_main_~#t~1#1.offset_25| .cse0 4) (select |v_#length_42| |v_ULTIMATE.start_main_~#t~1#1.base_27|)) (= (select |v_#valid_53| |v_ULTIMATE.start_main_~#t~1#1.base_27|) 1) (<= 0 .cse1) (= |v_#memory_int_61| (store |v_#memory_int_62| |v_ULTIMATE.start_main_~#t~1#1.base_27| (store (select |v_#memory_int_62| |v_ULTIMATE.start_main_~#t~1#1.base_27|) .cse1 |v_ULTIMATE.start_main_#t~pre5#1_19|))) (= |v_#pthreadsForks_13| |v_ULTIMATE.start_main_#t~pre5#1_19|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_87|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_25|, #pthreadsForks=|v_#pthreadsForks_13|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_42|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_27|, #valid=|v_#valid_53|, #memory_int=|v_#memory_int_62|, #length=|v_#length_42|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_19|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_87|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_25|, #pthreadsForks=|v_#pthreadsForks_12|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_42|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_27|, #valid=|v_#valid_53|, #memory_int=|v_#memory_int_61|, #length=|v_#length_42|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 201#[thrENTRY, L703-3]don't care [215] L703-3-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 179#[thrENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES]don't care [2022-07-26 14:08:17,729 INFO L735 eck$LassoCheckResult]: Loop: 179#[thrENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES]don't care [216] ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 179#[thrENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES]don't care [2022-07-26 14:08:17,730 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:17,730 INFO L85 PathProgramCache]: Analyzing trace with hash 1244927409, now seen corresponding path program 1 times [2022-07-26 14:08:17,730 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:17,730 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1545121193] [2022-07-26 14:08:17,730 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:17,730 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:17,756 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:17,757 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 14:08:17,777 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:17,781 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 14:08:17,782 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:17,782 INFO L85 PathProgramCache]: Analyzing trace with hash 247, now seen corresponding path program 1 times [2022-07-26 14:08:17,782 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:17,782 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1699328084] [2022-07-26 14:08:17,782 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:17,782 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:17,785 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:17,785 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 14:08:17,786 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:17,787 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 14:08:17,788 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:17,788 INFO L85 PathProgramCache]: Analyzing trace with hash -61955769, now seen corresponding path program 1 times [2022-07-26 14:08:17,788 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:17,788 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [656686609] [2022-07-26 14:08:17,788 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:17,788 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:17,826 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:17,826 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 14:08:17,837 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:17,841 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 14:08:18,416 WARN L146 chiAutomizerObserver]: 1 thread instances were not sufficient, I will increase this number and restart the analysis [2022-07-26 14:08:18,424 INFO L144 ThreadInstanceAdder]: Constructed 2 joinOtherThreadTransitions. [2022-07-26 14:08:18,427 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 91 places, 95 transitions, 208 flow [2022-07-26 14:08:18,461 INFO L129 PetriNetUnfolder]: 24/214 cut-off events. [2022-07-26 14:08:18,461 INFO L130 PetriNetUnfolder]: For 6/6 co-relation queries the response was YES. [2022-07-26 14:08:18,461 INFO L84 FinitePrefix]: Finished finitePrefix Result has 228 conditions, 214 events. 24/214 cut-off events. For 6/6 co-relation queries the response was YES. Maximal size of possible extension queue 7. Compared 478 event pairs, 0 based on Foata normal form. 0/187 useless extension candidates. Maximal degree in co-relation 126. Up to 8 conditions per place. [2022-07-26 14:08:18,461 INFO L82 GeneralOperation]: Start removeDead. Operand has 91 places, 95 transitions, 208 flow [2022-07-26 14:08:18,463 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 91 places, 95 transitions, 208 flow [2022-07-26 14:08:18,463 INFO L124 etLargeBlockEncoding]: Petri net LBE is using variable-based independence relation. [2022-07-26 14:08:18,463 INFO L131 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 91 places, 95 transitions, 208 flow [2022-07-26 14:08:18,463 INFO L110 LiptonReduction]: Starting Lipton reduction on Petri net that has 91 places, 95 transitions, 208 flow [2022-07-26 14:08:18,463 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 91 places, 95 transitions, 208 flow [2022-07-26 14:08:18,512 INFO L129 PetriNetUnfolder]: 24/214 cut-off events. [2022-07-26 14:08:18,513 INFO L130 PetriNetUnfolder]: For 6/6 co-relation queries the response was YES. [2022-07-26 14:08:18,513 INFO L84 FinitePrefix]: Finished finitePrefix Result has 228 conditions, 214 events. 24/214 cut-off events. For 6/6 co-relation queries the response was YES. Maximal size of possible extension queue 7. Compared 482 event pairs, 0 based on Foata normal form. 0/187 useless extension candidates. Maximal degree in co-relation 126. Up to 8 conditions per place. [2022-07-26 14:08:18,515 INFO L116 LiptonReduction]: Number of co-enabled transitions 1040 [2022-07-26 14:08:20,460 INFO L131 LiptonReduction]: Checked pairs total: 2886 [2022-07-26 14:08:20,460 INFO L133 LiptonReduction]: Total number of compositions: 85 [2022-07-26 14:08:20,461 INFO L301 stractBuchiCegarLoop]: Interprodecural is true [2022-07-26 14:08:20,461 INFO L302 stractBuchiCegarLoop]: Hoare is false [2022-07-26 14:08:20,461 INFO L303 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2022-07-26 14:08:20,461 INFO L304 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2022-07-26 14:08:20,461 INFO L305 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2022-07-26 14:08:20,461 INFO L306 stractBuchiCegarLoop]: Difference is false [2022-07-26 14:08:20,461 INFO L307 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2022-07-26 14:08:20,461 INFO L311 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2022-07-26 14:08:20,461 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 0 states, but on-demand construction may add more states [2022-07-26 14:08:20,484 INFO L131 ngComponentsAnalysis]: Automaton has 41 accepting balls. 41 [2022-07-26 14:08:20,485 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 14:08:20,485 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 14:08:20,485 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2022-07-26 14:08:20,485 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 14:08:20,485 INFO L333 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2022-07-26 14:08:20,485 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 216 states, but on-demand construction may add more states [2022-07-26 14:08:20,490 INFO L131 ngComponentsAnalysis]: Automaton has 41 accepting balls. 41 [2022-07-26 14:08:20,490 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 14:08:20,490 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 14:08:20,490 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2022-07-26 14:08:20,490 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 14:08:20,491 INFO L733 eck$LassoCheckResult]: Stem: 94#[ULTIMATE.startENTRY]don't care [491] ULTIMATE.startENTRY-->L702-6: Formula: (let ((.cse0 (select |v_#memory_int_123| 1))) (and (= v_~x~0_45 0) (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_50| 0)) (= |v_ULTIMATE.start_main_~#t~1#1.offset_78| 0) (= |v_ULTIMATE.start_main_~argc#1_36| |v_ULTIMATE.start_main_#in~argc#1_34|) (= |v_ULTIMATE.start_main_#in~argv#1.offset_34| |v_ULTIMATE.start_main_~argv#1.offset_36|) (= |v_~#a~0.offset_53| 0) (= |v_~#a~0.base_56| 3) (= (select |v_#valid_169| |v_ULTIMATE.start_main_~#t~1#1.base_98|) 0) (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_50| |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_42|) (< |v_#StackHeapBarrier_40| |v_ULTIMATE.start_main_~#t~1#1.base_98|) (= (select .cse0 1) 0) (= |v_#valid_168| (store |v_#valid_169| |v_ULTIMATE.start_main_~#t~1#1.base_98| 1)) (= |v_ULTIMATE.start_#in~argv#1.base_27| |v_ULTIMATE.start_main_#in~argv#1.base_34|) (= |v_#NULL.base_19| 0) (= 40 (select |v_#length_118| 3)) (= (select .cse0 0) 48) (= (select |v_#valid_169| 2) 1) (= (store |v_#length_118| |v_ULTIMATE.start_main_~#t~1#1.base_98| 40) |v_#length_117|) (= |v_ULTIMATE.start_main_#in~argv#1.base_34| |v_ULTIMATE.start_main_~argv#1.base_36|) (= |v_ULTIMATE.start_main_~i~0#1_209| 0) (= (let ((.cse1 (mod |v_ULTIMATE.start_main_#t~nondet3#1_64| 4294967296))) (ite (<= .cse1 2147483647) .cse1 (+ .cse1 (- 4294967296)))) |v_ULTIMATE.start_main_~n~0#1_126|) (= (select |v_#valid_169| 3) 1) (= 9 (select |v_#length_118| 2)) (= |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_42| (ite (and (<= 5 |v_ULTIMATE.start_main_~n~0#1_126|) (<= |v_ULTIMATE.start_main_~n~0#1_126| 10)) 1 0)) (= (select |v_#valid_169| 0) 0) (= |v_#memory_int_122| (store |v_#memory_int_123| |v_~#a~0.base_56| (store ((as const (Array Int Int)) 0) |v_~#a~0.offset_53| 0))) (= |v_ULTIMATE.start_main_#in~argv#1.offset_34| |v_ULTIMATE.start_#in~argv#1.offset_27|) (= (select |v_#valid_169| 1) 1) (= |v_ULTIMATE.start_#in~argc#1_27| |v_ULTIMATE.start_main_#in~argc#1_34|) (< 0 |v_#StackHeapBarrier_40|) (= (select |v_#length_118| 1) 2) (= |v_#NULL.offset_19| 0))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_27|, #StackHeapBarrier=|v_#StackHeapBarrier_40|, #valid=|v_#valid_169|, #memory_int=|v_#memory_int_123|, #length=|v_#length_118|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_27|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_27|} OutVars{ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_78|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_41|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_98|, #NULL.offset=|v_#NULL.offset_19|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_36|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_36|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_27|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_209|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_34|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_87|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_126|, ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_50|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_51|, #length=|v_#length_117|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_47|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_27|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_27|, ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_36|, ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_59|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_35|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_34|, ~#a~0.base=|v_~#a~0.base_56|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_53|, #NULL.base=|v_#NULL.base_19|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_53|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_34|, #StackHeapBarrier=|v_#StackHeapBarrier_40|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_63|, #valid=|v_#valid_168|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_42|, #memory_int=|v_#memory_int_122|, ~#a~0.offset=|v_~#a~0.offset_53|, ~x~0=v_~x~0_45, ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_42|} AuxVars[|v_ULTIMATE.start_main_#t~nondet3#1_64|] AssignedVars[ULTIMATE.start_main_~#t~1#1.offset, ULTIMATE.start_main_#t~mem8#1, ULTIMATE.start_main_~#t~1#1.base, #NULL.offset, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_~sum~0#1, ULTIMATE.start_main_~n~0#1, ULTIMATE.start_assume_abort_if_not_~cond#1, ULTIMATE.start_main_#t~post9#1, #length, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#res#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#in~argv#1.offset, ~#a~0.base, ULTIMATE.start_main_#t~mem10#1, #NULL.base, ULTIMATE.start_main_#t~pre5#1, ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#t~nondet3#1, #valid, ULTIMATE.start_main_#t~post7#1, #memory_int, ~#a~0.offset, ~x~0, ULTIMATE.start_assume_abort_if_not_#in~cond#1] 97#[L702-6]don't care [445] L702-6-->L705-5: Formula: (and (not (< |v_ULTIMATE.start_main_~i~0#1_In_9| |v_ULTIMATE.start_main_~n~0#1_In_11|)) (= |v_ULTIMATE.start_main_~i~0#1_Out_10| 0)) InVars {ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_In_11|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_In_9|} OutVars{ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_In_11|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_Out_10|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] 99#[L705-5]don't care [458] L705-5-->L709-6: Formula: (and (= |v_ULTIMATE.start_main_~i~0#1_155| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_156| |v_ULTIMATE.start_main_~n~0#1_90|)) (= |v_ULTIMATE.start_main_~sum~0#1_63| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_156|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_90|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_155|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_63|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_90|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1] 105#[L709-6]don't care [2022-07-26 14:08:20,491 INFO L735 eck$LassoCheckResult]: Loop: 105#[L709-6]don't care [476] L709-6-->L709-6: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_186| 4))) (let ((.cse0 (+ |v_~#a~0.offset_45| .cse1))) (and (< |v_ULTIMATE.start_main_~i~0#1_186| |v_ULTIMATE.start_main_~n~0#1_104|) (= (+ |v_ULTIMATE.start_main_~sum~0#1_74| (select (select |v_#memory_int_104| |v_~#a~0.base_48|) .cse0)) |v_ULTIMATE.start_main_~sum~0#1_73|) (= (select |v_#valid_134| |v_~#a~0.base_48|) 1) (<= 0 .cse0) (<= (+ |v_~#a~0.offset_45| .cse1 4) (select |v_#length_93| |v_~#a~0.base_48|)) (= (+ |v_ULTIMATE.start_main_~i~0#1_186| 1) |v_ULTIMATE.start_main_~i~0#1_185|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_186|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_74|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_104|, #valid=|v_#valid_134|, #memory_int=|v_#memory_int_104|, ~#a~0.base=|v_~#a~0.base_48|, ~#a~0.offset=|v_~#a~0.offset_45|, #length=|v_#length_93|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_185|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_73|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_104|, #valid=|v_#valid_134|, #memory_int=|v_#memory_int_104|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_43|, ~#a~0.base=|v_~#a~0.base_48|, ~#a~0.offset=|v_~#a~0.offset_45|, #length=|v_#length_93|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_45|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1, ULTIMATE.start_main_#t~post9#1, ULTIMATE.start_main_#t~mem10#1] 105#[L709-6]don't care [2022-07-26 14:08:20,491 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:20,491 INFO L85 PathProgramCache]: Analyzing trace with hash 515895, now seen corresponding path program 1 times [2022-07-26 14:08:20,491 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:20,492 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [10033094] [2022-07-26 14:08:20,492 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:20,492 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:20,500 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-26 14:08:20,512 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-26 14:08:20,512 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-26 14:08:20,513 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [10033094] [2022-07-26 14:08:20,513 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [10033094] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-26 14:08:20,513 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-26 14:08:20,513 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-07-26 14:08:20,513 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [440728876] [2022-07-26 14:08:20,513 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-26 14:08:20,513 INFO L738 eck$LassoCheckResult]: stem already infeasible [2022-07-26 14:08:20,513 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:20,513 INFO L85 PathProgramCache]: Analyzing trace with hash 507, now seen corresponding path program 1 times [2022-07-26 14:08:20,514 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:20,514 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1188050406] [2022-07-26 14:08:20,514 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:20,514 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:20,518 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:20,518 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 14:08:20,519 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:20,520 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 14:08:20,544 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-26 14:08:20,544 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-07-26 14:08:20,544 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-07-26 14:08:20,544 INFO L87 Difference]: Start difference. First operand currently 216 states, but on-demand construction may add more states Second operand has 3 states, 3 states have (on average 1.0) internal successors, (3), 2 states have internal predecessors, (3), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-26 14:08:20,579 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-26 14:08:20,579 INFO L93 Difference]: Finished difference Result 217 states and 511 transitions. [2022-07-26 14:08:20,579 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 217 states and 511 transitions. [2022-07-26 14:08:20,583 INFO L131 ngComponentsAnalysis]: Automaton has 41 accepting balls. 41 [2022-07-26 14:08:20,585 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 217 states to 191 states and 455 transitions. [2022-07-26 14:08:20,586 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 191 [2022-07-26 14:08:20,586 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 191 [2022-07-26 14:08:20,586 INFO L73 IsDeterministic]: Start isDeterministic. Operand 191 states and 455 transitions. [2022-07-26 14:08:20,588 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-26 14:08:20,588 INFO L220 hiAutomatonCegarLoop]: Abstraction has 191 states and 455 transitions. [2022-07-26 14:08:20,588 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 191 states and 455 transitions. [2022-07-26 14:08:20,606 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 191 to 191. [2022-07-26 14:08:20,607 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 191 states, 191 states have (on average 2.3821989528795813) internal successors, (455), 190 states have internal predecessors, (455), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-26 14:08:20,608 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 191 states to 191 states and 455 transitions. [2022-07-26 14:08:20,609 INFO L242 hiAutomatonCegarLoop]: Abstraction has 191 states and 455 transitions. [2022-07-26 14:08:20,609 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-07-26 14:08:20,609 INFO L426 stractBuchiCegarLoop]: Abstraction has 191 states and 455 transitions. [2022-07-26 14:08:20,609 INFO L333 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2022-07-26 14:08:20,610 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 191 states and 455 transitions. [2022-07-26 14:08:20,614 INFO L131 ngComponentsAnalysis]: Automaton has 41 accepting balls. 41 [2022-07-26 14:08:20,614 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 14:08:20,615 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 14:08:20,615 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1] [2022-07-26 14:08:20,617 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 14:08:20,618 INFO L733 eck$LassoCheckResult]: Stem: 1130#[ULTIMATE.startENTRY]don't care [491] ULTIMATE.startENTRY-->L702-6: Formula: (let ((.cse0 (select |v_#memory_int_123| 1))) (and (= v_~x~0_45 0) (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_50| 0)) (= |v_ULTIMATE.start_main_~#t~1#1.offset_78| 0) (= |v_ULTIMATE.start_main_~argc#1_36| |v_ULTIMATE.start_main_#in~argc#1_34|) (= |v_ULTIMATE.start_main_#in~argv#1.offset_34| |v_ULTIMATE.start_main_~argv#1.offset_36|) (= |v_~#a~0.offset_53| 0) (= |v_~#a~0.base_56| 3) (= (select |v_#valid_169| |v_ULTIMATE.start_main_~#t~1#1.base_98|) 0) (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_50| |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_42|) (< |v_#StackHeapBarrier_40| |v_ULTIMATE.start_main_~#t~1#1.base_98|) (= (select .cse0 1) 0) (= |v_#valid_168| (store |v_#valid_169| |v_ULTIMATE.start_main_~#t~1#1.base_98| 1)) (= |v_ULTIMATE.start_#in~argv#1.base_27| |v_ULTIMATE.start_main_#in~argv#1.base_34|) (= |v_#NULL.base_19| 0) (= 40 (select |v_#length_118| 3)) (= (select .cse0 0) 48) (= (select |v_#valid_169| 2) 1) (= (store |v_#length_118| |v_ULTIMATE.start_main_~#t~1#1.base_98| 40) |v_#length_117|) (= |v_ULTIMATE.start_main_#in~argv#1.base_34| |v_ULTIMATE.start_main_~argv#1.base_36|) (= |v_ULTIMATE.start_main_~i~0#1_209| 0) (= (let ((.cse1 (mod |v_ULTIMATE.start_main_#t~nondet3#1_64| 4294967296))) (ite (<= .cse1 2147483647) .cse1 (+ .cse1 (- 4294967296)))) |v_ULTIMATE.start_main_~n~0#1_126|) (= (select |v_#valid_169| 3) 1) (= 9 (select |v_#length_118| 2)) (= |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_42| (ite (and (<= 5 |v_ULTIMATE.start_main_~n~0#1_126|) (<= |v_ULTIMATE.start_main_~n~0#1_126| 10)) 1 0)) (= (select |v_#valid_169| 0) 0) (= |v_#memory_int_122| (store |v_#memory_int_123| |v_~#a~0.base_56| (store ((as const (Array Int Int)) 0) |v_~#a~0.offset_53| 0))) (= |v_ULTIMATE.start_main_#in~argv#1.offset_34| |v_ULTIMATE.start_#in~argv#1.offset_27|) (= (select |v_#valid_169| 1) 1) (= |v_ULTIMATE.start_#in~argc#1_27| |v_ULTIMATE.start_main_#in~argc#1_34|) (< 0 |v_#StackHeapBarrier_40|) (= (select |v_#length_118| 1) 2) (= |v_#NULL.offset_19| 0))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_27|, #StackHeapBarrier=|v_#StackHeapBarrier_40|, #valid=|v_#valid_169|, #memory_int=|v_#memory_int_123|, #length=|v_#length_118|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_27|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_27|} OutVars{ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_78|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_41|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_98|, #NULL.offset=|v_#NULL.offset_19|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_36|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_36|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_27|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_209|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_34|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_87|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_126|, ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_50|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_51|, #length=|v_#length_117|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_47|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_27|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_27|, ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_36|, ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_59|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_35|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_34|, ~#a~0.base=|v_~#a~0.base_56|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_53|, #NULL.base=|v_#NULL.base_19|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_53|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_34|, #StackHeapBarrier=|v_#StackHeapBarrier_40|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_63|, #valid=|v_#valid_168|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_42|, #memory_int=|v_#memory_int_122|, ~#a~0.offset=|v_~#a~0.offset_53|, ~x~0=v_~x~0_45, ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_42|} AuxVars[|v_ULTIMATE.start_main_#t~nondet3#1_64|] AssignedVars[ULTIMATE.start_main_~#t~1#1.offset, ULTIMATE.start_main_#t~mem8#1, ULTIMATE.start_main_~#t~1#1.base, #NULL.offset, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_~sum~0#1, ULTIMATE.start_main_~n~0#1, ULTIMATE.start_assume_abort_if_not_~cond#1, ULTIMATE.start_main_#t~post9#1, #length, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#res#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#in~argv#1.offset, ~#a~0.base, ULTIMATE.start_main_#t~mem10#1, #NULL.base, ULTIMATE.start_main_#t~pre5#1, ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#t~nondet3#1, #valid, ULTIMATE.start_main_#t~post7#1, #memory_int, ~#a~0.offset, ~x~0, ULTIMATE.start_assume_abort_if_not_#in~cond#1] 1132#[L702-6]don't care [478] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_191| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~1#1.offset_62| .cse1))) (and (= (store |v_#memory_int_107| |v_ULTIMATE.start_main_~#t~1#1.base_78| (store (select |v_#memory_int_107| |v_ULTIMATE.start_main_~#t~1#1.base_78|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_45|)) |v_#memory_int_106|) (= (+ |v_#pthreadsForks_28| 1) |v_#pthreadsForks_27|) (= (select |v_#valid_140| |v_ULTIMATE.start_main_~#t~1#1.base_78|) 1) (= |v_#pthreadsForks_28| |v_ULTIMATE.start_main_#t~pre5#1_45|) (< |v_ULTIMATE.start_main_~i~0#1_191| |v_ULTIMATE.start_main_~n~0#1_108|) (<= 0 .cse0) (<= (+ |v_ULTIMATE.start_main_~#t~1#1.offset_62| .cse1 4) (select |v_#length_99| |v_ULTIMATE.start_main_~#t~1#1.base_78|))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_191|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_62|, #pthreadsForks=|v_#pthreadsForks_28|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_108|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_78|, #valid=|v_#valid_140|, #memory_int=|v_#memory_int_107|, #length=|v_#length_99|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_45|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_191|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_62|, #pthreadsForks=|v_#pthreadsForks_27|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_108|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_78|, #valid=|v_#valid_140|, #memory_int=|v_#memory_int_106|, #length=|v_#length_99|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 1120#[L703-3]don't care [403] L703-3-->thrENTRY: Formula: (and (= |v_thrThread1of2ForFork0_#in~arg.offset_4| 0) (= |v_thrThread1of2ForFork0_#in~arg.base_4| 0) (= v_thrThread1of2ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_34|)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_34|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_34|, thrThread1of2ForFork0_thidvar0=v_thrThread1of2ForFork0_thidvar0_2, thrThread1of2ForFork0_#in~arg.base=|v_thrThread1of2ForFork0_#in~arg.base_4|, thrThread1of2ForFork0_~arg.offset=v_thrThread1of2ForFork0_~arg.offset_4, thrThread1of2ForFork0_#res.base=|v_thrThread1of2ForFork0_#res.base_2|, thrThread1of2ForFork0_~arg.base=v_thrThread1of2ForFork0_~arg.base_4, thrThread1of2ForFork0_#res.offset=|v_thrThread1of2ForFork0_#res.offset_2|, thrThread1of2ForFork0_#in~arg.offset=|v_thrThread1of2ForFork0_#in~arg.offset_4|, thrThread1of2ForFork0_~t~0=v_thrThread1of2ForFork0_~t~0_8} AuxVars[] AssignedVars[thrThread1of2ForFork0_thidvar0, thrThread1of2ForFork0_#in~arg.base, thrThread1of2ForFork0_~arg.offset, thrThread1of2ForFork0_#res.base, thrThread1of2ForFork0_~arg.base, thrThread1of2ForFork0_#res.offset, thrThread1of2ForFork0_#in~arg.offset, thrThread1of2ForFork0_~t~0] 1122#[thrENTRY, L703-4]don't care [354] L703-4-->L703-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1] 796#[thrENTRY, L703-5]don't care [465] L703-5-->L702-6: Formula: (= |v_ULTIMATE.start_main_~i~0#1_171| (+ |v_ULTIMATE.start_main_~i~0#1_172| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_172|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_171|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_25|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_35|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#t~post4#1] 800#[thrENTRY, L702-6]don't care [445] L702-6-->L705-5: Formula: (and (not (< |v_ULTIMATE.start_main_~i~0#1_In_9| |v_ULTIMATE.start_main_~n~0#1_In_11|)) (= |v_ULTIMATE.start_main_~i~0#1_Out_10| 0)) InVars {ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_In_11|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_In_9|} OutVars{ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_In_11|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_Out_10|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] 1098#[thrENTRY, L705-5]don't care [458] L705-5-->L709-6: Formula: (and (= |v_ULTIMATE.start_main_~i~0#1_155| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_156| |v_ULTIMATE.start_main_~n~0#1_90|)) (= |v_ULTIMATE.start_main_~sum~0#1_63| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_156|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_90|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_155|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_63|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_90|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1] 1022#[thrENTRY, L709-6]don't care [2022-07-26 14:08:20,618 INFO L735 eck$LassoCheckResult]: Loop: 1022#[thrENTRY, L709-6]don't care [476] L709-6-->L709-6: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_186| 4))) (let ((.cse0 (+ |v_~#a~0.offset_45| .cse1))) (and (< |v_ULTIMATE.start_main_~i~0#1_186| |v_ULTIMATE.start_main_~n~0#1_104|) (= (+ |v_ULTIMATE.start_main_~sum~0#1_74| (select (select |v_#memory_int_104| |v_~#a~0.base_48|) .cse0)) |v_ULTIMATE.start_main_~sum~0#1_73|) (= (select |v_#valid_134| |v_~#a~0.base_48|) 1) (<= 0 .cse0) (<= (+ |v_~#a~0.offset_45| .cse1 4) (select |v_#length_93| |v_~#a~0.base_48|)) (= (+ |v_ULTIMATE.start_main_~i~0#1_186| 1) |v_ULTIMATE.start_main_~i~0#1_185|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_186|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_74|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_104|, #valid=|v_#valid_134|, #memory_int=|v_#memory_int_104|, ~#a~0.base=|v_~#a~0.base_48|, ~#a~0.offset=|v_~#a~0.offset_45|, #length=|v_#length_93|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_185|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_73|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_104|, #valid=|v_#valid_134|, #memory_int=|v_#memory_int_104|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_43|, ~#a~0.base=|v_~#a~0.base_48|, ~#a~0.offset=|v_~#a~0.offset_45|, #length=|v_#length_93|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_45|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1, ULTIMATE.start_main_#t~post9#1, ULTIMATE.start_main_#t~mem10#1] 1022#[thrENTRY, L709-6]don't care [2022-07-26 14:08:20,618 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:20,618 INFO L85 PathProgramCache]: Analyzing trace with hash 603471899, now seen corresponding path program 1 times [2022-07-26 14:08:20,618 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:20,618 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [119379769] [2022-07-26 14:08:20,618 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:20,619 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:20,636 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-26 14:08:20,666 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-26 14:08:20,667 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-26 14:08:20,667 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [119379769] [2022-07-26 14:08:20,669 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [119379769] provided 0 perfect and 1 imperfect interpolant sequences [2022-07-26 14:08:20,670 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1615161775] [2022-07-26 14:08:20,670 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:20,670 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-26 14:08:20,670 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-26 14:08:20,672 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-26 14:08:20,741 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-07-26 14:08:20,765 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-26 14:08:20,767 INFO L263 TraceCheckSpWp]: Trace formula consists of 97 conjuncts, 4 conjunts are in the unsatisfiable core [2022-07-26 14:08:20,768 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-26 14:08:20,789 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-26 14:08:20,790 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-26 14:08:20,808 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-26 14:08:20,808 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1615161775] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-26 14:08:20,808 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-07-26 14:08:20,808 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 3, 3] total 6 [2022-07-26 14:08:20,808 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1853880484] [2022-07-26 14:08:20,809 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-07-26 14:08:20,809 INFO L738 eck$LassoCheckResult]: stem already infeasible [2022-07-26 14:08:20,809 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:20,809 INFO L85 PathProgramCache]: Analyzing trace with hash 507, now seen corresponding path program 2 times [2022-07-26 14:08:20,809 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:20,809 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1713328565] [2022-07-26 14:08:20,809 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:20,809 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:20,813 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:20,813 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 14:08:20,814 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:20,816 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 14:08:20,838 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-26 14:08:20,839 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-07-26 14:08:20,839 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=35, Unknown=0, NotChecked=0, Total=56 [2022-07-26 14:08:20,839 INFO L87 Difference]: Start difference. First operand 191 states and 455 transitions. cyclomatic complexity: 305 Second operand has 8 states, 7 states have (on average 2.2857142857142856) internal successors, (16), 7 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-26 14:08:20,910 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-26 14:08:20,911 INFO L93 Difference]: Finished difference Result 194 states and 427 transitions. [2022-07-26 14:08:20,911 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 194 states and 427 transitions. [2022-07-26 14:08:20,912 INFO L131 ngComponentsAnalysis]: Automaton has 25 accepting balls. 25 [2022-07-26 14:08:20,913 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 194 states to 194 states and 427 transitions. [2022-07-26 14:08:20,913 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 194 [2022-07-26 14:08:20,914 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 194 [2022-07-26 14:08:20,914 INFO L73 IsDeterministic]: Start isDeterministic. Operand 194 states and 427 transitions. [2022-07-26 14:08:20,915 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-26 14:08:20,915 INFO L220 hiAutomatonCegarLoop]: Abstraction has 194 states and 427 transitions. [2022-07-26 14:08:20,915 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 194 states and 427 transitions. [2022-07-26 14:08:20,921 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 194 to 179. [2022-07-26 14:08:20,921 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 179 states, 179 states have (on average 2.2681564245810057) internal successors, (406), 178 states have internal predecessors, (406), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-26 14:08:20,922 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 179 states to 179 states and 406 transitions. [2022-07-26 14:08:20,922 INFO L242 hiAutomatonCegarLoop]: Abstraction has 179 states and 406 transitions. [2022-07-26 14:08:20,922 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-07-26 14:08:20,923 INFO L426 stractBuchiCegarLoop]: Abstraction has 179 states and 406 transitions. [2022-07-26 14:08:20,923 INFO L333 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2022-07-26 14:08:20,923 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 179 states and 406 transitions. [2022-07-26 14:08:20,924 INFO L131 ngComponentsAnalysis]: Automaton has 25 accepting balls. 25 [2022-07-26 14:08:20,924 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 14:08:20,924 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 14:08:20,924 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [3, 2, 2, 1, 1, 1, 1] [2022-07-26 14:08:20,924 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 14:08:20,925 INFO L733 eck$LassoCheckResult]: Stem: 1733#[ULTIMATE.startENTRY]don't care [491] ULTIMATE.startENTRY-->L702-6: Formula: (let ((.cse0 (select |v_#memory_int_123| 1))) (and (= v_~x~0_45 0) (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_50| 0)) (= |v_ULTIMATE.start_main_~#t~1#1.offset_78| 0) (= |v_ULTIMATE.start_main_~argc#1_36| |v_ULTIMATE.start_main_#in~argc#1_34|) (= |v_ULTIMATE.start_main_#in~argv#1.offset_34| |v_ULTIMATE.start_main_~argv#1.offset_36|) (= |v_~#a~0.offset_53| 0) (= |v_~#a~0.base_56| 3) (= (select |v_#valid_169| |v_ULTIMATE.start_main_~#t~1#1.base_98|) 0) (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_50| |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_42|) (< |v_#StackHeapBarrier_40| |v_ULTIMATE.start_main_~#t~1#1.base_98|) (= (select .cse0 1) 0) (= |v_#valid_168| (store |v_#valid_169| |v_ULTIMATE.start_main_~#t~1#1.base_98| 1)) (= |v_ULTIMATE.start_#in~argv#1.base_27| |v_ULTIMATE.start_main_#in~argv#1.base_34|) (= |v_#NULL.base_19| 0) (= 40 (select |v_#length_118| 3)) (= (select .cse0 0) 48) (= (select |v_#valid_169| 2) 1) (= (store |v_#length_118| |v_ULTIMATE.start_main_~#t~1#1.base_98| 40) |v_#length_117|) (= |v_ULTIMATE.start_main_#in~argv#1.base_34| |v_ULTIMATE.start_main_~argv#1.base_36|) (= |v_ULTIMATE.start_main_~i~0#1_209| 0) (= (let ((.cse1 (mod |v_ULTIMATE.start_main_#t~nondet3#1_64| 4294967296))) (ite (<= .cse1 2147483647) .cse1 (+ .cse1 (- 4294967296)))) |v_ULTIMATE.start_main_~n~0#1_126|) (= (select |v_#valid_169| 3) 1) (= 9 (select |v_#length_118| 2)) (= |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_42| (ite (and (<= 5 |v_ULTIMATE.start_main_~n~0#1_126|) (<= |v_ULTIMATE.start_main_~n~0#1_126| 10)) 1 0)) (= (select |v_#valid_169| 0) 0) (= |v_#memory_int_122| (store |v_#memory_int_123| |v_~#a~0.base_56| (store ((as const (Array Int Int)) 0) |v_~#a~0.offset_53| 0))) (= |v_ULTIMATE.start_main_#in~argv#1.offset_34| |v_ULTIMATE.start_#in~argv#1.offset_27|) (= (select |v_#valid_169| 1) 1) (= |v_ULTIMATE.start_#in~argc#1_27| |v_ULTIMATE.start_main_#in~argc#1_34|) (< 0 |v_#StackHeapBarrier_40|) (= (select |v_#length_118| 1) 2) (= |v_#NULL.offset_19| 0))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_27|, #StackHeapBarrier=|v_#StackHeapBarrier_40|, #valid=|v_#valid_169|, #memory_int=|v_#memory_int_123|, #length=|v_#length_118|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_27|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_27|} OutVars{ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_78|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_41|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_98|, #NULL.offset=|v_#NULL.offset_19|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_36|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_36|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_27|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_209|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_34|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_87|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_126|, ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_50|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_51|, #length=|v_#length_117|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_47|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_27|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_27|, ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_36|, ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_59|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_35|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_34|, ~#a~0.base=|v_~#a~0.base_56|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_53|, #NULL.base=|v_#NULL.base_19|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_53|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_34|, #StackHeapBarrier=|v_#StackHeapBarrier_40|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_63|, #valid=|v_#valid_168|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_42|, #memory_int=|v_#memory_int_122|, ~#a~0.offset=|v_~#a~0.offset_53|, ~x~0=v_~x~0_45, ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_42|} AuxVars[|v_ULTIMATE.start_main_#t~nondet3#1_64|] AssignedVars[ULTIMATE.start_main_~#t~1#1.offset, ULTIMATE.start_main_#t~mem8#1, ULTIMATE.start_main_~#t~1#1.base, #NULL.offset, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_~sum~0#1, ULTIMATE.start_main_~n~0#1, ULTIMATE.start_assume_abort_if_not_~cond#1, ULTIMATE.start_main_#t~post9#1, #length, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#res#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#in~argv#1.offset, ~#a~0.base, ULTIMATE.start_main_#t~mem10#1, #NULL.base, ULTIMATE.start_main_#t~pre5#1, ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#t~nondet3#1, #valid, ULTIMATE.start_main_#t~post7#1, #memory_int, ~#a~0.offset, ~x~0, ULTIMATE.start_assume_abort_if_not_#in~cond#1] 1735#[L702-6]don't care [478] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_191| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~1#1.offset_62| .cse1))) (and (= (store |v_#memory_int_107| |v_ULTIMATE.start_main_~#t~1#1.base_78| (store (select |v_#memory_int_107| |v_ULTIMATE.start_main_~#t~1#1.base_78|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_45|)) |v_#memory_int_106|) (= (+ |v_#pthreadsForks_28| 1) |v_#pthreadsForks_27|) (= (select |v_#valid_140| |v_ULTIMATE.start_main_~#t~1#1.base_78|) 1) (= |v_#pthreadsForks_28| |v_ULTIMATE.start_main_#t~pre5#1_45|) (< |v_ULTIMATE.start_main_~i~0#1_191| |v_ULTIMATE.start_main_~n~0#1_108|) (<= 0 .cse0) (<= (+ |v_ULTIMATE.start_main_~#t~1#1.offset_62| .cse1 4) (select |v_#length_99| |v_ULTIMATE.start_main_~#t~1#1.base_78|))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_191|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_62|, #pthreadsForks=|v_#pthreadsForks_28|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_108|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_78|, #valid=|v_#valid_140|, #memory_int=|v_#memory_int_107|, #length=|v_#length_99|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_45|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_191|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_62|, #pthreadsForks=|v_#pthreadsForks_27|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_108|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_78|, #valid=|v_#valid_140|, #memory_int=|v_#memory_int_106|, #length=|v_#length_99|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 1721#[L703-3]don't care [403] L703-3-->thrENTRY: Formula: (and (= |v_thrThread1of2ForFork0_#in~arg.offset_4| 0) (= |v_thrThread1of2ForFork0_#in~arg.base_4| 0) (= v_thrThread1of2ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_34|)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_34|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_34|, thrThread1of2ForFork0_thidvar0=v_thrThread1of2ForFork0_thidvar0_2, thrThread1of2ForFork0_#in~arg.base=|v_thrThread1of2ForFork0_#in~arg.base_4|, thrThread1of2ForFork0_~arg.offset=v_thrThread1of2ForFork0_~arg.offset_4, thrThread1of2ForFork0_#res.base=|v_thrThread1of2ForFork0_#res.base_2|, thrThread1of2ForFork0_~arg.base=v_thrThread1of2ForFork0_~arg.base_4, thrThread1of2ForFork0_#res.offset=|v_thrThread1of2ForFork0_#res.offset_2|, thrThread1of2ForFork0_#in~arg.offset=|v_thrThread1of2ForFork0_#in~arg.offset_4|, thrThread1of2ForFork0_~t~0=v_thrThread1of2ForFork0_~t~0_8} AuxVars[] AssignedVars[thrThread1of2ForFork0_thidvar0, thrThread1of2ForFork0_#in~arg.base, thrThread1of2ForFork0_~arg.offset, thrThread1of2ForFork0_#res.base, thrThread1of2ForFork0_~arg.base, thrThread1of2ForFork0_#res.offset, thrThread1of2ForFork0_#in~arg.offset, thrThread1of2ForFork0_~t~0] 1723#[thrENTRY, L703-4]don't care [354] L703-4-->L703-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1] 1417#[thrENTRY, L703-5]don't care [465] L703-5-->L702-6: Formula: (= |v_ULTIMATE.start_main_~i~0#1_171| (+ |v_ULTIMATE.start_main_~i~0#1_172| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_172|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_171|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_25|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_35|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#t~post4#1] 1421#[thrENTRY, L702-6]don't care [478] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_191| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~1#1.offset_62| .cse1))) (and (= (store |v_#memory_int_107| |v_ULTIMATE.start_main_~#t~1#1.base_78| (store (select |v_#memory_int_107| |v_ULTIMATE.start_main_~#t~1#1.base_78|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_45|)) |v_#memory_int_106|) (= (+ |v_#pthreadsForks_28| 1) |v_#pthreadsForks_27|) (= (select |v_#valid_140| |v_ULTIMATE.start_main_~#t~1#1.base_78|) 1) (= |v_#pthreadsForks_28| |v_ULTIMATE.start_main_#t~pre5#1_45|) (< |v_ULTIMATE.start_main_~i~0#1_191| |v_ULTIMATE.start_main_~n~0#1_108|) (<= 0 .cse0) (<= (+ |v_ULTIMATE.start_main_~#t~1#1.offset_62| .cse1 4) (select |v_#length_99| |v_ULTIMATE.start_main_~#t~1#1.base_78|))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_191|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_62|, #pthreadsForks=|v_#pthreadsForks_28|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_108|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_78|, #valid=|v_#valid_140|, #memory_int=|v_#memory_int_107|, #length=|v_#length_99|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_45|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_191|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_62|, #pthreadsForks=|v_#pthreadsForks_27|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_108|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_78|, #valid=|v_#valid_140|, #memory_int=|v_#memory_int_106|, #length=|v_#length_99|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 1513#[thrENTRY, L703-3]don't care [404] L703-3-->thrENTRY: Formula: (and (= v_thrThread2of2ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_36|) (= |v_thrThread2of2ForFork0_#in~arg.base_4| 0) (= |v_thrThread2of2ForFork0_#in~arg.offset_4| 0)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_36|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_36|, thrThread2of2ForFork0_#in~arg.offset=|v_thrThread2of2ForFork0_#in~arg.offset_4|, thrThread2of2ForFork0_#res.offset=|v_thrThread2of2ForFork0_#res.offset_2|, thrThread2of2ForFork0_~arg.base=v_thrThread2of2ForFork0_~arg.base_4, thrThread2of2ForFork0_#in~arg.base=|v_thrThread2of2ForFork0_#in~arg.base_4|, thrThread2of2ForFork0_thidvar0=v_thrThread2of2ForFork0_thidvar0_2, thrThread2of2ForFork0_~arg.offset=v_thrThread2of2ForFork0_~arg.offset_4, thrThread2of2ForFork0_~t~0=v_thrThread2of2ForFork0_~t~0_8, thrThread2of2ForFork0_#res.base=|v_thrThread2of2ForFork0_#res.base_2|} AuxVars[] AssignedVars[thrThread2of2ForFork0_#in~arg.offset, thrThread2of2ForFork0_#res.offset, thrThread2of2ForFork0_~arg.base, thrThread2of2ForFork0_#in~arg.base, thrThread2of2ForFork0_thidvar0, thrThread2of2ForFork0_~arg.offset, thrThread2of2ForFork0_~t~0, thrThread2of2ForFork0_#res.base] 1517#[thrENTRY, thrENTRY, L703-4]don't care [354] L703-4-->L703-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1] 1617#[thrENTRY, L703-5, thrENTRY]don't care [465] L703-5-->L702-6: Formula: (= |v_ULTIMATE.start_main_~i~0#1_171| (+ |v_ULTIMATE.start_main_~i~0#1_172| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_172|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_171|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_25|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_35|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#t~post4#1] 1621#[thrENTRY, thrENTRY, L702-6]don't care [478] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_191| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~1#1.offset_62| .cse1))) (and (= (store |v_#memory_int_107| |v_ULTIMATE.start_main_~#t~1#1.base_78| (store (select |v_#memory_int_107| |v_ULTIMATE.start_main_~#t~1#1.base_78|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_45|)) |v_#memory_int_106|) (= (+ |v_#pthreadsForks_28| 1) |v_#pthreadsForks_27|) (= (select |v_#valid_140| |v_ULTIMATE.start_main_~#t~1#1.base_78|) 1) (= |v_#pthreadsForks_28| |v_ULTIMATE.start_main_#t~pre5#1_45|) (< |v_ULTIMATE.start_main_~i~0#1_191| |v_ULTIMATE.start_main_~n~0#1_108|) (<= 0 .cse0) (<= (+ |v_ULTIMATE.start_main_~#t~1#1.offset_62| .cse1 4) (select |v_#length_99| |v_ULTIMATE.start_main_~#t~1#1.base_78|))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_191|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_62|, #pthreadsForks=|v_#pthreadsForks_28|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_108|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_78|, #valid=|v_#valid_140|, #memory_int=|v_#memory_int_107|, #length=|v_#length_99|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_45|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_191|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_62|, #pthreadsForks=|v_#pthreadsForks_27|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_108|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_78|, #valid=|v_#valid_140|, #memory_int=|v_#memory_int_106|, #length=|v_#length_99|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 1491#[thrENTRY, thrENTRY, L703-3]don't care [401] L703-3-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 1495#[thrENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, thrENTRY]don't care [2022-07-26 14:08:20,925 INFO L735 eck$LassoCheckResult]: Loop: 1495#[thrENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, thrENTRY]don't care [402] ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 1495#[thrENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, thrENTRY]don't care [2022-07-26 14:08:20,925 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:20,925 INFO L85 PathProgramCache]: Analyzing trace with hash 626240070, now seen corresponding path program 1 times [2022-07-26 14:08:20,925 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:20,925 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [101956053] [2022-07-26 14:08:20,925 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:20,925 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:20,939 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:20,939 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 14:08:20,976 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:20,979 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 14:08:20,979 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:20,979 INFO L85 PathProgramCache]: Analyzing trace with hash 433, now seen corresponding path program 1 times [2022-07-26 14:08:20,979 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:20,979 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [200163711] [2022-07-26 14:08:20,979 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:20,980 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:20,982 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:20,982 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 14:08:20,982 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:20,983 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 14:08:20,983 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:20,984 INFO L85 PathProgramCache]: Analyzing trace with hash -2061393908, now seen corresponding path program 1 times [2022-07-26 14:08:20,984 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:20,984 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [683091906] [2022-07-26 14:08:20,984 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:20,984 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:20,993 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:20,993 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 14:08:21,000 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:21,003 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 14:08:21,728 WARN L146 chiAutomizerObserver]: 2 thread instances were not sufficient, I will increase this number and restart the analysis [2022-07-26 14:08:21,744 INFO L144 ThreadInstanceAdder]: Constructed 3 joinOtherThreadTransitions. [2022-07-26 14:08:21,746 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 99 places, 102 transitions, 234 flow [2022-07-26 14:08:21,772 INFO L129 PetriNetUnfolder]: 46/376 cut-off events. [2022-07-26 14:08:21,773 INFO L130 PetriNetUnfolder]: For 19/19 co-relation queries the response was YES. [2022-07-26 14:08:21,773 INFO L84 FinitePrefix]: Finished finitePrefix Result has 404 conditions, 376 events. 46/376 cut-off events. For 19/19 co-relation queries the response was YES. Maximal size of possible extension queue 9. Compared 1148 event pairs, 1 based on Foata normal form. 0/327 useless extension candidates. Maximal degree in co-relation 221. Up to 16 conditions per place. [2022-07-26 14:08:21,773 INFO L82 GeneralOperation]: Start removeDead. Operand has 99 places, 102 transitions, 234 flow [2022-07-26 14:08:21,776 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 99 places, 102 transitions, 234 flow [2022-07-26 14:08:21,776 INFO L124 etLargeBlockEncoding]: Petri net LBE is using variable-based independence relation. [2022-07-26 14:08:21,776 INFO L131 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 99 places, 102 transitions, 234 flow [2022-07-26 14:08:21,776 INFO L110 LiptonReduction]: Starting Lipton reduction on Petri net that has 99 places, 102 transitions, 234 flow [2022-07-26 14:08:21,776 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 99 places, 102 transitions, 234 flow [2022-07-26 14:08:21,795 INFO L129 PetriNetUnfolder]: 46/376 cut-off events. [2022-07-26 14:08:21,796 INFO L130 PetriNetUnfolder]: For 19/19 co-relation queries the response was YES. [2022-07-26 14:08:21,796 INFO L84 FinitePrefix]: Finished finitePrefix Result has 404 conditions, 376 events. 46/376 cut-off events. For 19/19 co-relation queries the response was YES. Maximal size of possible extension queue 8. Compared 1136 event pairs, 1 based on Foata normal form. 0/327 useless extension candidates. Maximal degree in co-relation 221. Up to 16 conditions per place. [2022-07-26 14:08:21,799 INFO L116 LiptonReduction]: Number of co-enabled transitions 1680 [2022-07-26 14:08:23,474 INFO L131 LiptonReduction]: Checked pairs total: 5174 [2022-07-26 14:08:23,474 INFO L133 LiptonReduction]: Total number of compositions: 85 [2022-07-26 14:08:23,475 INFO L301 stractBuchiCegarLoop]: Interprodecural is true [2022-07-26 14:08:23,475 INFO L302 stractBuchiCegarLoop]: Hoare is false [2022-07-26 14:08:23,475 INFO L303 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2022-07-26 14:08:23,475 INFO L304 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2022-07-26 14:08:23,475 INFO L305 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2022-07-26 14:08:23,475 INFO L306 stractBuchiCegarLoop]: Difference is false [2022-07-26 14:08:23,475 INFO L307 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2022-07-26 14:08:23,475 INFO L311 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2022-07-26 14:08:23,476 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 0 states, but on-demand construction may add more states [2022-07-26 14:08:23,552 INFO L131 ngComponentsAnalysis]: Automaton has 189 accepting balls. 189 [2022-07-26 14:08:23,552 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 14:08:23,552 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 14:08:23,552 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2022-07-26 14:08:23,553 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 14:08:23,553 INFO L333 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2022-07-26 14:08:23,553 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 1024 states, but on-demand construction may add more states [2022-07-26 14:08:23,562 INFO L131 ngComponentsAnalysis]: Automaton has 189 accepting balls. 189 [2022-07-26 14:08:23,562 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 14:08:23,562 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 14:08:23,563 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2022-07-26 14:08:23,563 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 14:08:23,563 INFO L733 eck$LassoCheckResult]: Stem: 102#[ULTIMATE.startENTRY]don't care [685] ULTIMATE.startENTRY-->L702-6: Formula: (let ((.cse0 (select |v_#memory_int_191| 1))) (and (= (select |v_#valid_253| 2) 1) (= 0 (select .cse0 1)) (= |v_ULTIMATE.start_main_#in~argv#1.offset_53| |v_ULTIMATE.start_main_~argv#1.offset_53|) (= (store |v_#memory_int_191| |v_~#a~0.base_85| (store ((as const (Array Int Int)) 0) |v_~#a~0.offset_80| 0)) |v_#memory_int_190|) (= |v_ULTIMATE.start_#in~argv#1.base_40| |v_ULTIMATE.start_main_#in~argv#1.base_53|) (< |v_#StackHeapBarrier_61| |v_ULTIMATE.start_main_~#t~1#1.base_149|) (= |v_ULTIMATE.start_main_#in~argv#1.base_53| |v_ULTIMATE.start_main_~argv#1.base_53|) (= (select |v_#length_170| 2) 9) (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_69| 0)) (= 48 (select .cse0 0)) (= |v_ULTIMATE.start_main_~i~0#1_302| 0) (= 0 (select |v_#valid_253| 0)) (= |v_ULTIMATE.start_#in~argc#1_40| |v_ULTIMATE.start_main_#in~argc#1_51|) (= v_~x~0_70 0) (= 2 (select |v_#length_170| 1)) (= (ite (and (<= |v_ULTIMATE.start_main_~n~0#1_179| 10) (<= 5 |v_ULTIMATE.start_main_~n~0#1_179|)) 1 0) |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_53|) (= |v_#NULL.base_32| 0) (= |v_ULTIMATE.start_main_~argc#1_49| |v_ULTIMATE.start_main_#in~argc#1_51|) (= |v_~#a~0.offset_80| 0) (= |v_#NULL.offset_32| 0) (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_69| |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_53|) (= |v_ULTIMATE.start_main_~n~0#1_179| (let ((.cse1 (mod |v_ULTIMATE.start_main_#t~nondet3#1_95| 4294967296))) (ite (<= .cse1 2147483647) .cse1 (+ .cse1 (- 4294967296))))) (= 40 (select |v_#length_170| 3)) (= |v_~#a~0.base_85| 3) (= |v_ULTIMATE.start_main_#in~argv#1.offset_53| |v_ULTIMATE.start_#in~argv#1.offset_40|) (= (select |v_#valid_253| 1) 1) (= (select |v_#valid_253| 3) 1) (= 0 |v_ULTIMATE.start_main_~#t~1#1.offset_117|) (= (select |v_#valid_253| |v_ULTIMATE.start_main_~#t~1#1.base_149|) 0) (< 0 |v_#StackHeapBarrier_61|) (= (store |v_#length_170| |v_ULTIMATE.start_main_~#t~1#1.base_149| 40) |v_#length_169|) (= (store |v_#valid_253| |v_ULTIMATE.start_main_~#t~1#1.base_149| 1) |v_#valid_252|))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_40|, #StackHeapBarrier=|v_#StackHeapBarrier_61|, #valid=|v_#valid_253|, #memory_int=|v_#memory_int_191|, #length=|v_#length_170|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_40|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_40|} OutVars{ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_117|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_60|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_149|, #NULL.offset=|v_#NULL.offset_32|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_53|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_53|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_40|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_302|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_51|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_135|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_179|, ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_69|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_76|, #length=|v_#length_169|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_71|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_40|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_40|, ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_49|, ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_86|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_53|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_53|, ~#a~0.base=|v_~#a~0.base_85|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_78|, #NULL.base=|v_#NULL.base_32|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_83|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_53|, #StackHeapBarrier=|v_#StackHeapBarrier_61|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_94|, #valid=|v_#valid_252|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_61|, #memory_int=|v_#memory_int_190|, ~#a~0.offset=|v_~#a~0.offset_80|, ~x~0=v_~x~0_70, ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_53|} AuxVars[|v_ULTIMATE.start_main_#t~nondet3#1_95|] AssignedVars[ULTIMATE.start_main_~#t~1#1.offset, ULTIMATE.start_main_#t~mem8#1, ULTIMATE.start_main_~#t~1#1.base, #NULL.offset, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_~sum~0#1, ULTIMATE.start_main_~n~0#1, ULTIMATE.start_assume_abort_if_not_~cond#1, ULTIMATE.start_main_#t~post9#1, #length, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#res#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#in~argv#1.offset, ~#a~0.base, ULTIMATE.start_main_#t~mem10#1, #NULL.base, ULTIMATE.start_main_#t~pre5#1, ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#t~nondet3#1, #valid, ULTIMATE.start_main_#t~post7#1, #memory_int, ~#a~0.offset, ~x~0, ULTIMATE.start_assume_abort_if_not_#in~cond#1] 105#[L702-6]don't care [643] L702-6-->L705-5: Formula: (and (= |v_ULTIMATE.start_main_~i~0#1_Out_18| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_In_19| |v_ULTIMATE.start_main_~n~0#1_In_23|))) InVars {ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_In_23|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_In_19|} OutVars{ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_In_23|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_Out_18|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] 107#[L705-5]don't care [652] L705-5-->L709-6: Formula: (and (= |v_ULTIMATE.start_main_~sum~0#1_111| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_261| |v_ULTIMATE.start_main_~n~0#1_149|)) (= |v_ULTIMATE.start_main_~i~0#1_260| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_261|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_149|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_260|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_111|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_149|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1] 113#[L709-6]don't care [2022-07-26 14:08:23,563 INFO L735 eck$LassoCheckResult]: Loop: 113#[L709-6]don't care [673] L709-6-->L709-6: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_285| 4))) (let ((.cse1 (+ |v_~#a~0.offset_72| .cse0))) (and (<= (+ |v_~#a~0.offset_72| .cse0 4) (select |v_#length_153| |v_~#a~0.base_77|)) (= |v_ULTIMATE.start_main_~sum~0#1_121| (+ |v_ULTIMATE.start_main_~sum~0#1_122| (select (select |v_#memory_int_174| |v_~#a~0.base_77|) .cse1))) (= (select |v_#valid_224| |v_~#a~0.base_77|) 1) (< |v_ULTIMATE.start_main_~i~0#1_285| |v_ULTIMATE.start_main_~n~0#1_163|) (= (+ |v_ULTIMATE.start_main_~i~0#1_285| 1) |v_ULTIMATE.start_main_~i~0#1_284|) (<= 0 .cse1)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_285|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_122|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_163|, #valid=|v_#valid_224|, #memory_int=|v_#memory_int_174|, ~#a~0.base=|v_~#a~0.base_77|, ~#a~0.offset=|v_~#a~0.offset_72|, #length=|v_#length_153|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_284|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_121|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_163|, #valid=|v_#valid_224|, #memory_int=|v_#memory_int_174|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_68|, ~#a~0.base=|v_~#a~0.base_77|, ~#a~0.offset=|v_~#a~0.offset_72|, #length=|v_#length_153|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_68|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1, ULTIMATE.start_main_#t~post9#1, ULTIMATE.start_main_#t~mem10#1] 113#[L709-6]don't care [2022-07-26 14:08:23,564 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:23,564 INFO L85 PathProgramCache]: Analyzing trace with hash 708661, now seen corresponding path program 1 times [2022-07-26 14:08:23,564 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:23,564 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [554724115] [2022-07-26 14:08:23,564 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:23,564 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:23,570 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-26 14:08:23,579 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-26 14:08:23,579 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-26 14:08:23,579 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [554724115] [2022-07-26 14:08:23,579 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [554724115] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-26 14:08:23,579 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-26 14:08:23,579 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-07-26 14:08:23,579 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1348399833] [2022-07-26 14:08:23,580 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-26 14:08:23,580 INFO L738 eck$LassoCheckResult]: stem already infeasible [2022-07-26 14:08:23,580 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:23,580 INFO L85 PathProgramCache]: Analyzing trace with hash 704, now seen corresponding path program 1 times [2022-07-26 14:08:23,580 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:23,580 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [561522732] [2022-07-26 14:08:23,580 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:23,580 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:23,583 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:23,583 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 14:08:23,584 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:23,585 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 14:08:23,610 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-26 14:08:23,610 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-07-26 14:08:23,610 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-07-26 14:08:23,610 INFO L87 Difference]: Start difference. First operand currently 1024 states, but on-demand construction may add more states Second operand has 3 states, 3 states have (on average 1.0) internal successors, (3), 2 states have internal predecessors, (3), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-26 14:08:23,647 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-26 14:08:23,647 INFO L93 Difference]: Finished difference Result 1025 states and 3074 transitions. [2022-07-26 14:08:23,647 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1025 states and 3074 transitions. [2022-07-26 14:08:23,656 INFO L131 ngComponentsAnalysis]: Automaton has 189 accepting balls. 189 [2022-07-26 14:08:23,663 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1025 states to 899 states and 2723 transitions. [2022-07-26 14:08:23,663 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 899 [2022-07-26 14:08:23,664 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 899 [2022-07-26 14:08:23,664 INFO L73 IsDeterministic]: Start isDeterministic. Operand 899 states and 2723 transitions. [2022-07-26 14:08:23,668 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-26 14:08:23,668 INFO L220 hiAutomatonCegarLoop]: Abstraction has 899 states and 2723 transitions. [2022-07-26 14:08:23,669 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 899 states and 2723 transitions. [2022-07-26 14:08:23,686 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 899 to 899. [2022-07-26 14:08:23,688 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 899 states, 899 states have (on average 3.0289210233592883) internal successors, (2723), 898 states have internal predecessors, (2723), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-26 14:08:23,691 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 899 states to 899 states and 2723 transitions. [2022-07-26 14:08:23,691 INFO L242 hiAutomatonCegarLoop]: Abstraction has 899 states and 2723 transitions. [2022-07-26 14:08:23,692 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-07-26 14:08:23,692 INFO L426 stractBuchiCegarLoop]: Abstraction has 899 states and 2723 transitions. [2022-07-26 14:08:23,692 INFO L333 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2022-07-26 14:08:23,692 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 899 states and 2723 transitions. [2022-07-26 14:08:23,696 INFO L131 ngComponentsAnalysis]: Automaton has 189 accepting balls. 189 [2022-07-26 14:08:23,696 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 14:08:23,696 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 14:08:23,697 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1] [2022-07-26 14:08:23,697 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 14:08:23,697 INFO L733 eck$LassoCheckResult]: Stem: 4780#[ULTIMATE.startENTRY]don't care [685] ULTIMATE.startENTRY-->L702-6: Formula: (let ((.cse0 (select |v_#memory_int_191| 1))) (and (= (select |v_#valid_253| 2) 1) (= 0 (select .cse0 1)) (= |v_ULTIMATE.start_main_#in~argv#1.offset_53| |v_ULTIMATE.start_main_~argv#1.offset_53|) (= (store |v_#memory_int_191| |v_~#a~0.base_85| (store ((as const (Array Int Int)) 0) |v_~#a~0.offset_80| 0)) |v_#memory_int_190|) (= |v_ULTIMATE.start_#in~argv#1.base_40| |v_ULTIMATE.start_main_#in~argv#1.base_53|) (< |v_#StackHeapBarrier_61| |v_ULTIMATE.start_main_~#t~1#1.base_149|) (= |v_ULTIMATE.start_main_#in~argv#1.base_53| |v_ULTIMATE.start_main_~argv#1.base_53|) (= (select |v_#length_170| 2) 9) (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_69| 0)) (= 48 (select .cse0 0)) (= |v_ULTIMATE.start_main_~i~0#1_302| 0) (= 0 (select |v_#valid_253| 0)) (= |v_ULTIMATE.start_#in~argc#1_40| |v_ULTIMATE.start_main_#in~argc#1_51|) (= v_~x~0_70 0) (= 2 (select |v_#length_170| 1)) (= (ite (and (<= |v_ULTIMATE.start_main_~n~0#1_179| 10) (<= 5 |v_ULTIMATE.start_main_~n~0#1_179|)) 1 0) |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_53|) (= |v_#NULL.base_32| 0) (= |v_ULTIMATE.start_main_~argc#1_49| |v_ULTIMATE.start_main_#in~argc#1_51|) (= |v_~#a~0.offset_80| 0) (= |v_#NULL.offset_32| 0) (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_69| |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_53|) (= |v_ULTIMATE.start_main_~n~0#1_179| (let ((.cse1 (mod |v_ULTIMATE.start_main_#t~nondet3#1_95| 4294967296))) (ite (<= .cse1 2147483647) .cse1 (+ .cse1 (- 4294967296))))) (= 40 (select |v_#length_170| 3)) (= |v_~#a~0.base_85| 3) (= |v_ULTIMATE.start_main_#in~argv#1.offset_53| |v_ULTIMATE.start_#in~argv#1.offset_40|) (= (select |v_#valid_253| 1) 1) (= (select |v_#valid_253| 3) 1) (= 0 |v_ULTIMATE.start_main_~#t~1#1.offset_117|) (= (select |v_#valid_253| |v_ULTIMATE.start_main_~#t~1#1.base_149|) 0) (< 0 |v_#StackHeapBarrier_61|) (= (store |v_#length_170| |v_ULTIMATE.start_main_~#t~1#1.base_149| 40) |v_#length_169|) (= (store |v_#valid_253| |v_ULTIMATE.start_main_~#t~1#1.base_149| 1) |v_#valid_252|))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_40|, #StackHeapBarrier=|v_#StackHeapBarrier_61|, #valid=|v_#valid_253|, #memory_int=|v_#memory_int_191|, #length=|v_#length_170|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_40|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_40|} OutVars{ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_117|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_60|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_149|, #NULL.offset=|v_#NULL.offset_32|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_53|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_53|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_40|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_302|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_51|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_135|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_179|, ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_69|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_76|, #length=|v_#length_169|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_71|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_40|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_40|, ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_49|, ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_86|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_53|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_53|, ~#a~0.base=|v_~#a~0.base_85|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_78|, #NULL.base=|v_#NULL.base_32|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_83|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_53|, #StackHeapBarrier=|v_#StackHeapBarrier_61|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_94|, #valid=|v_#valid_252|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_61|, #memory_int=|v_#memory_int_190|, ~#a~0.offset=|v_~#a~0.offset_80|, ~x~0=v_~x~0_70, ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_53|} AuxVars[|v_ULTIMATE.start_main_#t~nondet3#1_95|] AssignedVars[ULTIMATE.start_main_~#t~1#1.offset, ULTIMATE.start_main_#t~mem8#1, ULTIMATE.start_main_~#t~1#1.base, #NULL.offset, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_~sum~0#1, ULTIMATE.start_main_~n~0#1, ULTIMATE.start_assume_abort_if_not_~cond#1, ULTIMATE.start_main_#t~post9#1, #length, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#res#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#in~argv#1.offset, ~#a~0.base, ULTIMATE.start_main_#t~mem10#1, #NULL.base, ULTIMATE.start_main_#t~pre5#1, ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#t~nondet3#1, #valid, ULTIMATE.start_main_#t~post7#1, #memory_int, ~#a~0.offset, ~x~0, ULTIMATE.start_assume_abort_if_not_#in~cond#1] 4644#[L702-6]don't care [661] L702-6-->L703-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_272| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~1#1.offset_95| .cse0))) (and (<= (+ |v_ULTIMATE.start_main_~#t~1#1.offset_95| .cse0 4) (select |v_#length_147| |v_ULTIMATE.start_main_~#t~1#1.base_119|)) (= |v_#pthreadsForks_43| |v_ULTIMATE.start_main_#t~pre5#1_75|) (= |v_#pthreadsForks_42| (+ |v_#pthreadsForks_43| 1)) (<= 0 .cse1) (= (store |v_#memory_int_161| |v_ULTIMATE.start_main_~#t~1#1.base_119| (store (select |v_#memory_int_161| |v_ULTIMATE.start_main_~#t~1#1.base_119|) .cse1 |v_ULTIMATE.start_main_#t~pre5#1_75|)) |v_#memory_int_160|) (< |v_ULTIMATE.start_main_~i~0#1_272| |v_ULTIMATE.start_main_~n~0#1_155|) (= (select |v_#valid_210| |v_ULTIMATE.start_main_~#t~1#1.base_119|) 1)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_272|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_95|, #pthreadsForks=|v_#pthreadsForks_43|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_155|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_119|, #valid=|v_#valid_210|, #memory_int=|v_#memory_int_161|, #length=|v_#length_147|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_75|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_272|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_95|, #pthreadsForks=|v_#pthreadsForks_42|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_155|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_119|, #valid=|v_#valid_210|, #memory_int=|v_#memory_int_160|, #length=|v_#length_147|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 4646#[L703-3]don't care [595] L703-3-->thrENTRY: Formula: (and (= v_thrThread1of3ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_64|) (= |v_thrThread1of3ForFork0_#in~arg.base_4| 0) (= |v_thrThread1of3ForFork0_#in~arg.offset_4| 0)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_64|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_64|, thrThread1of3ForFork0_#in~arg.offset=|v_thrThread1of3ForFork0_#in~arg.offset_4|, thrThread1of3ForFork0_~t~0=v_thrThread1of3ForFork0_~t~0_8, thrThread1of3ForFork0_#res.offset=|v_thrThread1of3ForFork0_#res.offset_2|, thrThread1of3ForFork0_#in~arg.base=|v_thrThread1of3ForFork0_#in~arg.base_4|, thrThread1of3ForFork0_#res.base=|v_thrThread1of3ForFork0_#res.base_2|, thrThread1of3ForFork0_~arg.base=v_thrThread1of3ForFork0_~arg.base_4, thrThread1of3ForFork0_thidvar0=v_thrThread1of3ForFork0_thidvar0_2, thrThread1of3ForFork0_~arg.offset=v_thrThread1of3ForFork0_~arg.offset_4} AuxVars[] AssignedVars[thrThread1of3ForFork0_#in~arg.offset, thrThread1of3ForFork0_~t~0, thrThread1of3ForFork0_#res.offset, thrThread1of3ForFork0_#in~arg.base, thrThread1of3ForFork0_#res.base, thrThread1of3ForFork0_~arg.base, thrThread1of3ForFork0_thidvar0, thrThread1of3ForFork0_~arg.offset] 4208#[L703-4, thrENTRY]don't care [541] L703-4-->L703-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1] 4212#[thrENTRY, L703-5]don't care [662] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_275| 1) |v_ULTIMATE.start_main_~i~0#1_274|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_275|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_274|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_45|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_61|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#t~post4#1] 4910#[L702-6, thrENTRY]don't care [643] L702-6-->L705-5: Formula: (and (= |v_ULTIMATE.start_main_~i~0#1_Out_18| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_In_19| |v_ULTIMATE.start_main_~n~0#1_In_23|))) InVars {ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_In_23|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_In_19|} OutVars{ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_In_23|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_Out_18|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] 3756#[L705-5, thrENTRY]don't care [652] L705-5-->L709-6: Formula: (and (= |v_ULTIMATE.start_main_~sum~0#1_111| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_261| |v_ULTIMATE.start_main_~n~0#1_149|)) (= |v_ULTIMATE.start_main_~i~0#1_260| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_261|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_149|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_260|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_111|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_149|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1] 4968#[thrENTRY, L709-6]don't care [2022-07-26 14:08:23,697 INFO L735 eck$LassoCheckResult]: Loop: 4968#[thrENTRY, L709-6]don't care [673] L709-6-->L709-6: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_285| 4))) (let ((.cse1 (+ |v_~#a~0.offset_72| .cse0))) (and (<= (+ |v_~#a~0.offset_72| .cse0 4) (select |v_#length_153| |v_~#a~0.base_77|)) (= |v_ULTIMATE.start_main_~sum~0#1_121| (+ |v_ULTIMATE.start_main_~sum~0#1_122| (select (select |v_#memory_int_174| |v_~#a~0.base_77|) .cse1))) (= (select |v_#valid_224| |v_~#a~0.base_77|) 1) (< |v_ULTIMATE.start_main_~i~0#1_285| |v_ULTIMATE.start_main_~n~0#1_163|) (= (+ |v_ULTIMATE.start_main_~i~0#1_285| 1) |v_ULTIMATE.start_main_~i~0#1_284|) (<= 0 .cse1)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_285|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_122|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_163|, #valid=|v_#valid_224|, #memory_int=|v_#memory_int_174|, ~#a~0.base=|v_~#a~0.base_77|, ~#a~0.offset=|v_~#a~0.offset_72|, #length=|v_#length_153|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_284|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_121|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_163|, #valid=|v_#valid_224|, #memory_int=|v_#memory_int_174|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_68|, ~#a~0.base=|v_~#a~0.base_77|, ~#a~0.offset=|v_~#a~0.offset_72|, #length=|v_#length_153|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_68|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1, ULTIMATE.start_main_#t~post9#1, ULTIMATE.start_main_#t~mem10#1] 4968#[thrENTRY, L709-6]don't care [2022-07-26 14:08:23,697 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:23,697 INFO L85 PathProgramCache]: Analyzing trace with hash 2107744108, now seen corresponding path program 1 times [2022-07-26 14:08:23,697 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:23,698 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1496780698] [2022-07-26 14:08:23,698 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:23,698 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:23,703 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-26 14:08:23,722 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-26 14:08:23,722 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-26 14:08:23,722 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1496780698] [2022-07-26 14:08:23,723 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1496780698] provided 0 perfect and 1 imperfect interpolant sequences [2022-07-26 14:08:23,723 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1000840090] [2022-07-26 14:08:23,723 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:23,723 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-26 14:08:23,723 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-26 14:08:23,724 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-26 14:08:23,725 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-07-26 14:08:23,769 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-26 14:08:23,770 INFO L263 TraceCheckSpWp]: Trace formula consists of 97 conjuncts, 4 conjunts are in the unsatisfiable core [2022-07-26 14:08:23,771 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-26 14:08:23,787 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-26 14:08:23,788 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-26 14:08:23,800 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-26 14:08:23,801 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1000840090] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-26 14:08:23,801 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-07-26 14:08:23,801 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 3, 3] total 6 [2022-07-26 14:08:23,801 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1660214298] [2022-07-26 14:08:23,801 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-07-26 14:08:23,801 INFO L738 eck$LassoCheckResult]: stem already infeasible [2022-07-26 14:08:23,801 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:23,801 INFO L85 PathProgramCache]: Analyzing trace with hash 704, now seen corresponding path program 2 times [2022-07-26 14:08:23,801 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:23,802 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [359841613] [2022-07-26 14:08:23,802 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:23,802 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:23,804 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:23,805 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 14:08:23,806 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:23,807 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 14:08:23,828 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-26 14:08:23,828 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-07-26 14:08:23,829 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=35, Unknown=0, NotChecked=0, Total=56 [2022-07-26 14:08:23,829 INFO L87 Difference]: Start difference. First operand 899 states and 2723 transitions. cyclomatic complexity: 2013 Second operand has 8 states, 7 states have (on average 2.2857142857142856) internal successors, (16), 7 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-26 14:08:23,911 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-26 14:08:23,911 INFO L93 Difference]: Finished difference Result 954 states and 2706 transitions. [2022-07-26 14:08:23,911 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 954 states and 2706 transitions. [2022-07-26 14:08:23,917 INFO L131 ngComponentsAnalysis]: Automaton has 125 accepting balls. 125 [2022-07-26 14:08:23,923 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 954 states to 954 states and 2706 transitions. [2022-07-26 14:08:23,923 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 954 [2022-07-26 14:08:23,924 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 954 [2022-07-26 14:08:23,924 INFO L73 IsDeterministic]: Start isDeterministic. Operand 954 states and 2706 transitions. [2022-07-26 14:08:23,925 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-26 14:08:23,925 INFO L220 hiAutomatonCegarLoop]: Abstraction has 954 states and 2706 transitions. [2022-07-26 14:08:23,927 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 954 states and 2706 transitions. [2022-07-26 14:08:23,936 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 954 to 855. [2022-07-26 14:08:23,938 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 855 states, 855 states have (on average 2.9216374269005847) internal successors, (2498), 854 states have internal predecessors, (2498), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-26 14:08:23,940 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 855 states to 855 states and 2498 transitions. [2022-07-26 14:08:23,940 INFO L242 hiAutomatonCegarLoop]: Abstraction has 855 states and 2498 transitions. [2022-07-26 14:08:23,941 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-07-26 14:08:23,941 INFO L426 stractBuchiCegarLoop]: Abstraction has 855 states and 2498 transitions. [2022-07-26 14:08:23,941 INFO L333 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2022-07-26 14:08:23,941 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 855 states and 2498 transitions. [2022-07-26 14:08:23,944 INFO L131 ngComponentsAnalysis]: Automaton has 125 accepting balls. 125 [2022-07-26 14:08:23,945 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 14:08:23,945 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 14:08:23,945 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-26 14:08:23,945 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 14:08:23,945 INFO L733 eck$LassoCheckResult]: Stem: 7477#[ULTIMATE.startENTRY]don't care [685] ULTIMATE.startENTRY-->L702-6: Formula: (let ((.cse0 (select |v_#memory_int_191| 1))) (and (= (select |v_#valid_253| 2) 1) (= 0 (select .cse0 1)) (= |v_ULTIMATE.start_main_#in~argv#1.offset_53| |v_ULTIMATE.start_main_~argv#1.offset_53|) (= (store |v_#memory_int_191| |v_~#a~0.base_85| (store ((as const (Array Int Int)) 0) |v_~#a~0.offset_80| 0)) |v_#memory_int_190|) (= |v_ULTIMATE.start_#in~argv#1.base_40| |v_ULTIMATE.start_main_#in~argv#1.base_53|) (< |v_#StackHeapBarrier_61| |v_ULTIMATE.start_main_~#t~1#1.base_149|) (= |v_ULTIMATE.start_main_#in~argv#1.base_53| |v_ULTIMATE.start_main_~argv#1.base_53|) (= (select |v_#length_170| 2) 9) (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_69| 0)) (= 48 (select .cse0 0)) (= |v_ULTIMATE.start_main_~i~0#1_302| 0) (= 0 (select |v_#valid_253| 0)) (= |v_ULTIMATE.start_#in~argc#1_40| |v_ULTIMATE.start_main_#in~argc#1_51|) (= v_~x~0_70 0) (= 2 (select |v_#length_170| 1)) (= (ite (and (<= |v_ULTIMATE.start_main_~n~0#1_179| 10) (<= 5 |v_ULTIMATE.start_main_~n~0#1_179|)) 1 0) |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_53|) (= |v_#NULL.base_32| 0) (= |v_ULTIMATE.start_main_~argc#1_49| |v_ULTIMATE.start_main_#in~argc#1_51|) (= |v_~#a~0.offset_80| 0) (= |v_#NULL.offset_32| 0) (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_69| |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_53|) (= |v_ULTIMATE.start_main_~n~0#1_179| (let ((.cse1 (mod |v_ULTIMATE.start_main_#t~nondet3#1_95| 4294967296))) (ite (<= .cse1 2147483647) .cse1 (+ .cse1 (- 4294967296))))) (= 40 (select |v_#length_170| 3)) (= |v_~#a~0.base_85| 3) (= |v_ULTIMATE.start_main_#in~argv#1.offset_53| |v_ULTIMATE.start_#in~argv#1.offset_40|) (= (select |v_#valid_253| 1) 1) (= (select |v_#valid_253| 3) 1) (= 0 |v_ULTIMATE.start_main_~#t~1#1.offset_117|) (= (select |v_#valid_253| |v_ULTIMATE.start_main_~#t~1#1.base_149|) 0) (< 0 |v_#StackHeapBarrier_61|) (= (store |v_#length_170| |v_ULTIMATE.start_main_~#t~1#1.base_149| 40) |v_#length_169|) (= (store |v_#valid_253| |v_ULTIMATE.start_main_~#t~1#1.base_149| 1) |v_#valid_252|))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_40|, #StackHeapBarrier=|v_#StackHeapBarrier_61|, #valid=|v_#valid_253|, #memory_int=|v_#memory_int_191|, #length=|v_#length_170|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_40|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_40|} OutVars{ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_117|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_60|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_149|, #NULL.offset=|v_#NULL.offset_32|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_53|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_53|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_40|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_302|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_51|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_135|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_179|, ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_69|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_76|, #length=|v_#length_169|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_71|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_40|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_40|, ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_49|, ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_86|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_53|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_53|, ~#a~0.base=|v_~#a~0.base_85|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_78|, #NULL.base=|v_#NULL.base_32|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_83|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_53|, #StackHeapBarrier=|v_#StackHeapBarrier_61|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_94|, #valid=|v_#valid_252|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_61|, #memory_int=|v_#memory_int_190|, ~#a~0.offset=|v_~#a~0.offset_80|, ~x~0=v_~x~0_70, ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_53|} AuxVars[|v_ULTIMATE.start_main_#t~nondet3#1_95|] AssignedVars[ULTIMATE.start_main_~#t~1#1.offset, ULTIMATE.start_main_#t~mem8#1, ULTIMATE.start_main_~#t~1#1.base, #NULL.offset, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_~sum~0#1, ULTIMATE.start_main_~n~0#1, ULTIMATE.start_assume_abort_if_not_~cond#1, ULTIMATE.start_main_#t~post9#1, #length, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#res#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#in~argv#1.offset, ~#a~0.base, ULTIMATE.start_main_#t~mem10#1, #NULL.base, ULTIMATE.start_main_#t~pre5#1, ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#t~nondet3#1, #valid, ULTIMATE.start_main_#t~post7#1, #memory_int, ~#a~0.offset, ~x~0, ULTIMATE.start_assume_abort_if_not_#in~cond#1] 7353#[L702-6]don't care [661] L702-6-->L703-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_272| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~1#1.offset_95| .cse0))) (and (<= (+ |v_ULTIMATE.start_main_~#t~1#1.offset_95| .cse0 4) (select |v_#length_147| |v_ULTIMATE.start_main_~#t~1#1.base_119|)) (= |v_#pthreadsForks_43| |v_ULTIMATE.start_main_#t~pre5#1_75|) (= |v_#pthreadsForks_42| (+ |v_#pthreadsForks_43| 1)) (<= 0 .cse1) (= (store |v_#memory_int_161| |v_ULTIMATE.start_main_~#t~1#1.base_119| (store (select |v_#memory_int_161| |v_ULTIMATE.start_main_~#t~1#1.base_119|) .cse1 |v_ULTIMATE.start_main_#t~pre5#1_75|)) |v_#memory_int_160|) (< |v_ULTIMATE.start_main_~i~0#1_272| |v_ULTIMATE.start_main_~n~0#1_155|) (= (select |v_#valid_210| |v_ULTIMATE.start_main_~#t~1#1.base_119|) 1)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_272|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_95|, #pthreadsForks=|v_#pthreadsForks_43|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_155|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_119|, #valid=|v_#valid_210|, #memory_int=|v_#memory_int_161|, #length=|v_#length_147|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_75|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_272|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_95|, #pthreadsForks=|v_#pthreadsForks_42|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_155|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_119|, #valid=|v_#valid_210|, #memory_int=|v_#memory_int_160|, #length=|v_#length_147|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 7355#[L703-3]don't care [595] L703-3-->thrENTRY: Formula: (and (= v_thrThread1of3ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_64|) (= |v_thrThread1of3ForFork0_#in~arg.base_4| 0) (= |v_thrThread1of3ForFork0_#in~arg.offset_4| 0)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_64|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_64|, thrThread1of3ForFork0_#in~arg.offset=|v_thrThread1of3ForFork0_#in~arg.offset_4|, thrThread1of3ForFork0_~t~0=v_thrThread1of3ForFork0_~t~0_8, thrThread1of3ForFork0_#res.offset=|v_thrThread1of3ForFork0_#res.offset_2|, thrThread1of3ForFork0_#in~arg.base=|v_thrThread1of3ForFork0_#in~arg.base_4|, thrThread1of3ForFork0_#res.base=|v_thrThread1of3ForFork0_#res.base_2|, thrThread1of3ForFork0_~arg.base=v_thrThread1of3ForFork0_~arg.base_4, thrThread1of3ForFork0_thidvar0=v_thrThread1of3ForFork0_thidvar0_2, thrThread1of3ForFork0_~arg.offset=v_thrThread1of3ForFork0_~arg.offset_4} AuxVars[] AssignedVars[thrThread1of3ForFork0_#in~arg.offset, thrThread1of3ForFork0_~t~0, thrThread1of3ForFork0_#res.offset, thrThread1of3ForFork0_#in~arg.base, thrThread1of3ForFork0_#res.base, thrThread1of3ForFork0_~arg.base, thrThread1of3ForFork0_thidvar0, thrThread1of3ForFork0_~arg.offset] 6935#[L703-4, thrENTRY]don't care [618] thrENTRY-->L694: Formula: (and (= |v_thrThread1of3ForFork0_#in~arg.base_5| v_thrThread1of3ForFork0_~arg.base_5) (= v_~x~0_52 v_thrThread1of3ForFork0_~t~0_9) (= v_thrThread1of3ForFork0_~arg.offset_5 |v_thrThread1of3ForFork0_#in~arg.offset_5|)) InVars {thrThread1of3ForFork0_#in~arg.offset=|v_thrThread1of3ForFork0_#in~arg.offset_5|, thrThread1of3ForFork0_#in~arg.base=|v_thrThread1of3ForFork0_#in~arg.base_5|, ~x~0=v_~x~0_52} OutVars{thrThread1of3ForFork0_#in~arg.offset=|v_thrThread1of3ForFork0_#in~arg.offset_5|, thrThread1of3ForFork0_~t~0=v_thrThread1of3ForFork0_~t~0_9, thrThread1of3ForFork0_#in~arg.base=|v_thrThread1of3ForFork0_#in~arg.base_5|, thrThread1of3ForFork0_~arg.base=v_thrThread1of3ForFork0_~arg.base_5, ~x~0=v_~x~0_52, thrThread1of3ForFork0_~arg.offset=v_thrThread1of3ForFork0_~arg.offset_5} AuxVars[] AssignedVars[thrThread1of3ForFork0_~t~0, thrThread1of3ForFork0_~arg.base, thrThread1of3ForFork0_~arg.offset] 6937#[L703-4, L694]don't care [580] L694-->L694-1: Formula: (let ((.cse1 (* v_thrThread1of3ForFork0_~t~0_3 4))) (let ((.cse0 (+ |v_~#a~0.offset_4| .cse1))) (and (= (select |v_#valid_12| |v_~#a~0.base_5|) 1) (<= 0 .cse0) (= |v_#memory_int_11| (store |v_#memory_int_12| |v_~#a~0.base_5| (store (select |v_#memory_int_12| |v_~#a~0.base_5|) .cse0 1))) (<= (+ |v_~#a~0.offset_4| .cse1 4) (select |v_#length_9| |v_~#a~0.base_5|))))) InVars {thrThread1of3ForFork0_~t~0=v_thrThread1of3ForFork0_~t~0_3, #valid=|v_#valid_12|, #memory_int=|v_#memory_int_12|, ~#a~0.base=|v_~#a~0.base_5|, ~#a~0.offset=|v_~#a~0.offset_4|, #length=|v_#length_9|} OutVars{thrThread1of3ForFork0_~t~0=v_thrThread1of3ForFork0_~t~0_3, #valid=|v_#valid_12|, #memory_int=|v_#memory_int_11|, ~#a~0.base=|v_~#a~0.base_5|, ~#a~0.offset=|v_~#a~0.offset_4|, #length=|v_#length_9|} AuxVars[] AssignedVars[#memory_int] 7385#[L703-4, L694-1]don't care [541] L703-4-->L703-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1] 6985#[L694-1, L703-5]don't care [662] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_275| 1) |v_ULTIMATE.start_main_~i~0#1_274|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_275|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_274|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_45|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_61|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#t~post4#1] 7255#[L694-1, L702-6]don't care [643] L702-6-->L705-5: Formula: (and (= |v_ULTIMATE.start_main_~i~0#1_Out_18| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_In_19| |v_ULTIMATE.start_main_~n~0#1_In_23|))) InVars {ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_In_23|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_In_19|} OutVars{ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_In_23|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_Out_18|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] 6839#[L694-1, L705-5]don't care [632] L705-5-->L706-1: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_248| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~1#1.offset_89| .cse0))) (and (= 1 (select |v_#valid_194| |v_ULTIMATE.start_main_~#t~1#1.base_111|)) (<= (+ |v_ULTIMATE.start_main_~#t~1#1.offset_89| 4 .cse0) (select |v_#length_137| |v_ULTIMATE.start_main_~#t~1#1.base_111|)) (<= 0 .cse1) (= (select (select |v_#memory_int_150| |v_ULTIMATE.start_main_~#t~1#1.base_111|) .cse1) |v_ULTIMATE.start_main_#t~mem8#1_52|) (< |v_ULTIMATE.start_main_~i~0#1_248| |v_ULTIMATE.start_main_~n~0#1_141|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_248|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_89|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_141|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_111|, #valid=|v_#valid_194|, #memory_int=|v_#memory_int_150|, #length=|v_#length_137|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_248|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_52|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_89|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_141|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_111|, #valid=|v_#valid_194|, #memory_int=|v_#memory_int_150|, #length=|v_#length_137|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~mem8#1] 6727#[L694-1, L706-1]don't care [637] L694-1-->thrEXIT: Formula: (= v_~x~0_58 (+ v_thrThread1of3ForFork0_~t~0_11 1)) InVars {thrThread1of3ForFork0_~t~0=v_thrThread1of3ForFork0_~t~0_11} OutVars{thrThread1of3ForFork0_~t~0=v_thrThread1of3ForFork0_~t~0_11, ~x~0=v_~x~0_58} AuxVars[] AssignedVars[~x~0] 6729#[L706-1, thrEXIT]don't care [598] thrEXIT-->L706-2: Formula: (= v_thrThread1of3ForFork0_thidvar0_4 (let ((.cse0 (mod |v_ULTIMATE.start_main_#t~mem8#1_45| 4294967296))) (ite (<= .cse0 2147483647) .cse0 (+ .cse0 (- 4294967296))))) InVars {ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_45|, thrThread1of3ForFork0_thidvar0=v_thrThread1of3ForFork0_thidvar0_4} OutVars{ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_45|, thrThread1of3ForFork0_thidvar0=v_thrThread1of3ForFork0_thidvar0_4} AuxVars[] AssignedVars[] 6713#[L706-2]don't care [524] L706-2-->L705-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~mem8#1] 6535#[L705-2]don't care [654] L705-2-->L705-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_265| 1) |v_ULTIMATE.start_main_~i~0#1_264|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_265|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_264|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_51|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~post7#1] 6537#[L705-5]don't care [652] L705-5-->L709-6: Formula: (and (= |v_ULTIMATE.start_main_~sum~0#1_111| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_261| |v_ULTIMATE.start_main_~n~0#1_149|)) (= |v_ULTIMATE.start_main_~i~0#1_260| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_261|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_149|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_260|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_111|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_149|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1] 7013#[L709-6]don't care [2022-07-26 14:08:23,945 INFO L735 eck$LassoCheckResult]: Loop: 7013#[L709-6]don't care [673] L709-6-->L709-6: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_285| 4))) (let ((.cse1 (+ |v_~#a~0.offset_72| .cse0))) (and (<= (+ |v_~#a~0.offset_72| .cse0 4) (select |v_#length_153| |v_~#a~0.base_77|)) (= |v_ULTIMATE.start_main_~sum~0#1_121| (+ |v_ULTIMATE.start_main_~sum~0#1_122| (select (select |v_#memory_int_174| |v_~#a~0.base_77|) .cse1))) (= (select |v_#valid_224| |v_~#a~0.base_77|) 1) (< |v_ULTIMATE.start_main_~i~0#1_285| |v_ULTIMATE.start_main_~n~0#1_163|) (= (+ |v_ULTIMATE.start_main_~i~0#1_285| 1) |v_ULTIMATE.start_main_~i~0#1_284|) (<= 0 .cse1)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_285|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_122|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_163|, #valid=|v_#valid_224|, #memory_int=|v_#memory_int_174|, ~#a~0.base=|v_~#a~0.base_77|, ~#a~0.offset=|v_~#a~0.offset_72|, #length=|v_#length_153|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_284|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_121|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_163|, #valid=|v_#valid_224|, #memory_int=|v_#memory_int_174|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_68|, ~#a~0.base=|v_~#a~0.base_77|, ~#a~0.offset=|v_~#a~0.offset_72|, #length=|v_#length_153|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_68|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1, ULTIMATE.start_main_#t~post9#1, ULTIMATE.start_main_#t~mem10#1] 7013#[L709-6]don't care [2022-07-26 14:08:23,946 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:23,946 INFO L85 PathProgramCache]: Analyzing trace with hash -2033357569, now seen corresponding path program 1 times [2022-07-26 14:08:23,946 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:23,946 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1280331208] [2022-07-26 14:08:23,946 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:23,946 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:23,959 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-26 14:08:23,987 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-07-26 14:08:23,987 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-26 14:08:23,987 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1280331208] [2022-07-26 14:08:23,987 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1280331208] provided 0 perfect and 1 imperfect interpolant sequences [2022-07-26 14:08:23,987 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2038619692] [2022-07-26 14:08:23,987 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:23,987 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-26 14:08:23,987 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-26 14:08:24,020 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-26 14:08:24,021 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-07-26 14:08:24,063 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-26 14:08:24,064 INFO L263 TraceCheckSpWp]: Trace formula consists of 125 conjuncts, 8 conjunts are in the unsatisfiable core [2022-07-26 14:08:24,065 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-26 14:08:24,107 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-07-26 14:08:24,108 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-26 14:08:24,121 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-07-26 14:08:24,121 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2038619692] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-26 14:08:24,121 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-07-26 14:08:24,121 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 3, 3] total 7 [2022-07-26 14:08:24,122 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1216575402] [2022-07-26 14:08:24,122 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-07-26 14:08:24,122 INFO L738 eck$LassoCheckResult]: stem already infeasible [2022-07-26 14:08:24,122 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:24,122 INFO L85 PathProgramCache]: Analyzing trace with hash 704, now seen corresponding path program 3 times [2022-07-26 14:08:24,123 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:24,123 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1406080694] [2022-07-26 14:08:24,124 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:24,124 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:24,129 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:24,129 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 14:08:24,131 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:24,133 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 14:08:24,153 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-26 14:08:24,153 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-07-26 14:08:24,153 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=30, Unknown=0, NotChecked=0, Total=56 [2022-07-26 14:08:24,153 INFO L87 Difference]: Start difference. First operand 855 states and 2498 transitions. cyclomatic complexity: 1768 Second operand has 8 states, 8 states have (on average 3.75) internal successors, (30), 7 states have internal predecessors, (30), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-26 14:08:24,202 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-26 14:08:24,202 INFO L93 Difference]: Finished difference Result 403 states and 1231 transitions. [2022-07-26 14:08:24,202 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 403 states and 1231 transitions. [2022-07-26 14:08:24,205 INFO L131 ngComponentsAnalysis]: Automaton has 64 accepting balls. 64 [2022-07-26 14:08:24,207 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 403 states to 403 states and 1231 transitions. [2022-07-26 14:08:24,207 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 403 [2022-07-26 14:08:24,208 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 403 [2022-07-26 14:08:24,208 INFO L73 IsDeterministic]: Start isDeterministic. Operand 403 states and 1231 transitions. [2022-07-26 14:08:24,208 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-26 14:08:24,208 INFO L220 hiAutomatonCegarLoop]: Abstraction has 403 states and 1231 transitions. [2022-07-26 14:08:24,209 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 403 states and 1231 transitions. [2022-07-26 14:08:24,213 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 403 to 403. [2022-07-26 14:08:24,214 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 403 states, 403 states have (on average 3.054590570719603) internal successors, (1231), 402 states have internal predecessors, (1231), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-26 14:08:24,215 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 403 states to 403 states and 1231 transitions. [2022-07-26 14:08:24,215 INFO L242 hiAutomatonCegarLoop]: Abstraction has 403 states and 1231 transitions. [2022-07-26 14:08:24,215 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-07-26 14:08:24,216 INFO L426 stractBuchiCegarLoop]: Abstraction has 403 states and 1231 transitions. [2022-07-26 14:08:24,216 INFO L333 stractBuchiCegarLoop]: ======== Iteration 4 ============ [2022-07-26 14:08:24,216 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 403 states and 1231 transitions. [2022-07-26 14:08:24,218 INFO L131 ngComponentsAnalysis]: Automaton has 64 accepting balls. 64 [2022-07-26 14:08:24,218 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 14:08:24,218 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 14:08:24,218 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [4, 3, 3, 1, 1, 1, 1, 1] [2022-07-26 14:08:24,218 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 14:08:24,219 INFO L733 eck$LassoCheckResult]: Stem: 8995#[ULTIMATE.startENTRY]don't care [685] ULTIMATE.startENTRY-->L702-6: Formula: (let ((.cse0 (select |v_#memory_int_191| 1))) (and (= (select |v_#valid_253| 2) 1) (= 0 (select .cse0 1)) (= |v_ULTIMATE.start_main_#in~argv#1.offset_53| |v_ULTIMATE.start_main_~argv#1.offset_53|) (= (store |v_#memory_int_191| |v_~#a~0.base_85| (store ((as const (Array Int Int)) 0) |v_~#a~0.offset_80| 0)) |v_#memory_int_190|) (= |v_ULTIMATE.start_#in~argv#1.base_40| |v_ULTIMATE.start_main_#in~argv#1.base_53|) (< |v_#StackHeapBarrier_61| |v_ULTIMATE.start_main_~#t~1#1.base_149|) (= |v_ULTIMATE.start_main_#in~argv#1.base_53| |v_ULTIMATE.start_main_~argv#1.base_53|) (= (select |v_#length_170| 2) 9) (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_69| 0)) (= 48 (select .cse0 0)) (= |v_ULTIMATE.start_main_~i~0#1_302| 0) (= 0 (select |v_#valid_253| 0)) (= |v_ULTIMATE.start_#in~argc#1_40| |v_ULTIMATE.start_main_#in~argc#1_51|) (= v_~x~0_70 0) (= 2 (select |v_#length_170| 1)) (= (ite (and (<= |v_ULTIMATE.start_main_~n~0#1_179| 10) (<= 5 |v_ULTIMATE.start_main_~n~0#1_179|)) 1 0) |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_53|) (= |v_#NULL.base_32| 0) (= |v_ULTIMATE.start_main_~argc#1_49| |v_ULTIMATE.start_main_#in~argc#1_51|) (= |v_~#a~0.offset_80| 0) (= |v_#NULL.offset_32| 0) (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_69| |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_53|) (= |v_ULTIMATE.start_main_~n~0#1_179| (let ((.cse1 (mod |v_ULTIMATE.start_main_#t~nondet3#1_95| 4294967296))) (ite (<= .cse1 2147483647) .cse1 (+ .cse1 (- 4294967296))))) (= 40 (select |v_#length_170| 3)) (= |v_~#a~0.base_85| 3) (= |v_ULTIMATE.start_main_#in~argv#1.offset_53| |v_ULTIMATE.start_#in~argv#1.offset_40|) (= (select |v_#valid_253| 1) 1) (= (select |v_#valid_253| 3) 1) (= 0 |v_ULTIMATE.start_main_~#t~1#1.offset_117|) (= (select |v_#valid_253| |v_ULTIMATE.start_main_~#t~1#1.base_149|) 0) (< 0 |v_#StackHeapBarrier_61|) (= (store |v_#length_170| |v_ULTIMATE.start_main_~#t~1#1.base_149| 40) |v_#length_169|) (= (store |v_#valid_253| |v_ULTIMATE.start_main_~#t~1#1.base_149| 1) |v_#valid_252|))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_40|, #StackHeapBarrier=|v_#StackHeapBarrier_61|, #valid=|v_#valid_253|, #memory_int=|v_#memory_int_191|, #length=|v_#length_170|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_40|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_40|} OutVars{ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_117|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_60|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_149|, #NULL.offset=|v_#NULL.offset_32|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_53|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_53|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_40|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_302|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_51|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_135|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_179|, ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_69|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_76|, #length=|v_#length_169|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_71|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_40|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_40|, ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_49|, ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_86|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_53|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_53|, ~#a~0.base=|v_~#a~0.base_85|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_78|, #NULL.base=|v_#NULL.base_32|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_83|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_53|, #StackHeapBarrier=|v_#StackHeapBarrier_61|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_94|, #valid=|v_#valid_252|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_61|, #memory_int=|v_#memory_int_190|, ~#a~0.offset=|v_~#a~0.offset_80|, ~x~0=v_~x~0_70, ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_53|} AuxVars[|v_ULTIMATE.start_main_#t~nondet3#1_95|] AssignedVars[ULTIMATE.start_main_~#t~1#1.offset, ULTIMATE.start_main_#t~mem8#1, ULTIMATE.start_main_~#t~1#1.base, #NULL.offset, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_~sum~0#1, ULTIMATE.start_main_~n~0#1, ULTIMATE.start_assume_abort_if_not_~cond#1, ULTIMATE.start_main_#t~post9#1, #length, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#res#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#in~argv#1.offset, ~#a~0.base, ULTIMATE.start_main_#t~mem10#1, #NULL.base, ULTIMATE.start_main_#t~pre5#1, ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#t~nondet3#1, #valid, ULTIMATE.start_main_#t~post7#1, #memory_int, ~#a~0.offset, ~x~0, ULTIMATE.start_assume_abort_if_not_#in~cond#1] 8981#[L702-6]don't care [661] L702-6-->L703-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_272| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~1#1.offset_95| .cse0))) (and (<= (+ |v_ULTIMATE.start_main_~#t~1#1.offset_95| .cse0 4) (select |v_#length_147| |v_ULTIMATE.start_main_~#t~1#1.base_119|)) (= |v_#pthreadsForks_43| |v_ULTIMATE.start_main_#t~pre5#1_75|) (= |v_#pthreadsForks_42| (+ |v_#pthreadsForks_43| 1)) (<= 0 .cse1) (= (store |v_#memory_int_161| |v_ULTIMATE.start_main_~#t~1#1.base_119| (store (select |v_#memory_int_161| |v_ULTIMATE.start_main_~#t~1#1.base_119|) .cse1 |v_ULTIMATE.start_main_#t~pre5#1_75|)) |v_#memory_int_160|) (< |v_ULTIMATE.start_main_~i~0#1_272| |v_ULTIMATE.start_main_~n~0#1_155|) (= (select |v_#valid_210| |v_ULTIMATE.start_main_~#t~1#1.base_119|) 1)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_272|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_95|, #pthreadsForks=|v_#pthreadsForks_43|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_155|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_119|, #valid=|v_#valid_210|, #memory_int=|v_#memory_int_161|, #length=|v_#length_147|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_75|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_272|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_95|, #pthreadsForks=|v_#pthreadsForks_42|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_155|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_119|, #valid=|v_#valid_210|, #memory_int=|v_#memory_int_160|, #length=|v_#length_147|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 8983#[L703-3]don't care [595] L703-3-->thrENTRY: Formula: (and (= v_thrThread1of3ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_64|) (= |v_thrThread1of3ForFork0_#in~arg.base_4| 0) (= |v_thrThread1of3ForFork0_#in~arg.offset_4| 0)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_64|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_64|, thrThread1of3ForFork0_#in~arg.offset=|v_thrThread1of3ForFork0_#in~arg.offset_4|, thrThread1of3ForFork0_~t~0=v_thrThread1of3ForFork0_~t~0_8, thrThread1of3ForFork0_#res.offset=|v_thrThread1of3ForFork0_#res.offset_2|, thrThread1of3ForFork0_#in~arg.base=|v_thrThread1of3ForFork0_#in~arg.base_4|, thrThread1of3ForFork0_#res.base=|v_thrThread1of3ForFork0_#res.base_2|, thrThread1of3ForFork0_~arg.base=v_thrThread1of3ForFork0_~arg.base_4, thrThread1of3ForFork0_thidvar0=v_thrThread1of3ForFork0_thidvar0_2, thrThread1of3ForFork0_~arg.offset=v_thrThread1of3ForFork0_~arg.offset_4} AuxVars[] AssignedVars[thrThread1of3ForFork0_#in~arg.offset, thrThread1of3ForFork0_~t~0, thrThread1of3ForFork0_#res.offset, thrThread1of3ForFork0_#in~arg.base, thrThread1of3ForFork0_#res.base, thrThread1of3ForFork0_~arg.base, thrThread1of3ForFork0_thidvar0, thrThread1of3ForFork0_~arg.offset] 8903#[L703-4, thrENTRY]don't care [541] L703-4-->L703-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1] 8907#[thrENTRY, L703-5]don't care [662] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_275| 1) |v_ULTIMATE.start_main_~i~0#1_274|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_275|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_274|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_45|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_61|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#t~post4#1] 8753#[L702-6, thrENTRY]don't care [661] L702-6-->L703-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_272| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~1#1.offset_95| .cse0))) (and (<= (+ |v_ULTIMATE.start_main_~#t~1#1.offset_95| .cse0 4) (select |v_#length_147| |v_ULTIMATE.start_main_~#t~1#1.base_119|)) (= |v_#pthreadsForks_43| |v_ULTIMATE.start_main_#t~pre5#1_75|) (= |v_#pthreadsForks_42| (+ |v_#pthreadsForks_43| 1)) (<= 0 .cse1) (= (store |v_#memory_int_161| |v_ULTIMATE.start_main_~#t~1#1.base_119| (store (select |v_#memory_int_161| |v_ULTIMATE.start_main_~#t~1#1.base_119|) .cse1 |v_ULTIMATE.start_main_#t~pre5#1_75|)) |v_#memory_int_160|) (< |v_ULTIMATE.start_main_~i~0#1_272| |v_ULTIMATE.start_main_~n~0#1_155|) (= (select |v_#valid_210| |v_ULTIMATE.start_main_~#t~1#1.base_119|) 1)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_272|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_95|, #pthreadsForks=|v_#pthreadsForks_43|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_155|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_119|, #valid=|v_#valid_210|, #memory_int=|v_#memory_int_161|, #length=|v_#length_147|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_75|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_272|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_95|, #pthreadsForks=|v_#pthreadsForks_42|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_155|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_119|, #valid=|v_#valid_210|, #memory_int=|v_#memory_int_160|, #length=|v_#length_147|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 8755#[L703-3, thrENTRY]don't care [596] L703-3-->thrENTRY: Formula: (and (= v_thrThread2of3ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_66|) (= |v_thrThread2of3ForFork0_#in~arg.offset_4| 0) (= |v_thrThread2of3ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_66|} OutVars{thrThread2of3ForFork0_#res.offset=|v_thrThread2of3ForFork0_#res.offset_2|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_66|, thrThread2of3ForFork0_~arg.offset=v_thrThread2of3ForFork0_~arg.offset_4, thrThread2of3ForFork0_#res.base=|v_thrThread2of3ForFork0_#res.base_2|, thrThread2of3ForFork0_~t~0=v_thrThread2of3ForFork0_~t~0_8, thrThread2of3ForFork0_thidvar0=v_thrThread2of3ForFork0_thidvar0_2, thrThread2of3ForFork0_#in~arg.offset=|v_thrThread2of3ForFork0_#in~arg.offset_4|, thrThread2of3ForFork0_#in~arg.base=|v_thrThread2of3ForFork0_#in~arg.base_4|, thrThread2of3ForFork0_~arg.base=v_thrThread2of3ForFork0_~arg.base_4} AuxVars[] AssignedVars[thrThread2of3ForFork0_#res.offset, thrThread2of3ForFork0_~arg.offset, thrThread2of3ForFork0_#res.base, thrThread2of3ForFork0_~t~0, thrThread2of3ForFork0_thidvar0, thrThread2of3ForFork0_#in~arg.offset, thrThread2of3ForFork0_#in~arg.base, thrThread2of3ForFork0_~arg.base] 8289#[thrENTRY, thrENTRY, L703-4]don't care [541] L703-4-->L703-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1] 8295#[thrENTRY, thrENTRY, L703-5]don't care [662] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_275| 1) |v_ULTIMATE.start_main_~i~0#1_274|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_275|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_274|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_45|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_61|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#t~post4#1] 8655#[thrENTRY, thrENTRY, L702-6]don't care [661] L702-6-->L703-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_272| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~1#1.offset_95| .cse0))) (and (<= (+ |v_ULTIMATE.start_main_~#t~1#1.offset_95| .cse0 4) (select |v_#length_147| |v_ULTIMATE.start_main_~#t~1#1.base_119|)) (= |v_#pthreadsForks_43| |v_ULTIMATE.start_main_#t~pre5#1_75|) (= |v_#pthreadsForks_42| (+ |v_#pthreadsForks_43| 1)) (<= 0 .cse1) (= (store |v_#memory_int_161| |v_ULTIMATE.start_main_~#t~1#1.base_119| (store (select |v_#memory_int_161| |v_ULTIMATE.start_main_~#t~1#1.base_119|) .cse1 |v_ULTIMATE.start_main_#t~pre5#1_75|)) |v_#memory_int_160|) (< |v_ULTIMATE.start_main_~i~0#1_272| |v_ULTIMATE.start_main_~n~0#1_155|) (= (select |v_#valid_210| |v_ULTIMATE.start_main_~#t~1#1.base_119|) 1)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_272|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_95|, #pthreadsForks=|v_#pthreadsForks_43|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_155|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_119|, #valid=|v_#valid_210|, #memory_int=|v_#memory_int_161|, #length=|v_#length_147|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_75|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_272|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_95|, #pthreadsForks=|v_#pthreadsForks_42|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_155|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_119|, #valid=|v_#valid_210|, #memory_int=|v_#memory_int_160|, #length=|v_#length_147|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 8621#[L703-3, thrENTRY, thrENTRY]don't care [597] L703-3-->thrENTRY: Formula: (and (= v_thrThread3of3ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_68|) (= |v_thrThread3of3ForFork0_#in~arg.base_4| 0) (= |v_thrThread3of3ForFork0_#in~arg.offset_4| 0)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_68|} OutVars{thrThread3of3ForFork0_#res.base=|v_thrThread3of3ForFork0_#res.base_2|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_68|, thrThread3of3ForFork0_#in~arg.base=|v_thrThread3of3ForFork0_#in~arg.base_4|, thrThread3of3ForFork0_#res.offset=|v_thrThread3of3ForFork0_#res.offset_2|, thrThread3of3ForFork0_~arg.offset=v_thrThread3of3ForFork0_~arg.offset_4, thrThread3of3ForFork0_~t~0=v_thrThread3of3ForFork0_~t~0_8, thrThread3of3ForFork0_#in~arg.offset=|v_thrThread3of3ForFork0_#in~arg.offset_4|, thrThread3of3ForFork0_thidvar0=v_thrThread3of3ForFork0_thidvar0_2, thrThread3of3ForFork0_~arg.base=v_thrThread3of3ForFork0_~arg.base_4} AuxVars[] AssignedVars[thrThread3of3ForFork0_#res.base, thrThread3of3ForFork0_#in~arg.base, thrThread3of3ForFork0_#res.offset, thrThread3of3ForFork0_~arg.offset, thrThread3of3ForFork0_~t~0, thrThread3of3ForFork0_#in~arg.offset, thrThread3of3ForFork0_thidvar0, thrThread3of3ForFork0_~arg.base] 8389#[thrENTRY, thrENTRY, L703-4, thrENTRY]don't care [541] L703-4-->L703-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1] 8397#[thrENTRY, thrENTRY, L703-5, thrENTRY]don't care [662] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_275| 1) |v_ULTIMATE.start_main_~i~0#1_274|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_275|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_274|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_45|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_61|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#t~post4#1] 8523#[thrENTRY, thrENTRY, L702-6, thrENTRY]don't care [661] L702-6-->L703-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_272| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~1#1.offset_95| .cse0))) (and (<= (+ |v_ULTIMATE.start_main_~#t~1#1.offset_95| .cse0 4) (select |v_#length_147| |v_ULTIMATE.start_main_~#t~1#1.base_119|)) (= |v_#pthreadsForks_43| |v_ULTIMATE.start_main_#t~pre5#1_75|) (= |v_#pthreadsForks_42| (+ |v_#pthreadsForks_43| 1)) (<= 0 .cse1) (= (store |v_#memory_int_161| |v_ULTIMATE.start_main_~#t~1#1.base_119| (store (select |v_#memory_int_161| |v_ULTIMATE.start_main_~#t~1#1.base_119|) .cse1 |v_ULTIMATE.start_main_#t~pre5#1_75|)) |v_#memory_int_160|) (< |v_ULTIMATE.start_main_~i~0#1_272| |v_ULTIMATE.start_main_~n~0#1_155|) (= (select |v_#valid_210| |v_ULTIMATE.start_main_~#t~1#1.base_119|) 1)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_272|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_95|, #pthreadsForks=|v_#pthreadsForks_43|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_155|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_119|, #valid=|v_#valid_210|, #memory_int=|v_#memory_int_161|, #length=|v_#length_147|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_75|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_272|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_95|, #pthreadsForks=|v_#pthreadsForks_42|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_155|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_119|, #valid=|v_#valid_210|, #memory_int=|v_#memory_int_160|, #length=|v_#length_147|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 8453#[thrENTRY, thrENTRY, L703-3, thrENTRY]don't care [593] L703-3-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 8455#[thrENTRY, thrENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, thrENTRY]don't care [2022-07-26 14:08:24,220 INFO L735 eck$LassoCheckResult]: Loop: 8455#[thrENTRY, thrENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, thrENTRY]don't care [594] ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 8455#[thrENTRY, thrENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, thrENTRY]don't care [2022-07-26 14:08:24,220 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:24,220 INFO L85 PathProgramCache]: Analyzing trace with hash -190037168, now seen corresponding path program 1 times [2022-07-26 14:08:24,220 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:24,220 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1194862516] [2022-07-26 14:08:24,220 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:24,220 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:24,236 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:24,236 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 14:08:24,250 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:24,257 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 14:08:24,258 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:24,258 INFO L85 PathProgramCache]: Analyzing trace with hash 625, now seen corresponding path program 1 times [2022-07-26 14:08:24,258 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:24,258 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1871781022] [2022-07-26 14:08:24,258 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:24,259 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:24,261 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:24,261 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 14:08:24,262 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:24,263 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 14:08:24,263 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:24,263 INFO L85 PathProgramCache]: Analyzing trace with hash -1596184318, now seen corresponding path program 1 times [2022-07-26 14:08:24,263 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:24,263 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [5043254] [2022-07-26 14:08:24,263 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:24,263 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:24,275 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:24,276 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 14:08:24,288 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:24,292 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 14:08:25,182 WARN L146 chiAutomizerObserver]: 3 thread instances were not sufficient, I will increase this number and restart the analysis [2022-07-26 14:08:25,193 INFO L144 ThreadInstanceAdder]: Constructed 4 joinOtherThreadTransitions. [2022-07-26 14:08:25,195 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 107 places, 109 transitions, 262 flow [2022-07-26 14:08:25,230 INFO L129 PetriNetUnfolder]: 92/686 cut-off events. [2022-07-26 14:08:25,230 INFO L130 PetriNetUnfolder]: For 48/48 co-relation queries the response was YES. [2022-07-26 14:08:25,231 INFO L84 FinitePrefix]: Finished finitePrefix Result has 741 conditions, 686 events. 92/686 cut-off events. For 48/48 co-relation queries the response was YES. Maximal size of possible extension queue 14. Compared 2935 event pairs, 6 based on Foata normal form. 0/595 useless extension candidates. Maximal degree in co-relation 395. Up to 32 conditions per place. [2022-07-26 14:08:25,231 INFO L82 GeneralOperation]: Start removeDead. Operand has 107 places, 109 transitions, 262 flow [2022-07-26 14:08:25,236 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 107 places, 109 transitions, 262 flow [2022-07-26 14:08:25,236 INFO L124 etLargeBlockEncoding]: Petri net LBE is using variable-based independence relation. [2022-07-26 14:08:25,236 INFO L131 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 107 places, 109 transitions, 262 flow [2022-07-26 14:08:25,236 INFO L110 LiptonReduction]: Starting Lipton reduction on Petri net that has 107 places, 109 transitions, 262 flow [2022-07-26 14:08:25,236 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 107 places, 109 transitions, 262 flow [2022-07-26 14:08:25,269 INFO L129 PetriNetUnfolder]: 92/686 cut-off events. [2022-07-26 14:08:25,269 INFO L130 PetriNetUnfolder]: For 48/48 co-relation queries the response was YES. [2022-07-26 14:08:25,270 INFO L84 FinitePrefix]: Finished finitePrefix Result has 741 conditions, 686 events. 92/686 cut-off events. For 48/48 co-relation queries the response was YES. Maximal size of possible extension queue 14. Compared 2872 event pairs, 6 based on Foata normal form. 0/595 useless extension candidates. Maximal degree in co-relation 395. Up to 32 conditions per place. [2022-07-26 14:08:25,276 INFO L116 LiptonReduction]: Number of co-enabled transitions 2400 [2022-07-26 14:08:27,039 INFO L131 LiptonReduction]: Checked pairs total: 8469 [2022-07-26 14:08:27,039 INFO L133 LiptonReduction]: Total number of compositions: 89 [2022-07-26 14:08:27,040 INFO L301 stractBuchiCegarLoop]: Interprodecural is true [2022-07-26 14:08:27,040 INFO L302 stractBuchiCegarLoop]: Hoare is false [2022-07-26 14:08:27,040 INFO L303 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2022-07-26 14:08:27,040 INFO L304 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2022-07-26 14:08:27,040 INFO L305 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2022-07-26 14:08:27,040 INFO L306 stractBuchiCegarLoop]: Difference is false [2022-07-26 14:08:27,040 INFO L307 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2022-07-26 14:08:27,040 INFO L311 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2022-07-26 14:08:27,040 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 0 states, but on-demand construction may add more states [2022-07-26 14:08:27,296 INFO L131 ngComponentsAnalysis]: Automaton has 881 accepting balls. 881 [2022-07-26 14:08:27,296 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 14:08:27,296 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 14:08:27,296 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2022-07-26 14:08:27,296 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 14:08:27,296 INFO L333 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2022-07-26 14:08:27,296 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 4856 states, but on-demand construction may add more states [2022-07-26 14:08:27,351 INFO L131 ngComponentsAnalysis]: Automaton has 881 accepting balls. 881 [2022-07-26 14:08:27,351 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 14:08:27,351 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 14:08:27,352 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2022-07-26 14:08:27,352 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 14:08:27,352 INFO L733 eck$LassoCheckResult]: Stem: 110#[ULTIMATE.startENTRY]don't care [890] ULTIMATE.startENTRY-->L702-6: Formula: (let ((.cse0 (select |v_#memory_int_257| 1))) (and (= |v_ULTIMATE.start_main_#in~argv#1.base_76| |v_ULTIMATE.start_main_~argv#1.base_74|) (= |v_#NULL.offset_37| 0) (= (store |v_#memory_int_257| |v_~#a~0.base_111| (store ((as const (Array Int Int)) 0) |v_~#a~0.offset_106| 0)) |v_#memory_int_256|) (= (select |v_#valid_352| 2) 1) (= (select |v_#length_237| 1) 2) (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_98| |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_76|) (= (store |v_#length_237| |v_ULTIMATE.start_main_~#t~1#1.base_202| 40) |v_#length_236|) (= |v_ULTIMATE.start_main_#in~argv#1.offset_76| |v_ULTIMATE.start_main_~argv#1.offset_74|) (= |v_#NULL.base_37| 0) (= 0 |v_ULTIMATE.start_main_~#t~1#1.offset_158|) (= (select |v_#valid_352| 3) 1) (= |v_ULTIMATE.start_main_~argc#1_70| |v_ULTIMATE.start_main_#in~argc#1_74|) (= |v_ULTIMATE.start_main_~i~0#1_413| 0) (= 40 (select |v_#length_237| 3)) (= |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_76| (ite (and (<= 5 |v_ULTIMATE.start_main_~n~0#1_239|) (<= |v_ULTIMATE.start_main_~n~0#1_239| 10)) 1 0)) (= |v_ULTIMATE.start_#in~argv#1.base_51| |v_ULTIMATE.start_main_#in~argv#1.base_76|) (= (select .cse0 1) 0) (= 3 |v_~#a~0.base_111|) (= v_~x~0_100 0) (= (store |v_#valid_352| |v_ULTIMATE.start_main_~#t~1#1.base_202| 1) |v_#valid_351|) (< 0 |v_#StackHeapBarrier_88|) (= |v_ULTIMATE.start_main_#in~argv#1.offset_76| |v_ULTIMATE.start_#in~argv#1.offset_51|) (= (select |v_#valid_352| 1) 1) (= |v_~#a~0.offset_106| 0) (= |v_ULTIMATE.start_#in~argc#1_51| |v_ULTIMATE.start_main_#in~argc#1_74|) (= (select |v_#valid_352| 0) 0) (< |v_#StackHeapBarrier_88| |v_ULTIMATE.start_main_~#t~1#1.base_202|) (= (select |v_#valid_352| |v_ULTIMATE.start_main_~#t~1#1.base_202|) 0) (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_98| 0)) (= |v_ULTIMATE.start_main_~n~0#1_239| (let ((.cse1 (mod |v_ULTIMATE.start_main_#t~nondet3#1_142| 4294967296))) (ite (<= .cse1 2147483647) .cse1 (+ .cse1 (- 4294967296))))) (= (select .cse0 0) 48) (= (select |v_#length_237| 2) 9))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_51|, #StackHeapBarrier=|v_#StackHeapBarrier_88|, #valid=|v_#valid_352|, #memory_int=|v_#memory_int_257|, #length=|v_#length_237|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_51|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_51|} OutVars{ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_158|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_89|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_202|, #NULL.offset=|v_#NULL.offset_37|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_74|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_74|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_51|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_413|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_74|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_184|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_239|, ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_98|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_108|, #length=|v_#length_236|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_103|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_51|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_51|, ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_70|, ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_125|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_79|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_76|, ~#a~0.base=|v_~#a~0.base_111|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_110|, #NULL.base=|v_#NULL.base_37|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_125|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_76|, #StackHeapBarrier=|v_#StackHeapBarrier_88|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_141|, #valid=|v_#valid_351|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_87|, #memory_int=|v_#memory_int_256|, ~#a~0.offset=|v_~#a~0.offset_106|, ~x~0=v_~x~0_100, ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_76|} AuxVars[|v_ULTIMATE.start_main_#t~nondet3#1_142|] AssignedVars[ULTIMATE.start_main_~#t~1#1.offset, ULTIMATE.start_main_#t~mem8#1, ULTIMATE.start_main_~#t~1#1.base, #NULL.offset, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_~sum~0#1, ULTIMATE.start_main_~n~0#1, ULTIMATE.start_assume_abort_if_not_~cond#1, ULTIMATE.start_main_#t~post9#1, #length, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#res#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#in~argv#1.offset, ~#a~0.base, ULTIMATE.start_main_#t~mem10#1, #NULL.base, ULTIMATE.start_main_#t~pre5#1, ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#t~nondet3#1, #valid, ULTIMATE.start_main_#t~post7#1, #memory_int, ~#a~0.offset, ~x~0, ULTIMATE.start_assume_abort_if_not_#in~cond#1] 113#[L702-6]don't care [848] L702-6-->L705-5: Formula: (and (= |v_ULTIMATE.start_main_~i~0#1_Out_26| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_In_29| |v_ULTIMATE.start_main_~n~0#1_In_33|))) InVars {ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_In_33|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_In_29|} OutVars{ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_In_33|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_Out_26|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] 115#[L705-5]don't care [858] L705-5-->L709-6: Formula: (and (= |v_ULTIMATE.start_main_~sum~0#1_154| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_366| |v_ULTIMATE.start_main_~n~0#1_209|)) (= |v_ULTIMATE.start_main_~i~0#1_365| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_366|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_209|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_365|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_154|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_209|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1] 121#[L709-6]don't care [2022-07-26 14:08:27,352 INFO L735 eck$LassoCheckResult]: Loop: 121#[L709-6]don't care [869] L709-6-->L709-6: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_382| 4))) (let ((.cse1 (+ |v_~#a~0.offset_98| .cse0))) (and (<= (+ |v_~#a~0.offset_98| .cse0 4) (select |v_#length_210| |v_~#a~0.base_103|)) (= (select |v_#valid_303| |v_~#a~0.base_103|) 1) (<= 0 .cse1) (< |v_ULTIMATE.start_main_~i~0#1_382| |v_ULTIMATE.start_main_~n~0#1_213|) (= (+ |v_ULTIMATE.start_main_~sum~0#1_163| (select (select |v_#memory_int_242| |v_~#a~0.base_103|) .cse1)) |v_ULTIMATE.start_main_~sum~0#1_162|) (= |v_ULTIMATE.start_main_~i~0#1_381| (+ |v_ULTIMATE.start_main_~i~0#1_382| 1))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_382|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_163|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_213|, #valid=|v_#valid_303|, #memory_int=|v_#memory_int_242|, ~#a~0.base=|v_~#a~0.base_103|, ~#a~0.offset=|v_~#a~0.offset_98|, #length=|v_#length_210|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_381|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_162|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_213|, #valid=|v_#valid_303|, #memory_int=|v_#memory_int_242|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_96|, ~#a~0.base=|v_~#a~0.base_103|, ~#a~0.offset=|v_~#a~0.offset_98|, #length=|v_#length_210|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_96|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1, ULTIMATE.start_main_#t~post9#1, ULTIMATE.start_main_#t~mem10#1] 121#[L709-6]don't care [2022-07-26 14:08:27,353 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:27,353 INFO L85 PathProgramCache]: Analyzing trace with hash 912227, now seen corresponding path program 1 times [2022-07-26 14:08:27,353 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:27,353 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1610039583] [2022-07-26 14:08:27,353 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:27,353 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:27,363 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-26 14:08:27,374 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-26 14:08:27,374 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-26 14:08:27,376 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1610039583] [2022-07-26 14:08:27,376 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1610039583] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-26 14:08:27,376 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-26 14:08:27,376 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-07-26 14:08:27,376 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1149408407] [2022-07-26 14:08:27,376 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-26 14:08:27,376 INFO L738 eck$LassoCheckResult]: stem already infeasible [2022-07-26 14:08:27,377 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:27,377 INFO L85 PathProgramCache]: Analyzing trace with hash 900, now seen corresponding path program 1 times [2022-07-26 14:08:27,377 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:27,377 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1802748363] [2022-07-26 14:08:27,377 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:27,377 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:27,380 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:27,380 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 14:08:27,382 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:27,383 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 14:08:27,405 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-26 14:08:27,405 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-07-26 14:08:27,405 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-07-26 14:08:27,406 INFO L87 Difference]: Start difference. First operand currently 4856 states, but on-demand construction may add more states Second operand has 3 states, 3 states have (on average 1.0) internal successors, (3), 2 states have internal predecessors, (3), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-26 14:08:27,474 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-26 14:08:27,474 INFO L93 Difference]: Finished difference Result 4857 states and 17685 transitions. [2022-07-26 14:08:27,474 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 4857 states and 17685 transitions. [2022-07-26 14:08:27,517 INFO L131 ngComponentsAnalysis]: Automaton has 881 accepting balls. 881 [2022-07-26 14:08:27,558 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 4857 states to 4231 states and 15559 transitions. [2022-07-26 14:08:27,558 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 4231 [2022-07-26 14:08:27,570 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 4231 [2022-07-26 14:08:27,570 INFO L73 IsDeterministic]: Start isDeterministic. Operand 4231 states and 15559 transitions. [2022-07-26 14:08:27,579 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-26 14:08:27,579 INFO L220 hiAutomatonCegarLoop]: Abstraction has 4231 states and 15559 transitions. [2022-07-26 14:08:27,588 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 4231 states and 15559 transitions. [2022-07-26 14:08:27,656 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 4231 to 4231. [2022-07-26 14:08:27,666 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4231 states, 4231 states have (on average 3.677381233750886) internal successors, (15559), 4230 states have internal predecessors, (15559), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-26 14:08:27,681 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4231 states to 4231 states and 15559 transitions. [2022-07-26 14:08:27,681 INFO L242 hiAutomatonCegarLoop]: Abstraction has 4231 states and 15559 transitions. [2022-07-26 14:08:27,681 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-07-26 14:08:27,682 INFO L426 stractBuchiCegarLoop]: Abstraction has 4231 states and 15559 transitions. [2022-07-26 14:08:27,682 INFO L333 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2022-07-26 14:08:27,682 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 4231 states and 15559 transitions. [2022-07-26 14:08:27,705 INFO L131 ngComponentsAnalysis]: Automaton has 881 accepting balls. 881 [2022-07-26 14:08:27,705 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 14:08:27,705 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 14:08:27,705 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1] [2022-07-26 14:08:27,705 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 14:08:27,706 INFO L733 eck$LassoCheckResult]: Stem: 22974#[ULTIMATE.startENTRY]don't care [890] ULTIMATE.startENTRY-->L702-6: Formula: (let ((.cse0 (select |v_#memory_int_257| 1))) (and (= |v_ULTIMATE.start_main_#in~argv#1.base_76| |v_ULTIMATE.start_main_~argv#1.base_74|) (= |v_#NULL.offset_37| 0) (= (store |v_#memory_int_257| |v_~#a~0.base_111| (store ((as const (Array Int Int)) 0) |v_~#a~0.offset_106| 0)) |v_#memory_int_256|) (= (select |v_#valid_352| 2) 1) (= (select |v_#length_237| 1) 2) (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_98| |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_76|) (= (store |v_#length_237| |v_ULTIMATE.start_main_~#t~1#1.base_202| 40) |v_#length_236|) (= |v_ULTIMATE.start_main_#in~argv#1.offset_76| |v_ULTIMATE.start_main_~argv#1.offset_74|) (= |v_#NULL.base_37| 0) (= 0 |v_ULTIMATE.start_main_~#t~1#1.offset_158|) (= (select |v_#valid_352| 3) 1) (= |v_ULTIMATE.start_main_~argc#1_70| |v_ULTIMATE.start_main_#in~argc#1_74|) (= |v_ULTIMATE.start_main_~i~0#1_413| 0) (= 40 (select |v_#length_237| 3)) (= |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_76| (ite (and (<= 5 |v_ULTIMATE.start_main_~n~0#1_239|) (<= |v_ULTIMATE.start_main_~n~0#1_239| 10)) 1 0)) (= |v_ULTIMATE.start_#in~argv#1.base_51| |v_ULTIMATE.start_main_#in~argv#1.base_76|) (= (select .cse0 1) 0) (= 3 |v_~#a~0.base_111|) (= v_~x~0_100 0) (= (store |v_#valid_352| |v_ULTIMATE.start_main_~#t~1#1.base_202| 1) |v_#valid_351|) (< 0 |v_#StackHeapBarrier_88|) (= |v_ULTIMATE.start_main_#in~argv#1.offset_76| |v_ULTIMATE.start_#in~argv#1.offset_51|) (= (select |v_#valid_352| 1) 1) (= |v_~#a~0.offset_106| 0) (= |v_ULTIMATE.start_#in~argc#1_51| |v_ULTIMATE.start_main_#in~argc#1_74|) (= (select |v_#valid_352| 0) 0) (< |v_#StackHeapBarrier_88| |v_ULTIMATE.start_main_~#t~1#1.base_202|) (= (select |v_#valid_352| |v_ULTIMATE.start_main_~#t~1#1.base_202|) 0) (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_98| 0)) (= |v_ULTIMATE.start_main_~n~0#1_239| (let ((.cse1 (mod |v_ULTIMATE.start_main_#t~nondet3#1_142| 4294967296))) (ite (<= .cse1 2147483647) .cse1 (+ .cse1 (- 4294967296))))) (= (select .cse0 0) 48) (= (select |v_#length_237| 2) 9))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_51|, #StackHeapBarrier=|v_#StackHeapBarrier_88|, #valid=|v_#valid_352|, #memory_int=|v_#memory_int_257|, #length=|v_#length_237|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_51|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_51|} OutVars{ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_158|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_89|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_202|, #NULL.offset=|v_#NULL.offset_37|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_74|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_74|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_51|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_413|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_74|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_184|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_239|, ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_98|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_108|, #length=|v_#length_236|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_103|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_51|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_51|, ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_70|, ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_125|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_79|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_76|, ~#a~0.base=|v_~#a~0.base_111|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_110|, #NULL.base=|v_#NULL.base_37|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_125|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_76|, #StackHeapBarrier=|v_#StackHeapBarrier_88|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_141|, #valid=|v_#valid_351|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_87|, #memory_int=|v_#memory_int_256|, ~#a~0.offset=|v_~#a~0.offset_106|, ~x~0=v_~x~0_100, ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_76|} AuxVars[|v_ULTIMATE.start_main_#t~nondet3#1_142|] AssignedVars[ULTIMATE.start_main_~#t~1#1.offset, ULTIMATE.start_main_#t~mem8#1, ULTIMATE.start_main_~#t~1#1.base, #NULL.offset, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_~sum~0#1, ULTIMATE.start_main_~n~0#1, ULTIMATE.start_assume_abort_if_not_~cond#1, ULTIMATE.start_main_#t~post9#1, #length, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#res#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#in~argv#1.offset, ~#a~0.base, ULTIMATE.start_main_#t~mem10#1, #NULL.base, ULTIMATE.start_main_#t~pre5#1, ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#t~nondet3#1, #valid, ULTIMATE.start_main_#t~post7#1, #memory_int, ~#a~0.offset, ~x~0, ULTIMATE.start_assume_abort_if_not_#in~cond#1] 22976#[L702-6]don't care [854] L702-6-->L703-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_359| 4))) (let ((.cse1 (+ .cse0 |v_ULTIMATE.start_main_~#t~1#1.offset_132|))) (and (= (+ |v_#pthreadsForks_60| 1) |v_#pthreadsForks_59|) (<= (+ .cse0 4 |v_ULTIMATE.start_main_~#t~1#1.offset_132|) (select |v_#length_198| |v_ULTIMATE.start_main_~#t~1#1.base_166|)) (= (select |v_#valid_287| |v_ULTIMATE.start_main_~#t~1#1.base_166|) 1) (<= 0 .cse1) (= (store |v_#memory_int_223| |v_ULTIMATE.start_main_~#t~1#1.base_166| (store (select |v_#memory_int_223| |v_ULTIMATE.start_main_~#t~1#1.base_166|) .cse1 |v_ULTIMATE.start_main_#t~pre5#1_113|)) |v_#memory_int_222|) (< |v_ULTIMATE.start_main_~i~0#1_359| |v_ULTIMATE.start_main_~n~0#1_207|) (= |v_#pthreadsForks_60| |v_ULTIMATE.start_main_#t~pre5#1_113|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_359|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_132|, #pthreadsForks=|v_#pthreadsForks_60|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_207|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_166|, #valid=|v_#valid_287|, #memory_int=|v_#memory_int_223|, #length=|v_#length_198|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_113|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_359|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_132|, #pthreadsForks=|v_#pthreadsForks_59|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_207|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_166|, #valid=|v_#valid_287|, #memory_int=|v_#memory_int_222|, #length=|v_#length_198|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 23140#[L703-3]don't care [794] L703-3-->thrENTRY: Formula: (and (= |v_thrThread1of4ForFork0_#in~arg.base_4| 0) (= |v_thrThread1of4ForFork0_#in~arg.offset_4| 0) (= v_thrThread1of4ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_98|)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_98|} OutVars{thrThread1of4ForFork0_~arg.base=v_thrThread1of4ForFork0_~arg.base_4, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_98|, thrThread1of4ForFork0_#in~arg.offset=|v_thrThread1of4ForFork0_#in~arg.offset_4|, thrThread1of4ForFork0_#res.base=|v_thrThread1of4ForFork0_#res.base_2|, thrThread1of4ForFork0_~t~0=v_thrThread1of4ForFork0_~t~0_8, thrThread1of4ForFork0_~arg.offset=v_thrThread1of4ForFork0_~arg.offset_4, thrThread1of4ForFork0_thidvar0=v_thrThread1of4ForFork0_thidvar0_2, thrThread1of4ForFork0_#in~arg.base=|v_thrThread1of4ForFork0_#in~arg.base_4|, thrThread1of4ForFork0_#res.offset=|v_thrThread1of4ForFork0_#res.offset_2|} AuxVars[] AssignedVars[thrThread1of4ForFork0_~arg.base, thrThread1of4ForFork0_#in~arg.offset, thrThread1of4ForFork0_#res.base, thrThread1of4ForFork0_~t~0, thrThread1of4ForFork0_~arg.offset, thrThread1of4ForFork0_thidvar0, thrThread1of4ForFork0_#in~arg.base, thrThread1of4ForFork0_#res.offset] 22736#[L703-4, thrENTRY]don't care [735] L703-4-->L703-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1] 22740#[L703-5, thrENTRY]don't care [857] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_362| 1) |v_ULTIMATE.start_main_~i~0#1_361|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_362|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_361|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_67|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_89|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#t~post4#1] 22872#[L702-6, thrENTRY]don't care [848] L702-6-->L705-5: Formula: (and (= |v_ULTIMATE.start_main_~i~0#1_Out_26| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_In_29| |v_ULTIMATE.start_main_~n~0#1_In_33|))) InVars {ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_In_33|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_In_29|} OutVars{ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_In_33|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_Out_26|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] 22906#[L705-5, thrENTRY]don't care [858] L705-5-->L709-6: Formula: (and (= |v_ULTIMATE.start_main_~sum~0#1_154| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_366| |v_ULTIMATE.start_main_~n~0#1_209|)) (= |v_ULTIMATE.start_main_~i~0#1_365| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_366|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_209|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_365|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_154|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_209|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1] 15314#[L709-6, thrENTRY]don't care [2022-07-26 14:08:27,706 INFO L735 eck$LassoCheckResult]: Loop: 15314#[L709-6, thrENTRY]don't care [869] L709-6-->L709-6: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_382| 4))) (let ((.cse1 (+ |v_~#a~0.offset_98| .cse0))) (and (<= (+ |v_~#a~0.offset_98| .cse0 4) (select |v_#length_210| |v_~#a~0.base_103|)) (= (select |v_#valid_303| |v_~#a~0.base_103|) 1) (<= 0 .cse1) (< |v_ULTIMATE.start_main_~i~0#1_382| |v_ULTIMATE.start_main_~n~0#1_213|) (= (+ |v_ULTIMATE.start_main_~sum~0#1_163| (select (select |v_#memory_int_242| |v_~#a~0.base_103|) .cse1)) |v_ULTIMATE.start_main_~sum~0#1_162|) (= |v_ULTIMATE.start_main_~i~0#1_381| (+ |v_ULTIMATE.start_main_~i~0#1_382| 1))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_382|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_163|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_213|, #valid=|v_#valid_303|, #memory_int=|v_#memory_int_242|, ~#a~0.base=|v_~#a~0.base_103|, ~#a~0.offset=|v_~#a~0.offset_98|, #length=|v_#length_210|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_381|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_162|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_213|, #valid=|v_#valid_303|, #memory_int=|v_#memory_int_242|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_96|, ~#a~0.base=|v_~#a~0.base_103|, ~#a~0.offset=|v_~#a~0.offset_98|, #length=|v_#length_210|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_96|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1, ULTIMATE.start_main_#t~post9#1, ULTIMATE.start_main_#t~mem10#1] 15314#[L709-6, thrENTRY]don't care [2022-07-26 14:08:27,706 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:27,706 INFO L85 PathProgramCache]: Analyzing trace with hash 782617921, now seen corresponding path program 1 times [2022-07-26 14:08:27,706 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:27,706 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [13302539] [2022-07-26 14:08:27,706 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:27,706 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:27,711 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-26 14:08:27,727 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-26 14:08:27,727 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-26 14:08:27,727 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [13302539] [2022-07-26 14:08:27,727 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [13302539] provided 0 perfect and 1 imperfect interpolant sequences [2022-07-26 14:08:27,727 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [887865402] [2022-07-26 14:08:27,728 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:27,728 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-26 14:08:27,728 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-26 14:08:27,729 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-26 14:08:27,743 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-07-26 14:08:27,817 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-26 14:08:27,818 INFO L263 TraceCheckSpWp]: Trace formula consists of 97 conjuncts, 4 conjunts are in the unsatisfiable core [2022-07-26 14:08:27,818 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-26 14:08:27,834 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-26 14:08:27,834 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-26 14:08:27,845 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-26 14:08:27,845 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [887865402] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-26 14:08:27,845 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-07-26 14:08:27,845 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 3, 3] total 6 [2022-07-26 14:08:27,847 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [26195185] [2022-07-26 14:08:27,847 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-07-26 14:08:27,847 INFO L738 eck$LassoCheckResult]: stem already infeasible [2022-07-26 14:08:27,849 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:27,849 INFO L85 PathProgramCache]: Analyzing trace with hash 900, now seen corresponding path program 2 times [2022-07-26 14:08:27,849 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:27,849 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [971873469] [2022-07-26 14:08:27,849 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:27,849 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:27,852 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:27,853 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 14:08:27,854 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:27,854 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 14:08:27,874 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-26 14:08:27,875 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-07-26 14:08:27,875 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=35, Unknown=0, NotChecked=0, Total=56 [2022-07-26 14:08:27,875 INFO L87 Difference]: Start difference. First operand 4231 states and 15559 transitions. cyclomatic complexity: 12209 Second operand has 8 states, 7 states have (on average 2.2857142857142856) internal successors, (16), 7 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-26 14:08:28,053 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-26 14:08:28,054 INFO L93 Difference]: Finished difference Result 4626 states and 16133 transitions. [2022-07-26 14:08:28,054 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 4626 states and 16133 transitions. [2022-07-26 14:08:28,088 INFO L131 ngComponentsAnalysis]: Automaton has 625 accepting balls. 625 [2022-07-26 14:08:28,127 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 4626 states to 4626 states and 16133 transitions. [2022-07-26 14:08:28,128 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 4626 [2022-07-26 14:08:28,134 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 4626 [2022-07-26 14:08:28,135 INFO L73 IsDeterministic]: Start isDeterministic. Operand 4626 states and 16133 transitions. [2022-07-26 14:08:28,143 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-26 14:08:28,143 INFO L220 hiAutomatonCegarLoop]: Abstraction has 4626 states and 16133 transitions. [2022-07-26 14:08:28,152 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 4626 states and 16133 transitions. [2022-07-26 14:08:28,216 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 4626 to 4059. [2022-07-26 14:08:28,226 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4059 states, 4059 states have (on average 3.5806848977580685) internal successors, (14534), 4058 states have internal predecessors, (14534), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-26 14:08:28,240 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4059 states to 4059 states and 14534 transitions. [2022-07-26 14:08:28,240 INFO L242 hiAutomatonCegarLoop]: Abstraction has 4059 states and 14534 transitions. [2022-07-26 14:08:28,240 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-07-26 14:08:28,242 INFO L426 stractBuchiCegarLoop]: Abstraction has 4059 states and 14534 transitions. [2022-07-26 14:08:28,242 INFO L333 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2022-07-26 14:08:28,242 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 4059 states and 14534 transitions. [2022-07-26 14:08:28,263 INFO L131 ngComponentsAnalysis]: Automaton has 625 accepting balls. 625 [2022-07-26 14:08:28,263 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 14:08:28,263 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 14:08:28,264 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-26 14:08:28,264 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 14:08:28,265 INFO L733 eck$LassoCheckResult]: Stem: 35707#[ULTIMATE.startENTRY]don't care [890] ULTIMATE.startENTRY-->L702-6: Formula: (let ((.cse0 (select |v_#memory_int_257| 1))) (and (= |v_ULTIMATE.start_main_#in~argv#1.base_76| |v_ULTIMATE.start_main_~argv#1.base_74|) (= |v_#NULL.offset_37| 0) (= (store |v_#memory_int_257| |v_~#a~0.base_111| (store ((as const (Array Int Int)) 0) |v_~#a~0.offset_106| 0)) |v_#memory_int_256|) (= (select |v_#valid_352| 2) 1) (= (select |v_#length_237| 1) 2) (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_98| |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_76|) (= (store |v_#length_237| |v_ULTIMATE.start_main_~#t~1#1.base_202| 40) |v_#length_236|) (= |v_ULTIMATE.start_main_#in~argv#1.offset_76| |v_ULTIMATE.start_main_~argv#1.offset_74|) (= |v_#NULL.base_37| 0) (= 0 |v_ULTIMATE.start_main_~#t~1#1.offset_158|) (= (select |v_#valid_352| 3) 1) (= |v_ULTIMATE.start_main_~argc#1_70| |v_ULTIMATE.start_main_#in~argc#1_74|) (= |v_ULTIMATE.start_main_~i~0#1_413| 0) (= 40 (select |v_#length_237| 3)) (= |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_76| (ite (and (<= 5 |v_ULTIMATE.start_main_~n~0#1_239|) (<= |v_ULTIMATE.start_main_~n~0#1_239| 10)) 1 0)) (= |v_ULTIMATE.start_#in~argv#1.base_51| |v_ULTIMATE.start_main_#in~argv#1.base_76|) (= (select .cse0 1) 0) (= 3 |v_~#a~0.base_111|) (= v_~x~0_100 0) (= (store |v_#valid_352| |v_ULTIMATE.start_main_~#t~1#1.base_202| 1) |v_#valid_351|) (< 0 |v_#StackHeapBarrier_88|) (= |v_ULTIMATE.start_main_#in~argv#1.offset_76| |v_ULTIMATE.start_#in~argv#1.offset_51|) (= (select |v_#valid_352| 1) 1) (= |v_~#a~0.offset_106| 0) (= |v_ULTIMATE.start_#in~argc#1_51| |v_ULTIMATE.start_main_#in~argc#1_74|) (= (select |v_#valid_352| 0) 0) (< |v_#StackHeapBarrier_88| |v_ULTIMATE.start_main_~#t~1#1.base_202|) (= (select |v_#valid_352| |v_ULTIMATE.start_main_~#t~1#1.base_202|) 0) (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_98| 0)) (= |v_ULTIMATE.start_main_~n~0#1_239| (let ((.cse1 (mod |v_ULTIMATE.start_main_#t~nondet3#1_142| 4294967296))) (ite (<= .cse1 2147483647) .cse1 (+ .cse1 (- 4294967296))))) (= (select .cse0 0) 48) (= (select |v_#length_237| 2) 9))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_51|, #StackHeapBarrier=|v_#StackHeapBarrier_88|, #valid=|v_#valid_352|, #memory_int=|v_#memory_int_257|, #length=|v_#length_237|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_51|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_51|} OutVars{ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_158|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_89|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_202|, #NULL.offset=|v_#NULL.offset_37|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_74|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_74|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_51|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_413|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_74|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_184|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_239|, ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_98|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_108|, #length=|v_#length_236|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_103|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_51|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_51|, ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_70|, ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_125|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_79|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_76|, ~#a~0.base=|v_~#a~0.base_111|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_110|, #NULL.base=|v_#NULL.base_37|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_125|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_76|, #StackHeapBarrier=|v_#StackHeapBarrier_88|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_141|, #valid=|v_#valid_351|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_87|, #memory_int=|v_#memory_int_256|, ~#a~0.offset=|v_~#a~0.offset_106|, ~x~0=v_~x~0_100, ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_76|} AuxVars[|v_ULTIMATE.start_main_#t~nondet3#1_142|] AssignedVars[ULTIMATE.start_main_~#t~1#1.offset, ULTIMATE.start_main_#t~mem8#1, ULTIMATE.start_main_~#t~1#1.base, #NULL.offset, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_~sum~0#1, ULTIMATE.start_main_~n~0#1, ULTIMATE.start_assume_abort_if_not_~cond#1, ULTIMATE.start_main_#t~post9#1, #length, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#res#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#in~argv#1.offset, ~#a~0.base, ULTIMATE.start_main_#t~mem10#1, #NULL.base, ULTIMATE.start_main_#t~pre5#1, ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#t~nondet3#1, #valid, ULTIMATE.start_main_#t~post7#1, #memory_int, ~#a~0.offset, ~x~0, ULTIMATE.start_assume_abort_if_not_#in~cond#1] 35709#[L702-6]don't care [854] L702-6-->L703-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_359| 4))) (let ((.cse1 (+ .cse0 |v_ULTIMATE.start_main_~#t~1#1.offset_132|))) (and (= (+ |v_#pthreadsForks_60| 1) |v_#pthreadsForks_59|) (<= (+ .cse0 4 |v_ULTIMATE.start_main_~#t~1#1.offset_132|) (select |v_#length_198| |v_ULTIMATE.start_main_~#t~1#1.base_166|)) (= (select |v_#valid_287| |v_ULTIMATE.start_main_~#t~1#1.base_166|) 1) (<= 0 .cse1) (= (store |v_#memory_int_223| |v_ULTIMATE.start_main_~#t~1#1.base_166| (store (select |v_#memory_int_223| |v_ULTIMATE.start_main_~#t~1#1.base_166|) .cse1 |v_ULTIMATE.start_main_#t~pre5#1_113|)) |v_#memory_int_222|) (< |v_ULTIMATE.start_main_~i~0#1_359| |v_ULTIMATE.start_main_~n~0#1_207|) (= |v_#pthreadsForks_60| |v_ULTIMATE.start_main_#t~pre5#1_113|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_359|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_132|, #pthreadsForks=|v_#pthreadsForks_60|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_207|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_166|, #valid=|v_#valid_287|, #memory_int=|v_#memory_int_223|, #length=|v_#length_198|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_113|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_359|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_132|, #pthreadsForks=|v_#pthreadsForks_59|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_207|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_166|, #valid=|v_#valid_287|, #memory_int=|v_#memory_int_222|, #length=|v_#length_198|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 35921#[L703-3]don't care [794] L703-3-->thrENTRY: Formula: (and (= |v_thrThread1of4ForFork0_#in~arg.base_4| 0) (= |v_thrThread1of4ForFork0_#in~arg.offset_4| 0) (= v_thrThread1of4ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_98|)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_98|} OutVars{thrThread1of4ForFork0_~arg.base=v_thrThread1of4ForFork0_~arg.base_4, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_98|, thrThread1of4ForFork0_#in~arg.offset=|v_thrThread1of4ForFork0_#in~arg.offset_4|, thrThread1of4ForFork0_#res.base=|v_thrThread1of4ForFork0_#res.base_2|, thrThread1of4ForFork0_~t~0=v_thrThread1of4ForFork0_~t~0_8, thrThread1of4ForFork0_~arg.offset=v_thrThread1of4ForFork0_~arg.offset_4, thrThread1of4ForFork0_thidvar0=v_thrThread1of4ForFork0_thidvar0_2, thrThread1of4ForFork0_#in~arg.base=|v_thrThread1of4ForFork0_#in~arg.base_4|, thrThread1of4ForFork0_#res.offset=|v_thrThread1of4ForFork0_#res.offset_2|} AuxVars[] AssignedVars[thrThread1of4ForFork0_~arg.base, thrThread1of4ForFork0_#in~arg.offset, thrThread1of4ForFork0_#res.base, thrThread1of4ForFork0_~t~0, thrThread1of4ForFork0_~arg.offset, thrThread1of4ForFork0_thidvar0, thrThread1of4ForFork0_#in~arg.base, thrThread1of4ForFork0_#res.offset] 35471#[L703-4, thrENTRY]don't care [825] thrENTRY-->L694: Formula: (and (= |v_thrThread1of4ForFork0_#in~arg.base_5| v_thrThread1of4ForFork0_~arg.base_5) (= v_thrThread1of4ForFork0_~arg.offset_5 |v_thrThread1of4ForFork0_#in~arg.offset_5|) (= v_~x~0_84 v_thrThread1of4ForFork0_~t~0_11)) InVars {thrThread1of4ForFork0_#in~arg.offset=|v_thrThread1of4ForFork0_#in~arg.offset_5|, ~x~0=v_~x~0_84, thrThread1of4ForFork0_#in~arg.base=|v_thrThread1of4ForFork0_#in~arg.base_5|} OutVars{thrThread1of4ForFork0_~arg.base=v_thrThread1of4ForFork0_~arg.base_5, thrThread1of4ForFork0_#in~arg.offset=|v_thrThread1of4ForFork0_#in~arg.offset_5|, thrThread1of4ForFork0_~t~0=v_thrThread1of4ForFork0_~t~0_11, thrThread1of4ForFork0_~arg.offset=v_thrThread1of4ForFork0_~arg.offset_5, ~x~0=v_~x~0_84, thrThread1of4ForFork0_#in~arg.base=|v_thrThread1of4ForFork0_#in~arg.base_5|} AuxVars[] AssignedVars[thrThread1of4ForFork0_~arg.base, thrThread1of4ForFork0_~t~0, thrThread1of4ForFork0_~arg.offset] 35473#[L703-4, L694]don't care [774] L694-->L694-1: Formula: (let ((.cse1 (* v_thrThread1of4ForFork0_~t~0_3 4))) (let ((.cse0 (+ |v_~#a~0.offset_4| .cse1))) (and (= (select |v_#valid_12| |v_~#a~0.base_5|) 1) (<= 0 .cse0) (<= (+ |v_~#a~0.offset_4| .cse1 4) (select |v_#length_9| |v_~#a~0.base_5|)) (= (store |v_#memory_int_12| |v_~#a~0.base_5| (store (select |v_#memory_int_12| |v_~#a~0.base_5|) .cse0 1)) |v_#memory_int_11|)))) InVars {thrThread1of4ForFork0_~t~0=v_thrThread1of4ForFork0_~t~0_3, #valid=|v_#valid_12|, #memory_int=|v_#memory_int_12|, ~#a~0.base=|v_~#a~0.base_5|, ~#a~0.offset=|v_~#a~0.offset_4|, #length=|v_#length_9|} OutVars{thrThread1of4ForFork0_~t~0=v_thrThread1of4ForFork0_~t~0_3, #valid=|v_#valid_12|, #memory_int=|v_#memory_int_11|, ~#a~0.base=|v_~#a~0.base_5|, ~#a~0.offset=|v_~#a~0.offset_4|, #length=|v_#length_9|} AuxVars[] AssignedVars[#memory_int] 35923#[L703-4, L694-1]don't care [811] L694-1-->thrEXIT: Formula: (= (+ v_thrThread1of4ForFork0_~t~0_9 1) v_~x~0_76) InVars {thrThread1of4ForFork0_~t~0=v_thrThread1of4ForFork0_~t~0_9} OutVars{thrThread1of4ForFork0_~t~0=v_thrThread1of4ForFork0_~t~0_9, ~x~0=v_~x~0_76} AuxVars[] AssignedVars[~x~0] 34123#[L703-4, thrEXIT]don't care [735] L703-4-->L703-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1] 31811#[L703-5, thrEXIT]don't care [857] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_362| 1) |v_ULTIMATE.start_main_~i~0#1_361|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_362|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_361|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_67|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_89|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#t~post4#1] 31781#[L702-6, thrEXIT]don't care [848] L702-6-->L705-5: Formula: (and (= |v_ULTIMATE.start_main_~i~0#1_Out_26| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_In_29| |v_ULTIMATE.start_main_~n~0#1_In_33|))) InVars {ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_In_33|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_In_29|} OutVars{ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_In_33|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_Out_26|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] 31783#[L705-5, thrEXIT]don't care [818] L705-5-->L706-1: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_331| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_122|))) (and (= |v_ULTIMATE.start_main_#t~mem8#1_73| (select (select |v_#memory_int_216| |v_ULTIMATE.start_main_~#t~1#1.base_154|) .cse0)) (< |v_ULTIMATE.start_main_~i~0#1_331| |v_ULTIMATE.start_main_~n~0#1_195|) (= (select |v_#valid_269| |v_ULTIMATE.start_main_~#t~1#1.base_154|) 1) (<= 0 .cse0) (<= (+ .cse1 4 |v_ULTIMATE.start_main_~#t~1#1.offset_122|) (select |v_#length_186| |v_ULTIMATE.start_main_~#t~1#1.base_154|))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_331|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_122|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_195|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_154|, #valid=|v_#valid_269|, #memory_int=|v_#memory_int_216|, #length=|v_#length_186|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_331|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_73|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_122|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_195|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_154|, #valid=|v_#valid_269|, #memory_int=|v_#memory_int_216|, #length=|v_#length_186|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~mem8#1] 28685#[thrEXIT, L706-1]don't care [798] thrEXIT-->L706-2: Formula: (= v_thrThread1of4ForFork0_thidvar0_4 (let ((.cse0 (mod |v_ULTIMATE.start_main_#t~mem8#1_66| 4294967296))) (ite (<= .cse0 2147483647) .cse0 (+ .cse0 (- 4294967296))))) InVars {ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_66|, thrThread1of4ForFork0_thidvar0=v_thrThread1of4ForFork0_thidvar0_4} OutVars{ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_66|, thrThread1of4ForFork0_thidvar0=v_thrThread1of4ForFork0_thidvar0_4} AuxVars[] AssignedVars[] 32447#[L706-2]don't care [718] L706-2-->L705-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~mem8#1] 28825#[L705-2]don't care [862] L705-2-->L705-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_369| (+ |v_ULTIMATE.start_main_~i~0#1_370| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_370|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_369|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_73|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~post7#1] 28827#[L705-5]don't care [858] L705-5-->L709-6: Formula: (and (= |v_ULTIMATE.start_main_~sum~0#1_154| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_366| |v_ULTIMATE.start_main_~n~0#1_209|)) (= |v_ULTIMATE.start_main_~i~0#1_365| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_366|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_209|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_365|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_154|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_209|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1] 35133#[L709-6]don't care [2022-07-26 14:08:28,265 INFO L735 eck$LassoCheckResult]: Loop: 35133#[L709-6]don't care [869] L709-6-->L709-6: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_382| 4))) (let ((.cse1 (+ |v_~#a~0.offset_98| .cse0))) (and (<= (+ |v_~#a~0.offset_98| .cse0 4) (select |v_#length_210| |v_~#a~0.base_103|)) (= (select |v_#valid_303| |v_~#a~0.base_103|) 1) (<= 0 .cse1) (< |v_ULTIMATE.start_main_~i~0#1_382| |v_ULTIMATE.start_main_~n~0#1_213|) (= (+ |v_ULTIMATE.start_main_~sum~0#1_163| (select (select |v_#memory_int_242| |v_~#a~0.base_103|) .cse1)) |v_ULTIMATE.start_main_~sum~0#1_162|) (= |v_ULTIMATE.start_main_~i~0#1_381| (+ |v_ULTIMATE.start_main_~i~0#1_382| 1))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_382|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_163|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_213|, #valid=|v_#valid_303|, #memory_int=|v_#memory_int_242|, ~#a~0.base=|v_~#a~0.base_103|, ~#a~0.offset=|v_~#a~0.offset_98|, #length=|v_#length_210|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_381|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_162|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_213|, #valid=|v_#valid_303|, #memory_int=|v_#memory_int_242|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_96|, ~#a~0.base=|v_~#a~0.base_103|, ~#a~0.offset=|v_~#a~0.offset_98|, #length=|v_#length_210|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_96|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1, ULTIMATE.start_main_#t~post9#1, ULTIMATE.start_main_#t~mem10#1] 35133#[L709-6]don't care [2022-07-26 14:08:28,265 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:28,265 INFO L85 PathProgramCache]: Analyzing trace with hash 1755267273, now seen corresponding path program 1 times [2022-07-26 14:08:28,265 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:28,265 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2101834968] [2022-07-26 14:08:28,265 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:28,265 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:28,278 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-26 14:08:28,294 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-07-26 14:08:28,295 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-26 14:08:28,295 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2101834968] [2022-07-26 14:08:28,296 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2101834968] provided 0 perfect and 1 imperfect interpolant sequences [2022-07-26 14:08:28,296 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1195469741] [2022-07-26 14:08:28,296 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:28,296 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-26 14:08:28,296 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-26 14:08:28,298 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-26 14:08:28,298 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-07-26 14:08:28,385 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-26 14:08:28,387 INFO L263 TraceCheckSpWp]: Trace formula consists of 125 conjuncts, 8 conjunts are in the unsatisfiable core [2022-07-26 14:08:28,387 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-26 14:08:28,427 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-07-26 14:08:28,427 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-26 14:08:28,457 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-07-26 14:08:28,457 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1195469741] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-26 14:08:28,457 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-07-26 14:08:28,457 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 3, 3] total 7 [2022-07-26 14:08:28,457 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1431910051] [2022-07-26 14:08:28,457 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-07-26 14:08:28,457 INFO L738 eck$LassoCheckResult]: stem already infeasible [2022-07-26 14:08:28,458 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:28,458 INFO L85 PathProgramCache]: Analyzing trace with hash 900, now seen corresponding path program 3 times [2022-07-26 14:08:28,458 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:28,458 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [667680893] [2022-07-26 14:08:28,458 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:28,458 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:28,460 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:28,461 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 14:08:28,462 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:28,463 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 14:08:28,486 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-26 14:08:28,486 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-07-26 14:08:28,487 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=30, Unknown=0, NotChecked=0, Total=56 [2022-07-26 14:08:28,487 INFO L87 Difference]: Start difference. First operand 4059 states and 14534 transitions. cyclomatic complexity: 11100 Second operand has 8 states, 8 states have (on average 4.0) internal successors, (32), 7 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-26 14:08:28,582 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-26 14:08:28,582 INFO L93 Difference]: Finished difference Result 3975 states and 14195 transitions. [2022-07-26 14:08:28,582 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 3975 states and 14195 transitions. [2022-07-26 14:08:28,632 INFO L131 ngComponentsAnalysis]: Automaton has 625 accepting balls. 625 [2022-07-26 14:08:28,663 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 3975 states to 3975 states and 14195 transitions. [2022-07-26 14:08:28,663 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 3975 [2022-07-26 14:08:28,669 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 3975 [2022-07-26 14:08:28,669 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3975 states and 14195 transitions. [2022-07-26 14:08:28,675 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-26 14:08:28,675 INFO L220 hiAutomatonCegarLoop]: Abstraction has 3975 states and 14195 transitions. [2022-07-26 14:08:28,727 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3975 states and 14195 transitions. [2022-07-26 14:08:28,780 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3975 to 3975. [2022-07-26 14:08:28,797 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3975 states, 3975 states have (on average 3.571069182389937) internal successors, (14195), 3974 states have internal predecessors, (14195), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-26 14:08:28,808 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3975 states to 3975 states and 14195 transitions. [2022-07-26 14:08:28,809 INFO L242 hiAutomatonCegarLoop]: Abstraction has 3975 states and 14195 transitions. [2022-07-26 14:08:28,809 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-07-26 14:08:28,810 INFO L426 stractBuchiCegarLoop]: Abstraction has 3975 states and 14195 transitions. [2022-07-26 14:08:28,810 INFO L333 stractBuchiCegarLoop]: ======== Iteration 4 ============ [2022-07-26 14:08:28,810 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 3975 states and 14195 transitions. [2022-07-26 14:08:28,829 INFO L131 ngComponentsAnalysis]: Automaton has 625 accepting balls. 625 [2022-07-26 14:08:28,829 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 14:08:28,829 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 14:08:28,830 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [5, 4, 4, 1, 1, 1, 1, 1, 1] [2022-07-26 14:08:28,830 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 14:08:28,831 INFO L733 eck$LassoCheckResult]: Stem: 47787#[ULTIMATE.startENTRY]don't care [890] ULTIMATE.startENTRY-->L702-6: Formula: (let ((.cse0 (select |v_#memory_int_257| 1))) (and (= |v_ULTIMATE.start_main_#in~argv#1.base_76| |v_ULTIMATE.start_main_~argv#1.base_74|) (= |v_#NULL.offset_37| 0) (= (store |v_#memory_int_257| |v_~#a~0.base_111| (store ((as const (Array Int Int)) 0) |v_~#a~0.offset_106| 0)) |v_#memory_int_256|) (= (select |v_#valid_352| 2) 1) (= (select |v_#length_237| 1) 2) (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_98| |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_76|) (= (store |v_#length_237| |v_ULTIMATE.start_main_~#t~1#1.base_202| 40) |v_#length_236|) (= |v_ULTIMATE.start_main_#in~argv#1.offset_76| |v_ULTIMATE.start_main_~argv#1.offset_74|) (= |v_#NULL.base_37| 0) (= 0 |v_ULTIMATE.start_main_~#t~1#1.offset_158|) (= (select |v_#valid_352| 3) 1) (= |v_ULTIMATE.start_main_~argc#1_70| |v_ULTIMATE.start_main_#in~argc#1_74|) (= |v_ULTIMATE.start_main_~i~0#1_413| 0) (= 40 (select |v_#length_237| 3)) (= |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_76| (ite (and (<= 5 |v_ULTIMATE.start_main_~n~0#1_239|) (<= |v_ULTIMATE.start_main_~n~0#1_239| 10)) 1 0)) (= |v_ULTIMATE.start_#in~argv#1.base_51| |v_ULTIMATE.start_main_#in~argv#1.base_76|) (= (select .cse0 1) 0) (= 3 |v_~#a~0.base_111|) (= v_~x~0_100 0) (= (store |v_#valid_352| |v_ULTIMATE.start_main_~#t~1#1.base_202| 1) |v_#valid_351|) (< 0 |v_#StackHeapBarrier_88|) (= |v_ULTIMATE.start_main_#in~argv#1.offset_76| |v_ULTIMATE.start_#in~argv#1.offset_51|) (= (select |v_#valid_352| 1) 1) (= |v_~#a~0.offset_106| 0) (= |v_ULTIMATE.start_#in~argc#1_51| |v_ULTIMATE.start_main_#in~argc#1_74|) (= (select |v_#valid_352| 0) 0) (< |v_#StackHeapBarrier_88| |v_ULTIMATE.start_main_~#t~1#1.base_202|) (= (select |v_#valid_352| |v_ULTIMATE.start_main_~#t~1#1.base_202|) 0) (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_98| 0)) (= |v_ULTIMATE.start_main_~n~0#1_239| (let ((.cse1 (mod |v_ULTIMATE.start_main_#t~nondet3#1_142| 4294967296))) (ite (<= .cse1 2147483647) .cse1 (+ .cse1 (- 4294967296))))) (= (select .cse0 0) 48) (= (select |v_#length_237| 2) 9))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_51|, #StackHeapBarrier=|v_#StackHeapBarrier_88|, #valid=|v_#valid_352|, #memory_int=|v_#memory_int_257|, #length=|v_#length_237|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_51|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_51|} OutVars{ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_158|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_89|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_202|, #NULL.offset=|v_#NULL.offset_37|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_74|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_74|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_51|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_413|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_74|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_184|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_239|, ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_98|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_108|, #length=|v_#length_236|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_103|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_51|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_51|, ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_70|, ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_125|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_79|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_76|, ~#a~0.base=|v_~#a~0.base_111|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_110|, #NULL.base=|v_#NULL.base_37|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_125|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_76|, #StackHeapBarrier=|v_#StackHeapBarrier_88|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_141|, #valid=|v_#valid_351|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_87|, #memory_int=|v_#memory_int_256|, ~#a~0.offset=|v_~#a~0.offset_106|, ~x~0=v_~x~0_100, ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_76|} AuxVars[|v_ULTIMATE.start_main_#t~nondet3#1_142|] AssignedVars[ULTIMATE.start_main_~#t~1#1.offset, ULTIMATE.start_main_#t~mem8#1, ULTIMATE.start_main_~#t~1#1.base, #NULL.offset, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_~sum~0#1, ULTIMATE.start_main_~n~0#1, ULTIMATE.start_assume_abort_if_not_~cond#1, ULTIMATE.start_main_#t~post9#1, #length, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#res#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#in~argv#1.offset, ~#a~0.base, ULTIMATE.start_main_#t~mem10#1, #NULL.base, ULTIMATE.start_main_#t~pre5#1, ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#t~nondet3#1, #valid, ULTIMATE.start_main_#t~post7#1, #memory_int, ~#a~0.offset, ~x~0, ULTIMATE.start_assume_abort_if_not_#in~cond#1] 47789#[L702-6]don't care [854] L702-6-->L703-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_359| 4))) (let ((.cse1 (+ .cse0 |v_ULTIMATE.start_main_~#t~1#1.offset_132|))) (and (= (+ |v_#pthreadsForks_60| 1) |v_#pthreadsForks_59|) (<= (+ .cse0 4 |v_ULTIMATE.start_main_~#t~1#1.offset_132|) (select |v_#length_198| |v_ULTIMATE.start_main_~#t~1#1.base_166|)) (= (select |v_#valid_287| |v_ULTIMATE.start_main_~#t~1#1.base_166|) 1) (<= 0 .cse1) (= (store |v_#memory_int_223| |v_ULTIMATE.start_main_~#t~1#1.base_166| (store (select |v_#memory_int_223| |v_ULTIMATE.start_main_~#t~1#1.base_166|) .cse1 |v_ULTIMATE.start_main_#t~pre5#1_113|)) |v_#memory_int_222|) (< |v_ULTIMATE.start_main_~i~0#1_359| |v_ULTIMATE.start_main_~n~0#1_207|) (= |v_#pthreadsForks_60| |v_ULTIMATE.start_main_#t~pre5#1_113|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_359|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_132|, #pthreadsForks=|v_#pthreadsForks_60|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_207|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_166|, #valid=|v_#valid_287|, #memory_int=|v_#memory_int_223|, #length=|v_#length_198|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_113|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_359|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_132|, #pthreadsForks=|v_#pthreadsForks_59|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_207|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_166|, #valid=|v_#valid_287|, #memory_int=|v_#memory_int_222|, #length=|v_#length_198|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 47951#[L703-3]don't care [794] L703-3-->thrENTRY: Formula: (and (= |v_thrThread1of4ForFork0_#in~arg.base_4| 0) (= |v_thrThread1of4ForFork0_#in~arg.offset_4| 0) (= v_thrThread1of4ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_98|)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_98|} OutVars{thrThread1of4ForFork0_~arg.base=v_thrThread1of4ForFork0_~arg.base_4, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_98|, thrThread1of4ForFork0_#in~arg.offset=|v_thrThread1of4ForFork0_#in~arg.offset_4|, thrThread1of4ForFork0_#res.base=|v_thrThread1of4ForFork0_#res.base_2|, thrThread1of4ForFork0_~t~0=v_thrThread1of4ForFork0_~t~0_8, thrThread1of4ForFork0_~arg.offset=v_thrThread1of4ForFork0_~arg.offset_4, thrThread1of4ForFork0_thidvar0=v_thrThread1of4ForFork0_thidvar0_2, thrThread1of4ForFork0_#in~arg.base=|v_thrThread1of4ForFork0_#in~arg.base_4|, thrThread1of4ForFork0_#res.offset=|v_thrThread1of4ForFork0_#res.offset_2|} AuxVars[] AssignedVars[thrThread1of4ForFork0_~arg.base, thrThread1of4ForFork0_#in~arg.offset, thrThread1of4ForFork0_#res.base, thrThread1of4ForFork0_~t~0, thrThread1of4ForFork0_~arg.offset, thrThread1of4ForFork0_thidvar0, thrThread1of4ForFork0_#in~arg.base, thrThread1of4ForFork0_#res.offset] 47563#[L703-4, thrENTRY]don't care [735] L703-4-->L703-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1] 47567#[L703-5, thrENTRY]don't care [857] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_362| 1) |v_ULTIMATE.start_main_~i~0#1_361|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_362|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_361|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_67|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_89|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#t~post4#1] 47687#[L702-6, thrENTRY]don't care [854] L702-6-->L703-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_359| 4))) (let ((.cse1 (+ .cse0 |v_ULTIMATE.start_main_~#t~1#1.offset_132|))) (and (= (+ |v_#pthreadsForks_60| 1) |v_#pthreadsForks_59|) (<= (+ .cse0 4 |v_ULTIMATE.start_main_~#t~1#1.offset_132|) (select |v_#length_198| |v_ULTIMATE.start_main_~#t~1#1.base_166|)) (= (select |v_#valid_287| |v_ULTIMATE.start_main_~#t~1#1.base_166|) 1) (<= 0 .cse1) (= (store |v_#memory_int_223| |v_ULTIMATE.start_main_~#t~1#1.base_166| (store (select |v_#memory_int_223| |v_ULTIMATE.start_main_~#t~1#1.base_166|) .cse1 |v_ULTIMATE.start_main_#t~pre5#1_113|)) |v_#memory_int_222|) (< |v_ULTIMATE.start_main_~i~0#1_359| |v_ULTIMATE.start_main_~n~0#1_207|) (= |v_#pthreadsForks_60| |v_ULTIMATE.start_main_#t~pre5#1_113|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_359|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_132|, #pthreadsForks=|v_#pthreadsForks_60|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_207|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_166|, #valid=|v_#valid_287|, #memory_int=|v_#memory_int_223|, #length=|v_#length_198|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_113|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_359|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_132|, #pthreadsForks=|v_#pthreadsForks_59|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_207|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_166|, #valid=|v_#valid_287|, #memory_int=|v_#memory_int_222|, #length=|v_#length_198|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 44629#[L703-3, thrENTRY]don't care [795] L703-3-->thrENTRY: Formula: (and (= |v_ULTIMATE.start_main_#t~pre5#1_100| v_thrThread2of4ForFork0_thidvar0_2) (= |v_thrThread2of4ForFork0_#in~arg.offset_4| 0) (= |v_thrThread2of4ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_100|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_100|, thrThread2of4ForFork0_#in~arg.base=|v_thrThread2of4ForFork0_#in~arg.base_4|, thrThread2of4ForFork0_#res.base=|v_thrThread2of4ForFork0_#res.base_2|, thrThread2of4ForFork0_~arg.base=v_thrThread2of4ForFork0_~arg.base_4, thrThread2of4ForFork0_~t~0=v_thrThread2of4ForFork0_~t~0_8, thrThread2of4ForFork0_~arg.offset=v_thrThread2of4ForFork0_~arg.offset_4, thrThread2of4ForFork0_#in~arg.offset=|v_thrThread2of4ForFork0_#in~arg.offset_4|, thrThread2of4ForFork0_thidvar0=v_thrThread2of4ForFork0_thidvar0_2, thrThread2of4ForFork0_#res.offset=|v_thrThread2of4ForFork0_#res.offset_2|} AuxVars[] AssignedVars[thrThread2of4ForFork0_#in~arg.base, thrThread2of4ForFork0_#res.base, thrThread2of4ForFork0_~arg.base, thrThread2of4ForFork0_~t~0, thrThread2of4ForFork0_~arg.offset, thrThread2of4ForFork0_#in~arg.offset, thrThread2of4ForFork0_thidvar0, thrThread2of4ForFork0_#res.offset] 43093#[thrENTRY, L703-4, thrENTRY]don't care [735] L703-4-->L703-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1] 43097#[thrENTRY, L703-5, thrENTRY]don't care [857] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_362| 1) |v_ULTIMATE.start_main_~i~0#1_361|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_362|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_361|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_67|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_89|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#t~post4#1] 42049#[thrENTRY, L702-6, thrENTRY]don't care [854] L702-6-->L703-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_359| 4))) (let ((.cse1 (+ .cse0 |v_ULTIMATE.start_main_~#t~1#1.offset_132|))) (and (= (+ |v_#pthreadsForks_60| 1) |v_#pthreadsForks_59|) (<= (+ .cse0 4 |v_ULTIMATE.start_main_~#t~1#1.offset_132|) (select |v_#length_198| |v_ULTIMATE.start_main_~#t~1#1.base_166|)) (= (select |v_#valid_287| |v_ULTIMATE.start_main_~#t~1#1.base_166|) 1) (<= 0 .cse1) (= (store |v_#memory_int_223| |v_ULTIMATE.start_main_~#t~1#1.base_166| (store (select |v_#memory_int_223| |v_ULTIMATE.start_main_~#t~1#1.base_166|) .cse1 |v_ULTIMATE.start_main_#t~pre5#1_113|)) |v_#memory_int_222|) (< |v_ULTIMATE.start_main_~i~0#1_359| |v_ULTIMATE.start_main_~n~0#1_207|) (= |v_#pthreadsForks_60| |v_ULTIMATE.start_main_#t~pre5#1_113|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_359|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_132|, #pthreadsForks=|v_#pthreadsForks_60|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_207|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_166|, #valid=|v_#valid_287|, #memory_int=|v_#memory_int_223|, #length=|v_#length_198|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_113|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_359|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_132|, #pthreadsForks=|v_#pthreadsForks_59|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_207|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_166|, #valid=|v_#valid_287|, #memory_int=|v_#memory_int_222|, #length=|v_#length_198|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 42051#[L703-3, thrENTRY, thrENTRY]don't care [796] L703-3-->thrENTRY: Formula: (and (= |v_thrThread3of4ForFork0_#in~arg.base_4| 0) (= v_thrThread3of4ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_102|) (= |v_thrThread3of4ForFork0_#in~arg.offset_4| 0)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_102|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_102|, thrThread3of4ForFork0_#in~arg.base=|v_thrThread3of4ForFork0_#in~arg.base_4|, thrThread3of4ForFork0_#res.base=|v_thrThread3of4ForFork0_#res.base_2|, thrThread3of4ForFork0_~arg.offset=v_thrThread3of4ForFork0_~arg.offset_4, thrThread3of4ForFork0_~arg.base=v_thrThread3of4ForFork0_~arg.base_4, thrThread3of4ForFork0_thidvar0=v_thrThread3of4ForFork0_thidvar0_2, thrThread3of4ForFork0_~t~0=v_thrThread3of4ForFork0_~t~0_8, thrThread3of4ForFork0_#in~arg.offset=|v_thrThread3of4ForFork0_#in~arg.offset_4|, thrThread3of4ForFork0_#res.offset=|v_thrThread3of4ForFork0_#res.offset_2|} AuxVars[] AssignedVars[thrThread3of4ForFork0_#in~arg.base, thrThread3of4ForFork0_#res.base, thrThread3of4ForFork0_~arg.offset, thrThread3of4ForFork0_~arg.base, thrThread3of4ForFork0_thidvar0, thrThread3of4ForFork0_~t~0, thrThread3of4ForFork0_#in~arg.offset, thrThread3of4ForFork0_#res.offset] 47491#[thrENTRY, thrENTRY, L703-4, thrENTRY]don't care [735] L703-4-->L703-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1] 47495#[thrENTRY, thrENTRY, L703-5, thrENTRY]don't care [857] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_362| 1) |v_ULTIMATE.start_main_~i~0#1_361|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_362|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_361|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_67|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_89|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#t~post4#1] 47107#[thrENTRY, thrENTRY, L702-6, thrENTRY]don't care [854] L702-6-->L703-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_359| 4))) (let ((.cse1 (+ .cse0 |v_ULTIMATE.start_main_~#t~1#1.offset_132|))) (and (= (+ |v_#pthreadsForks_60| 1) |v_#pthreadsForks_59|) (<= (+ .cse0 4 |v_ULTIMATE.start_main_~#t~1#1.offset_132|) (select |v_#length_198| |v_ULTIMATE.start_main_~#t~1#1.base_166|)) (= (select |v_#valid_287| |v_ULTIMATE.start_main_~#t~1#1.base_166|) 1) (<= 0 .cse1) (= (store |v_#memory_int_223| |v_ULTIMATE.start_main_~#t~1#1.base_166| (store (select |v_#memory_int_223| |v_ULTIMATE.start_main_~#t~1#1.base_166|) .cse1 |v_ULTIMATE.start_main_#t~pre5#1_113|)) |v_#memory_int_222|) (< |v_ULTIMATE.start_main_~i~0#1_359| |v_ULTIMATE.start_main_~n~0#1_207|) (= |v_#pthreadsForks_60| |v_ULTIMATE.start_main_#t~pre5#1_113|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_359|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_132|, #pthreadsForks=|v_#pthreadsForks_60|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_207|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_166|, #valid=|v_#valid_287|, #memory_int=|v_#memory_int_223|, #length=|v_#length_198|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_113|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_359|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_132|, #pthreadsForks=|v_#pthreadsForks_59|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_207|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_166|, #valid=|v_#valid_287|, #memory_int=|v_#memory_int_222|, #length=|v_#length_198|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 46945#[L703-3, thrENTRY, thrENTRY, thrENTRY]don't care [797] L703-3-->thrENTRY: Formula: (and (= |v_thrThread4of4ForFork0_#in~arg.offset_4| 0) (= v_thrThread4of4ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_104|) (= |v_thrThread4of4ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_104|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_104|, thrThread4of4ForFork0_~arg.base=v_thrThread4of4ForFork0_~arg.base_4, thrThread4of4ForFork0_#res.offset=|v_thrThread4of4ForFork0_#res.offset_2|, thrThread4of4ForFork0_~arg.offset=v_thrThread4of4ForFork0_~arg.offset_4, thrThread4of4ForFork0_~t~0=v_thrThread4of4ForFork0_~t~0_8, thrThread4of4ForFork0_#res.base=|v_thrThread4of4ForFork0_#res.base_2|, thrThread4of4ForFork0_thidvar0=v_thrThread4of4ForFork0_thidvar0_2, thrThread4of4ForFork0_#in~arg.base=|v_thrThread4of4ForFork0_#in~arg.base_4|, thrThread4of4ForFork0_#in~arg.offset=|v_thrThread4of4ForFork0_#in~arg.offset_4|} AuxVars[] AssignedVars[thrThread4of4ForFork0_~arg.base, thrThread4of4ForFork0_#res.offset, thrThread4of4ForFork0_~arg.offset, thrThread4of4ForFork0_~t~0, thrThread4of4ForFork0_#res.base, thrThread4of4ForFork0_thidvar0, thrThread4of4ForFork0_#in~arg.base, thrThread4of4ForFork0_#in~arg.offset] 44895#[thrENTRY, L703-4, thrENTRY, thrENTRY, thrENTRY]don't care [735] L703-4-->L703-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1] 44899#[thrENTRY, L703-5, thrENTRY, thrENTRY, thrENTRY]don't care [857] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_362| 1) |v_ULTIMATE.start_main_~i~0#1_361|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_362|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_361|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_67|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_89|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#t~post4#1] 45377#[thrENTRY, L702-6, thrENTRY, thrENTRY, thrENTRY]don't care [854] L702-6-->L703-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_359| 4))) (let ((.cse1 (+ .cse0 |v_ULTIMATE.start_main_~#t~1#1.offset_132|))) (and (= (+ |v_#pthreadsForks_60| 1) |v_#pthreadsForks_59|) (<= (+ .cse0 4 |v_ULTIMATE.start_main_~#t~1#1.offset_132|) (select |v_#length_198| |v_ULTIMATE.start_main_~#t~1#1.base_166|)) (= (select |v_#valid_287| |v_ULTIMATE.start_main_~#t~1#1.base_166|) 1) (<= 0 .cse1) (= (store |v_#memory_int_223| |v_ULTIMATE.start_main_~#t~1#1.base_166| (store (select |v_#memory_int_223| |v_ULTIMATE.start_main_~#t~1#1.base_166|) .cse1 |v_ULTIMATE.start_main_#t~pre5#1_113|)) |v_#memory_int_222|) (< |v_ULTIMATE.start_main_~i~0#1_359| |v_ULTIMATE.start_main_~n~0#1_207|) (= |v_#pthreadsForks_60| |v_ULTIMATE.start_main_#t~pre5#1_113|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_359|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_132|, #pthreadsForks=|v_#pthreadsForks_60|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_207|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_166|, #valid=|v_#valid_287|, #memory_int=|v_#memory_int_223|, #length=|v_#length_198|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_113|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_359|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_132|, #pthreadsForks=|v_#pthreadsForks_59|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_207|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_166|, #valid=|v_#valid_287|, #memory_int=|v_#memory_int_222|, #length=|v_#length_198|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 45383#[L703-3, thrENTRY, thrENTRY, thrENTRY, thrENTRY]don't care [792] L703-3-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 45433#[ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, thrENTRY, thrENTRY, thrENTRY, thrENTRY]don't care [2022-07-26 14:08:28,831 INFO L735 eck$LassoCheckResult]: Loop: 45433#[ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, thrENTRY, thrENTRY, thrENTRY, thrENTRY]don't care [793] ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 45433#[ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, thrENTRY, thrENTRY, thrENTRY, thrENTRY]don't care [2022-07-26 14:08:28,831 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:28,831 INFO L85 PathProgramCache]: Analyzing trace with hash 583066713, now seen corresponding path program 1 times [2022-07-26 14:08:28,831 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:28,831 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1380591013] [2022-07-26 14:08:28,831 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:28,831 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:28,845 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:28,845 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 14:08:28,856 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:28,860 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 14:08:28,860 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:28,860 INFO L85 PathProgramCache]: Analyzing trace with hash 824, now seen corresponding path program 1 times [2022-07-26 14:08:28,860 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:28,860 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1364451108] [2022-07-26 14:08:28,860 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:28,860 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:28,864 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:28,864 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 14:08:28,864 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:28,865 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 14:08:28,865 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:28,865 INFO L85 PathProgramCache]: Analyzing trace with hash 895199712, now seen corresponding path program 1 times [2022-07-26 14:08:28,865 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:28,865 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [226033364] [2022-07-26 14:08:28,866 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:28,866 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:28,888 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:28,888 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 14:08:28,894 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:28,897 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 14:08:30,378 WARN L146 chiAutomizerObserver]: 4 thread instances were not sufficient, I will increase this number and restart the analysis [2022-07-26 14:08:30,388 INFO L144 ThreadInstanceAdder]: Constructed 5 joinOtherThreadTransitions. [2022-07-26 14:08:30,398 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 115 places, 116 transitions, 292 flow [2022-07-26 14:08:30,475 INFO L129 PetriNetUnfolder]: 190/1296 cut-off events. [2022-07-26 14:08:30,475 INFO L130 PetriNetUnfolder]: For 110/110 co-relation queries the response was YES. [2022-07-26 14:08:30,478 INFO L84 FinitePrefix]: Finished finitePrefix Result has 1407 conditions, 1296 events. 190/1296 cut-off events. For 110/110 co-relation queries the response was YES. Maximal size of possible extension queue 25. Compared 7383 event pairs, 23 based on Foata normal form. 0/1123 useless extension candidates. Maximal degree in co-relation 730. Up to 80 conditions per place. [2022-07-26 14:08:30,478 INFO L82 GeneralOperation]: Start removeDead. Operand has 115 places, 116 transitions, 292 flow [2022-07-26 14:08:30,487 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 115 places, 116 transitions, 292 flow [2022-07-26 14:08:30,488 INFO L124 etLargeBlockEncoding]: Petri net LBE is using variable-based independence relation. [2022-07-26 14:08:30,488 INFO L131 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 115 places, 116 transitions, 292 flow [2022-07-26 14:08:30,488 INFO L110 LiptonReduction]: Starting Lipton reduction on Petri net that has 115 places, 116 transitions, 292 flow [2022-07-26 14:08:30,488 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 115 places, 116 transitions, 292 flow [2022-07-26 14:08:30,599 INFO L129 PetriNetUnfolder]: 190/1296 cut-off events. [2022-07-26 14:08:30,599 INFO L130 PetriNetUnfolder]: For 110/110 co-relation queries the response was YES. [2022-07-26 14:08:30,602 INFO L84 FinitePrefix]: Finished finitePrefix Result has 1407 conditions, 1296 events. 190/1296 cut-off events. For 110/110 co-relation queries the response was YES. Maximal size of possible extension queue 26. Compared 7191 event pairs, 23 based on Foata normal form. 0/1123 useless extension candidates. Maximal degree in co-relation 730. Up to 80 conditions per place. [2022-07-26 14:08:30,618 INFO L116 LiptonReduction]: Number of co-enabled transitions 3200 [2022-07-26 14:08:32,191 INFO L131 LiptonReduction]: Checked pairs total: 10909 [2022-07-26 14:08:32,191 INFO L133 LiptonReduction]: Total number of compositions: 89 [2022-07-26 14:08:32,191 INFO L301 stractBuchiCegarLoop]: Interprodecural is true [2022-07-26 14:08:32,191 INFO L302 stractBuchiCegarLoop]: Hoare is false [2022-07-26 14:08:32,192 INFO L303 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2022-07-26 14:08:32,192 INFO L304 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2022-07-26 14:08:32,192 INFO L305 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2022-07-26 14:08:32,192 INFO L306 stractBuchiCegarLoop]: Difference is false [2022-07-26 14:08:32,192 INFO L307 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2022-07-26 14:08:32,192 INFO L311 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2022-07-26 14:08:32,192 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 0 states, but on-demand construction may add more states [2022-07-26 14:08:33,423 INFO L131 ngComponentsAnalysis]: Automaton has 4149 accepting balls. 4149 [2022-07-26 14:08:33,424 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 14:08:33,424 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 14:08:33,425 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2022-07-26 14:08:33,425 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 14:08:33,425 INFO L333 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2022-07-26 14:08:33,425 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 23184 states, but on-demand construction may add more states [2022-07-26 14:08:33,667 INFO L131 ngComponentsAnalysis]: Automaton has 4149 accepting balls. 4149 [2022-07-26 14:08:33,667 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 14:08:33,667 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 14:08:33,668 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2022-07-26 14:08:33,668 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 14:08:33,668 INFO L733 eck$LassoCheckResult]: Stem: 118#[ULTIMATE.startENTRY]don't care [1102] ULTIMATE.startENTRY-->L702-6: Formula: (let ((.cse1 (select |v_#memory_int_316| 1))) (and (= (select |v_#length_294| 1) 2) (= |v_ULTIMATE.start_main_#in~argv#1.offset_97| |v_ULTIMATE.start_main_~argv#1.offset_91|) (= |v_#NULL.base_48| 0) (= |v_#NULL.offset_48| 0) (= (store |v_#length_294| |v_ULTIMATE.start_main_~#t~1#1.base_245| 40) |v_#length_293|) (= (select |v_#valid_431| 0) 0) (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_127| 0)) (= (store |v_#memory_int_316| |v_~#a~0.base_135| (store ((as const (Array Int Int)) 0) |v_~#a~0.offset_130| 0)) |v_#memory_int_315|) (= (select |v_#valid_431| |v_ULTIMATE.start_main_~#t~1#1.base_245|) 0) (< 0 |v_#StackHeapBarrier_111|) (= (store |v_#valid_431| |v_ULTIMATE.start_main_~#t~1#1.base_245| 1) |v_#valid_430|) (= v_~x~0_132 0) (= (select |v_#valid_431| 2) 1) (= (let ((.cse0 (mod |v_ULTIMATE.start_main_#t~nondet3#1_181| 4294967296))) (ite (<= .cse0 2147483647) .cse0 (+ (- 4294967296) .cse0))) |v_ULTIMATE.start_main_~n~0#1_295|) (= |v_ULTIMATE.start_main_#in~argv#1.offset_97| |v_ULTIMATE.start_#in~argv#1.offset_62|) (= |v_~#a~0.offset_130| 0) (= |v_ULTIMATE.start_#in~argv#1.base_62| |v_ULTIMATE.start_main_#in~argv#1.base_97|) (= 0 |v_ULTIMATE.start_main_~#t~1#1.offset_193|) (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_127| |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_97|) (= (select |v_#valid_431| 3) 1) (= 9 (select |v_#length_294| 2)) (= |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_97| (ite (and (<= 5 |v_ULTIMATE.start_main_~n~0#1_295|) (<= |v_ULTIMATE.start_main_~n~0#1_295| 10)) 1 0)) (= 1 (select |v_#valid_431| 1)) (= |v_ULTIMATE.start_main_#in~argv#1.base_97| |v_ULTIMATE.start_main_~argv#1.base_91|) (= |v_ULTIMATE.start_main_~i~0#1_515| 0) (= |v_ULTIMATE.start_main_~argc#1_85| |v_ULTIMATE.start_main_#in~argc#1_95|) (= 3 |v_~#a~0.base_135|) (= 48 (select .cse1 0)) (= 40 (select |v_#length_294| 3)) (= |v_ULTIMATE.start_#in~argc#1_62| |v_ULTIMATE.start_main_#in~argc#1_95|) (= (select .cse1 1) 0) (< |v_#StackHeapBarrier_111| |v_ULTIMATE.start_main_~#t~1#1.base_245|))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_62|, #StackHeapBarrier=|v_#StackHeapBarrier_111|, #valid=|v_#valid_431|, #memory_int=|v_#memory_int_316|, #length=|v_#length_294|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_62|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_62|} OutVars{ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_193|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_116|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_245|, #NULL.offset=|v_#NULL.offset_48|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_91|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_91|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_62|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_515|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_95|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_233|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_295|, ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_127|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_132|, #length=|v_#length_293|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_132|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_62|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_62|, ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_85|, ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_150|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_102|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_97|, ~#a~0.base=|v_~#a~0.base_135|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_138|, #NULL.base=|v_#NULL.base_48|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_167|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_97|, #StackHeapBarrier=|v_#StackHeapBarrier_111|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_180|, #valid=|v_#valid_430|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_109|, #memory_int=|v_#memory_int_315|, ~#a~0.offset=|v_~#a~0.offset_130|, ~x~0=v_~x~0_132, ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_97|} AuxVars[|v_ULTIMATE.start_main_#t~nondet3#1_181|] AssignedVars[ULTIMATE.start_main_~#t~1#1.offset, ULTIMATE.start_main_#t~mem8#1, ULTIMATE.start_main_~#t~1#1.base, #NULL.offset, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_~sum~0#1, ULTIMATE.start_main_~n~0#1, ULTIMATE.start_assume_abort_if_not_~cond#1, ULTIMATE.start_main_#t~post9#1, #length, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#res#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#in~argv#1.offset, ~#a~0.base, ULTIMATE.start_main_#t~mem10#1, #NULL.base, ULTIMATE.start_main_#t~pre5#1, ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#t~nondet3#1, #valid, ULTIMATE.start_main_#t~post7#1, #memory_int, ~#a~0.offset, ~x~0, ULTIMATE.start_assume_abort_if_not_#in~cond#1] 121#[L702-6]don't care [1060] L702-6-->L705-5: Formula: (and (= |v_ULTIMATE.start_main_~i~0#1_Out_34| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_In_33| |v_ULTIMATE.start_main_~n~0#1_In_37|))) InVars {ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_In_37|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_In_33|} OutVars{ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_In_37|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_Out_34|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] 123#[L705-5]don't care [1075] L705-5-->L709-6: Formula: (and (= |v_ULTIMATE.start_main_~sum~0#1_215| 0) (= |v_ULTIMATE.start_main_~i~0#1_473| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_474| |v_ULTIMATE.start_main_~n~0#1_273|))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_474|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_273|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_473|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_215|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_273|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1] 127#[L709-6]don't care [2022-07-26 14:08:33,668 INFO L735 eck$LassoCheckResult]: Loop: 127#[L709-6]don't care [1091] L709-6-->L709-6: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_498| 4))) (let ((.cse0 (+ |v_~#a~0.offset_124| .cse1))) (and (= (+ |v_ULTIMATE.start_main_~i~0#1_498| 1) |v_ULTIMATE.start_main_~i~0#1_497|) (= (+ |v_ULTIMATE.start_main_~sum~0#1_224| (select (select |v_#memory_int_307| |v_~#a~0.base_129|) .cse0)) |v_ULTIMATE.start_main_~sum~0#1_223|) (<= 0 .cse0) (= (select |v_#valid_410| |v_~#a~0.base_129|) 1) (<= (+ |v_~#a~0.offset_124| .cse1 4) (select |v_#length_279| |v_~#a~0.base_129|)) (< |v_ULTIMATE.start_main_~i~0#1_498| |v_ULTIMATE.start_main_~n~0#1_285|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_498|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_224|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_285|, #valid=|v_#valid_410|, #memory_int=|v_#memory_int_307|, ~#a~0.base=|v_~#a~0.base_129|, ~#a~0.offset=|v_~#a~0.offset_124|, #length=|v_#length_279|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_497|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_223|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_285|, #valid=|v_#valid_410|, #memory_int=|v_#memory_int_307|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_126|, ~#a~0.base=|v_~#a~0.base_129|, ~#a~0.offset=|v_~#a~0.offset_124|, #length=|v_#length_279|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_132|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1, ULTIMATE.start_main_#t~post9#1, ULTIMATE.start_main_#t~mem10#1] 127#[L709-6]don't care [2022-07-26 14:08:33,668 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:33,669 INFO L85 PathProgramCache]: Analyzing trace with hash 1122748, now seen corresponding path program 1 times [2022-07-26 14:08:33,669 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:33,669 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1871466277] [2022-07-26 14:08:33,669 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:33,669 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:33,673 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-26 14:08:33,680 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-26 14:08:33,681 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-26 14:08:33,681 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1871466277] [2022-07-26 14:08:33,681 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1871466277] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-26 14:08:33,681 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-26 14:08:33,681 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-07-26 14:08:33,681 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1884611073] [2022-07-26 14:08:33,681 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-26 14:08:33,681 INFO L738 eck$LassoCheckResult]: stem already infeasible [2022-07-26 14:08:33,681 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:33,681 INFO L85 PathProgramCache]: Analyzing trace with hash 1122, now seen corresponding path program 1 times [2022-07-26 14:08:33,681 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:33,681 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [987090914] [2022-07-26 14:08:33,681 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:33,681 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:33,684 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:33,684 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 14:08:33,685 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:33,686 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 14:08:33,707 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-26 14:08:33,707 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-07-26 14:08:33,707 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-07-26 14:08:33,708 INFO L87 Difference]: Start difference. First operand currently 23184 states, but on-demand construction may add more states Second operand has 3 states, 3 states have (on average 1.0) internal successors, (3), 2 states have internal predecessors, (3), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-26 14:08:33,933 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-26 14:08:33,933 INFO L93 Difference]: Finished difference Result 23185 states and 99200 transitions. [2022-07-26 14:08:33,933 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 23185 states and 99200 transitions. [2022-07-26 14:08:34,188 INFO L131 ngComponentsAnalysis]: Automaton has 4149 accepting balls. 4149 [2022-07-26 14:08:34,593 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 23185 states to 20059 states and 86699 transitions. [2022-07-26 14:08:34,593 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 20059 [2022-07-26 14:08:34,633 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 20059 [2022-07-26 14:08:34,633 INFO L73 IsDeterministic]: Start isDeterministic. Operand 20059 states and 86699 transitions. [2022-07-26 14:08:34,667 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-26 14:08:34,667 INFO L220 hiAutomatonCegarLoop]: Abstraction has 20059 states and 86699 transitions. [2022-07-26 14:08:34,709 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 20059 states and 86699 transitions. [2022-07-26 14:08:35,170 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 20059 to 20059. [2022-07-26 14:08:35,215 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20059 states, 20059 states have (on average 4.322199511441248) internal successors, (86699), 20058 states have internal predecessors, (86699), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-26 14:08:35,503 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20059 states to 20059 states and 86699 transitions. [2022-07-26 14:08:35,504 INFO L242 hiAutomatonCegarLoop]: Abstraction has 20059 states and 86699 transitions. [2022-07-26 14:08:35,504 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-07-26 14:08:35,504 INFO L426 stractBuchiCegarLoop]: Abstraction has 20059 states and 86699 transitions. [2022-07-26 14:08:35,504 INFO L333 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2022-07-26 14:08:35,504 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 20059 states and 86699 transitions. [2022-07-26 14:08:35,805 INFO L131 ngComponentsAnalysis]: Automaton has 4149 accepting balls. 4149 [2022-07-26 14:08:35,806 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 14:08:35,806 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 14:08:35,807 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1] [2022-07-26 14:08:35,807 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 14:08:35,807 INFO L733 eck$LassoCheckResult]: Stem: 106374#[ULTIMATE.startENTRY]don't care [1102] ULTIMATE.startENTRY-->L702-6: Formula: (let ((.cse1 (select |v_#memory_int_316| 1))) (and (= (select |v_#length_294| 1) 2) (= |v_ULTIMATE.start_main_#in~argv#1.offset_97| |v_ULTIMATE.start_main_~argv#1.offset_91|) (= |v_#NULL.base_48| 0) (= |v_#NULL.offset_48| 0) (= (store |v_#length_294| |v_ULTIMATE.start_main_~#t~1#1.base_245| 40) |v_#length_293|) (= (select |v_#valid_431| 0) 0) (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_127| 0)) (= (store |v_#memory_int_316| |v_~#a~0.base_135| (store ((as const (Array Int Int)) 0) |v_~#a~0.offset_130| 0)) |v_#memory_int_315|) (= (select |v_#valid_431| |v_ULTIMATE.start_main_~#t~1#1.base_245|) 0) (< 0 |v_#StackHeapBarrier_111|) (= (store |v_#valid_431| |v_ULTIMATE.start_main_~#t~1#1.base_245| 1) |v_#valid_430|) (= v_~x~0_132 0) (= (select |v_#valid_431| 2) 1) (= (let ((.cse0 (mod |v_ULTIMATE.start_main_#t~nondet3#1_181| 4294967296))) (ite (<= .cse0 2147483647) .cse0 (+ (- 4294967296) .cse0))) |v_ULTIMATE.start_main_~n~0#1_295|) (= |v_ULTIMATE.start_main_#in~argv#1.offset_97| |v_ULTIMATE.start_#in~argv#1.offset_62|) (= |v_~#a~0.offset_130| 0) (= |v_ULTIMATE.start_#in~argv#1.base_62| |v_ULTIMATE.start_main_#in~argv#1.base_97|) (= 0 |v_ULTIMATE.start_main_~#t~1#1.offset_193|) (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_127| |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_97|) (= (select |v_#valid_431| 3) 1) (= 9 (select |v_#length_294| 2)) (= |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_97| (ite (and (<= 5 |v_ULTIMATE.start_main_~n~0#1_295|) (<= |v_ULTIMATE.start_main_~n~0#1_295| 10)) 1 0)) (= 1 (select |v_#valid_431| 1)) (= |v_ULTIMATE.start_main_#in~argv#1.base_97| |v_ULTIMATE.start_main_~argv#1.base_91|) (= |v_ULTIMATE.start_main_~i~0#1_515| 0) (= |v_ULTIMATE.start_main_~argc#1_85| |v_ULTIMATE.start_main_#in~argc#1_95|) (= 3 |v_~#a~0.base_135|) (= 48 (select .cse1 0)) (= 40 (select |v_#length_294| 3)) (= |v_ULTIMATE.start_#in~argc#1_62| |v_ULTIMATE.start_main_#in~argc#1_95|) (= (select .cse1 1) 0) (< |v_#StackHeapBarrier_111| |v_ULTIMATE.start_main_~#t~1#1.base_245|))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_62|, #StackHeapBarrier=|v_#StackHeapBarrier_111|, #valid=|v_#valid_431|, #memory_int=|v_#memory_int_316|, #length=|v_#length_294|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_62|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_62|} OutVars{ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_193|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_116|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_245|, #NULL.offset=|v_#NULL.offset_48|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_91|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_91|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_62|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_515|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_95|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_233|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_295|, ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_127|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_132|, #length=|v_#length_293|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_132|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_62|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_62|, ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_85|, ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_150|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_102|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_97|, ~#a~0.base=|v_~#a~0.base_135|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_138|, #NULL.base=|v_#NULL.base_48|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_167|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_97|, #StackHeapBarrier=|v_#StackHeapBarrier_111|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_180|, #valid=|v_#valid_430|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_109|, #memory_int=|v_#memory_int_315|, ~#a~0.offset=|v_~#a~0.offset_130|, ~x~0=v_~x~0_132, ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_97|} AuxVars[|v_ULTIMATE.start_main_#t~nondet3#1_181|] AssignedVars[ULTIMATE.start_main_~#t~1#1.offset, ULTIMATE.start_main_#t~mem8#1, ULTIMATE.start_main_~#t~1#1.base, #NULL.offset, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_~sum~0#1, ULTIMATE.start_main_~n~0#1, ULTIMATE.start_assume_abort_if_not_~cond#1, ULTIMATE.start_main_#t~post9#1, #length, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#res#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#in~argv#1.offset, ~#a~0.base, ULTIMATE.start_main_#t~mem10#1, #NULL.base, ULTIMATE.start_main_#t~pre5#1, ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#t~nondet3#1, #valid, ULTIMATE.start_main_#t~post7#1, #memory_int, ~#a~0.offset, ~x~0, ULTIMATE.start_assume_abort_if_not_#in~cond#1] 106376#[L702-6]don't care [1068] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_469| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_171|))) (and (= |v_#pthreadsForks_77| (+ |v_#pthreadsForks_78| 1)) (= |v_#pthreadsForks_78| |v_ULTIMATE.start_main_#t~pre5#1_157|) (= (select |v_#valid_386| |v_ULTIMATE.start_main_~#t~1#1.base_217|) 1) (<= 0 .cse0) (<= (+ 4 .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_171|) (select |v_#length_265| |v_ULTIMATE.start_main_~#t~1#1.base_217|)) (= (store |v_#memory_int_296| |v_ULTIMATE.start_main_~#t~1#1.base_217| (store (select |v_#memory_int_296| |v_ULTIMATE.start_main_~#t~1#1.base_217|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_157|)) |v_#memory_int_295|) (< |v_ULTIMATE.start_main_~i~0#1_469| |v_ULTIMATE.start_main_~n~0#1_269|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_469|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_171|, #pthreadsForks=|v_#pthreadsForks_78|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_269|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_217|, #valid=|v_#valid_386|, #memory_int=|v_#memory_int_296|, #length=|v_#length_265|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_157|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_469|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_171|, #pthreadsForks=|v_#pthreadsForks_77|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_269|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_217|, #valid=|v_#valid_386|, #memory_int=|v_#memory_int_295|, #length=|v_#length_265|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 109622#[L703-3]don't care [1004] L703-3-->thrENTRY: Formula: (and (= v_thrThread1of5ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_142|) (= |v_thrThread1of5ForFork0_#in~arg.offset_4| 0) (= |v_thrThread1of5ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_142|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_142|, thrThread1of5ForFork0_~arg.offset=v_thrThread1of5ForFork0_~arg.offset_4, thrThread1of5ForFork0_#res.offset=|v_thrThread1of5ForFork0_#res.offset_2|, thrThread1of5ForFork0_~arg.base=v_thrThread1of5ForFork0_~arg.base_4, thrThread1of5ForFork0_thidvar0=v_thrThread1of5ForFork0_thidvar0_2, thrThread1of5ForFork0_#in~arg.base=|v_thrThread1of5ForFork0_#in~arg.base_4|, thrThread1of5ForFork0_#in~arg.offset=|v_thrThread1of5ForFork0_#in~arg.offset_4|, thrThread1of5ForFork0_~t~0=v_thrThread1of5ForFork0_~t~0_8, thrThread1of5ForFork0_#res.base=|v_thrThread1of5ForFork0_#res.base_2|} AuxVars[] AssignedVars[thrThread1of5ForFork0_~arg.offset, thrThread1of5ForFork0_#res.offset, thrThread1of5ForFork0_~arg.base, thrThread1of5ForFork0_thidvar0, thrThread1of5ForFork0_#in~arg.base, thrThread1of5ForFork0_#in~arg.offset, thrThread1of5ForFork0_~t~0, thrThread1of5ForFork0_#res.base] 107736#[thrENTRY, L703-4]don't care [940] L703-4-->L703-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1] 93912#[L703-5, thrENTRY]don't care [1078] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_482| 1) |v_ULTIMATE.start_main_~i~0#1_481|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_482|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_481|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_94|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_122|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#t~post4#1] 93916#[L702-6, thrENTRY]don't care [1060] L702-6-->L705-5: Formula: (and (= |v_ULTIMATE.start_main_~i~0#1_Out_34| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_In_33| |v_ULTIMATE.start_main_~n~0#1_In_37|))) InVars {ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_In_37|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_In_33|} OutVars{ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_In_37|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_Out_34|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] 109702#[thrENTRY, L705-5]don't care [1075] L705-5-->L709-6: Formula: (and (= |v_ULTIMATE.start_main_~sum~0#1_215| 0) (= |v_ULTIMATE.start_main_~i~0#1_473| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_474| |v_ULTIMATE.start_main_~n~0#1_273|))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_474|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_273|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_473|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_215|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_273|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1] 102070#[L709-6, thrENTRY]don't care [2022-07-26 14:08:35,807 INFO L735 eck$LassoCheckResult]: Loop: 102070#[L709-6, thrENTRY]don't care [1091] L709-6-->L709-6: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_498| 4))) (let ((.cse0 (+ |v_~#a~0.offset_124| .cse1))) (and (= (+ |v_ULTIMATE.start_main_~i~0#1_498| 1) |v_ULTIMATE.start_main_~i~0#1_497|) (= (+ |v_ULTIMATE.start_main_~sum~0#1_224| (select (select |v_#memory_int_307| |v_~#a~0.base_129|) .cse0)) |v_ULTIMATE.start_main_~sum~0#1_223|) (<= 0 .cse0) (= (select |v_#valid_410| |v_~#a~0.base_129|) 1) (<= (+ |v_~#a~0.offset_124| .cse1 4) (select |v_#length_279| |v_~#a~0.base_129|)) (< |v_ULTIMATE.start_main_~i~0#1_498| |v_ULTIMATE.start_main_~n~0#1_285|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_498|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_224|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_285|, #valid=|v_#valid_410|, #memory_int=|v_#memory_int_307|, ~#a~0.base=|v_~#a~0.base_129|, ~#a~0.offset=|v_~#a~0.offset_124|, #length=|v_#length_279|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_497|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_223|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_285|, #valid=|v_#valid_410|, #memory_int=|v_#memory_int_307|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_126|, ~#a~0.base=|v_~#a~0.base_129|, ~#a~0.offset=|v_~#a~0.offset_124|, #length=|v_#length_279|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_132|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1, ULTIMATE.start_main_#t~post9#1, ULTIMATE.start_main_#t~mem10#1] 102070#[L709-6, thrENTRY]don't care [2022-07-26 14:08:35,807 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:35,807 INFO L85 PathProgramCache]: Analyzing trace with hash 1986774022, now seen corresponding path program 1 times [2022-07-26 14:08:35,808 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:35,808 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1561065596] [2022-07-26 14:08:35,808 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:35,808 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:35,824 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-26 14:08:35,842 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-26 14:08:35,843 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-26 14:08:35,843 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1561065596] [2022-07-26 14:08:35,843 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1561065596] provided 0 perfect and 1 imperfect interpolant sequences [2022-07-26 14:08:35,843 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1144074918] [2022-07-26 14:08:35,843 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:35,843 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-26 14:08:35,843 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-26 14:08:35,844 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-26 14:08:35,862 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-07-26 14:08:35,929 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-26 14:08:35,930 INFO L263 TraceCheckSpWp]: Trace formula consists of 97 conjuncts, 4 conjunts are in the unsatisfiable core [2022-07-26 14:08:35,930 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-26 14:08:35,945 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-26 14:08:35,945 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-26 14:08:35,956 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-26 14:08:35,957 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1144074918] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-26 14:08:35,957 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-07-26 14:08:35,957 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 3, 3] total 6 [2022-07-26 14:08:35,957 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1590083259] [2022-07-26 14:08:35,957 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-07-26 14:08:35,957 INFO L738 eck$LassoCheckResult]: stem already infeasible [2022-07-26 14:08:35,957 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:35,957 INFO L85 PathProgramCache]: Analyzing trace with hash 1122, now seen corresponding path program 2 times [2022-07-26 14:08:35,957 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:35,957 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1430201566] [2022-07-26 14:08:35,957 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:35,958 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:35,960 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:35,960 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 14:08:35,962 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:35,965 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 14:08:36,005 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-26 14:08:36,006 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-07-26 14:08:36,006 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=35, Unknown=0, NotChecked=0, Total=56 [2022-07-26 14:08:36,006 INFO L87 Difference]: Start difference. First operand 20059 states and 86699 transitions. cyclomatic complexity: 70789 Second operand has 8 states, 7 states have (on average 2.2857142857142856) internal successors, (16), 7 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-26 14:08:36,237 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-26 14:08:36,237 INFO L93 Difference]: Finished difference Result 22442 states and 92912 transitions. [2022-07-26 14:08:36,237 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 22442 states and 92912 transitions. [2022-07-26 14:08:36,593 INFO L131 ngComponentsAnalysis]: Automaton has 3125 accepting balls. 3125 [2022-07-26 14:08:37,013 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 22442 states to 22442 states and 92912 transitions. [2022-07-26 14:08:37,014 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 22442 [2022-07-26 14:08:37,053 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 22442 [2022-07-26 14:08:37,053 INFO L73 IsDeterministic]: Start isDeterministic. Operand 22442 states and 92912 transitions. [2022-07-26 14:08:37,087 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-26 14:08:37,087 INFO L220 hiAutomatonCegarLoop]: Abstraction has 22442 states and 92912 transitions. [2022-07-26 14:08:37,132 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 22442 states and 92912 transitions. [2022-07-26 14:08:37,531 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 22442 to 19375. [2022-07-26 14:08:37,566 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19375 states, 19375 states have (on average 4.236903225806452) internal successors, (82090), 19374 states have internal predecessors, (82090), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-26 14:08:37,637 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19375 states to 19375 states and 82090 transitions. [2022-07-26 14:08:37,637 INFO L242 hiAutomatonCegarLoop]: Abstraction has 19375 states and 82090 transitions. [2022-07-26 14:08:37,637 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-07-26 14:08:37,637 INFO L426 stractBuchiCegarLoop]: Abstraction has 19375 states and 82090 transitions. [2022-07-26 14:08:37,637 INFO L333 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2022-07-26 14:08:37,637 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 19375 states and 82090 transitions. [2022-07-26 14:08:37,926 INFO L131 ngComponentsAnalysis]: Automaton has 3125 accepting balls. 3125 [2022-07-26 14:08:37,926 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 14:08:37,926 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 14:08:37,927 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-26 14:08:37,927 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 14:08:37,927 INFO L733 eck$LassoCheckResult]: Stem: 167315#[ULTIMATE.startENTRY]don't care [1102] ULTIMATE.startENTRY-->L702-6: Formula: (let ((.cse1 (select |v_#memory_int_316| 1))) (and (= (select |v_#length_294| 1) 2) (= |v_ULTIMATE.start_main_#in~argv#1.offset_97| |v_ULTIMATE.start_main_~argv#1.offset_91|) (= |v_#NULL.base_48| 0) (= |v_#NULL.offset_48| 0) (= (store |v_#length_294| |v_ULTIMATE.start_main_~#t~1#1.base_245| 40) |v_#length_293|) (= (select |v_#valid_431| 0) 0) (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_127| 0)) (= (store |v_#memory_int_316| |v_~#a~0.base_135| (store ((as const (Array Int Int)) 0) |v_~#a~0.offset_130| 0)) |v_#memory_int_315|) (= (select |v_#valid_431| |v_ULTIMATE.start_main_~#t~1#1.base_245|) 0) (< 0 |v_#StackHeapBarrier_111|) (= (store |v_#valid_431| |v_ULTIMATE.start_main_~#t~1#1.base_245| 1) |v_#valid_430|) (= v_~x~0_132 0) (= (select |v_#valid_431| 2) 1) (= (let ((.cse0 (mod |v_ULTIMATE.start_main_#t~nondet3#1_181| 4294967296))) (ite (<= .cse0 2147483647) .cse0 (+ (- 4294967296) .cse0))) |v_ULTIMATE.start_main_~n~0#1_295|) (= |v_ULTIMATE.start_main_#in~argv#1.offset_97| |v_ULTIMATE.start_#in~argv#1.offset_62|) (= |v_~#a~0.offset_130| 0) (= |v_ULTIMATE.start_#in~argv#1.base_62| |v_ULTIMATE.start_main_#in~argv#1.base_97|) (= 0 |v_ULTIMATE.start_main_~#t~1#1.offset_193|) (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_127| |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_97|) (= (select |v_#valid_431| 3) 1) (= 9 (select |v_#length_294| 2)) (= |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_97| (ite (and (<= 5 |v_ULTIMATE.start_main_~n~0#1_295|) (<= |v_ULTIMATE.start_main_~n~0#1_295| 10)) 1 0)) (= 1 (select |v_#valid_431| 1)) (= |v_ULTIMATE.start_main_#in~argv#1.base_97| |v_ULTIMATE.start_main_~argv#1.base_91|) (= |v_ULTIMATE.start_main_~i~0#1_515| 0) (= |v_ULTIMATE.start_main_~argc#1_85| |v_ULTIMATE.start_main_#in~argc#1_95|) (= 3 |v_~#a~0.base_135|) (= 48 (select .cse1 0)) (= 40 (select |v_#length_294| 3)) (= |v_ULTIMATE.start_#in~argc#1_62| |v_ULTIMATE.start_main_#in~argc#1_95|) (= (select .cse1 1) 0) (< |v_#StackHeapBarrier_111| |v_ULTIMATE.start_main_~#t~1#1.base_245|))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_62|, #StackHeapBarrier=|v_#StackHeapBarrier_111|, #valid=|v_#valid_431|, #memory_int=|v_#memory_int_316|, #length=|v_#length_294|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_62|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_62|} OutVars{ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_193|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_116|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_245|, #NULL.offset=|v_#NULL.offset_48|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_91|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_91|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_62|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_515|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_95|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_233|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_295|, ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_127|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_132|, #length=|v_#length_293|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_132|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_62|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_62|, ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_85|, ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_150|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_102|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_97|, ~#a~0.base=|v_~#a~0.base_135|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_138|, #NULL.base=|v_#NULL.base_48|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_167|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_97|, #StackHeapBarrier=|v_#StackHeapBarrier_111|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_180|, #valid=|v_#valid_430|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_109|, #memory_int=|v_#memory_int_315|, ~#a~0.offset=|v_~#a~0.offset_130|, ~x~0=v_~x~0_132, ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_97|} AuxVars[|v_ULTIMATE.start_main_#t~nondet3#1_181|] AssignedVars[ULTIMATE.start_main_~#t~1#1.offset, ULTIMATE.start_main_#t~mem8#1, ULTIMATE.start_main_~#t~1#1.base, #NULL.offset, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_~sum~0#1, ULTIMATE.start_main_~n~0#1, ULTIMATE.start_assume_abort_if_not_~cond#1, ULTIMATE.start_main_#t~post9#1, #length, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#res#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#in~argv#1.offset, ~#a~0.base, ULTIMATE.start_main_#t~mem10#1, #NULL.base, ULTIMATE.start_main_#t~pre5#1, ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#t~nondet3#1, #valid, ULTIMATE.start_main_#t~post7#1, #memory_int, ~#a~0.offset, ~x~0, ULTIMATE.start_assume_abort_if_not_#in~cond#1] 167317#[L702-6]don't care [1068] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_469| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_171|))) (and (= |v_#pthreadsForks_77| (+ |v_#pthreadsForks_78| 1)) (= |v_#pthreadsForks_78| |v_ULTIMATE.start_main_#t~pre5#1_157|) (= (select |v_#valid_386| |v_ULTIMATE.start_main_~#t~1#1.base_217|) 1) (<= 0 .cse0) (<= (+ 4 .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_171|) (select |v_#length_265| |v_ULTIMATE.start_main_~#t~1#1.base_217|)) (= (store |v_#memory_int_296| |v_ULTIMATE.start_main_~#t~1#1.base_217| (store (select |v_#memory_int_296| |v_ULTIMATE.start_main_~#t~1#1.base_217|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_157|)) |v_#memory_int_295|) (< |v_ULTIMATE.start_main_~i~0#1_469| |v_ULTIMATE.start_main_~n~0#1_269|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_469|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_171|, #pthreadsForks=|v_#pthreadsForks_78|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_269|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_217|, #valid=|v_#valid_386|, #memory_int=|v_#memory_int_296|, #length=|v_#length_265|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_157|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_469|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_171|, #pthreadsForks=|v_#pthreadsForks_77|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_269|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_217|, #valid=|v_#valid_386|, #memory_int=|v_#memory_int_295|, #length=|v_#length_265|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 170685#[L703-3]don't care [1004] L703-3-->thrENTRY: Formula: (and (= v_thrThread1of5ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_142|) (= |v_thrThread1of5ForFork0_#in~arg.offset_4| 0) (= |v_thrThread1of5ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_142|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_142|, thrThread1of5ForFork0_~arg.offset=v_thrThread1of5ForFork0_~arg.offset_4, thrThread1of5ForFork0_#res.offset=|v_thrThread1of5ForFork0_#res.offset_2|, thrThread1of5ForFork0_~arg.base=v_thrThread1of5ForFork0_~arg.base_4, thrThread1of5ForFork0_thidvar0=v_thrThread1of5ForFork0_thidvar0_2, thrThread1of5ForFork0_#in~arg.base=|v_thrThread1of5ForFork0_#in~arg.base_4|, thrThread1of5ForFork0_#in~arg.offset=|v_thrThread1of5ForFork0_#in~arg.offset_4|, thrThread1of5ForFork0_~t~0=v_thrThread1of5ForFork0_~t~0_8, thrThread1of5ForFork0_#res.base=|v_thrThread1of5ForFork0_#res.base_2|} AuxVars[] AssignedVars[thrThread1of5ForFork0_~arg.offset, thrThread1of5ForFork0_#res.offset, thrThread1of5ForFork0_~arg.base, thrThread1of5ForFork0_thidvar0, thrThread1of5ForFork0_#in~arg.base, thrThread1of5ForFork0_#in~arg.offset, thrThread1of5ForFork0_~t~0, thrThread1of5ForFork0_#res.base] 168677#[thrENTRY, L703-4]don't care [1042] thrENTRY-->L694: Formula: (and (= v_thrThread1of5ForFork0_~arg.offset_5 |v_thrThread1of5ForFork0_#in~arg.offset_5|) (= v_thrThread1of5ForFork0_~t~0_9 v_~x~0_112) (= |v_thrThread1of5ForFork0_#in~arg.base_5| v_thrThread1of5ForFork0_~arg.base_5)) InVars {thrThread1of5ForFork0_#in~arg.base=|v_thrThread1of5ForFork0_#in~arg.base_5|, thrThread1of5ForFork0_#in~arg.offset=|v_thrThread1of5ForFork0_#in~arg.offset_5|, ~x~0=v_~x~0_112} OutVars{thrThread1of5ForFork0_~arg.offset=v_thrThread1of5ForFork0_~arg.offset_5, thrThread1of5ForFork0_~arg.base=v_thrThread1of5ForFork0_~arg.base_5, thrThread1of5ForFork0_#in~arg.base=|v_thrThread1of5ForFork0_#in~arg.base_5|, thrThread1of5ForFork0_#in~arg.offset=|v_thrThread1of5ForFork0_#in~arg.offset_5|, ~x~0=v_~x~0_112, thrThread1of5ForFork0_~t~0=v_thrThread1of5ForFork0_~t~0_9} AuxVars[] AssignedVars[thrThread1of5ForFork0_~arg.offset, thrThread1of5ForFork0_~arg.base, thrThread1of5ForFork0_~t~0] 168679#[L694, L703-4]don't care [940] L703-4-->L703-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1] 155247#[L703-5, L694]don't care [1078] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_482| 1) |v_ULTIMATE.start_main_~i~0#1_481|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_482|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_481|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_94|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_122|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#t~post4#1] 170875#[L702-6, L694]don't care [1060] L702-6-->L705-5: Formula: (and (= |v_ULTIMATE.start_main_~i~0#1_Out_34| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_In_33| |v_ULTIMATE.start_main_~n~0#1_In_37|))) InVars {ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_In_37|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_In_33|} OutVars{ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_In_37|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_Out_34|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] 170793#[L705-5, L694]don't care [1049] L705-5-->L706-1: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_455| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_169|))) (and (<= 0 .cse0) (= |v_ULTIMATE.start_main_#t~mem8#1_106| (select (select |v_#memory_int_287| |v_ULTIMATE.start_main_~#t~1#1.base_215|) .cse0)) (<= (+ .cse1 4 |v_ULTIMATE.start_main_~#t~1#1.offset_169|) (select |v_#length_257| |v_ULTIMATE.start_main_~#t~1#1.base_215|)) (= (select |v_#valid_378| |v_ULTIMATE.start_main_~#t~1#1.base_215|) 1) (< |v_ULTIMATE.start_main_~i~0#1_455| |v_ULTIMATE.start_main_~n~0#1_261|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_455|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_169|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_261|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_215|, #valid=|v_#valid_378|, #memory_int=|v_#memory_int_287|, #length=|v_#length_257|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_455|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_106|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_169|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_261|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_215|, #valid=|v_#valid_378|, #memory_int=|v_#memory_int_287|, #length=|v_#length_257|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~mem8#1] 144713#[L706-1, L694]don't care [989] L694-->L694-1: Formula: (let ((.cse1 (* v_thrThread1of5ForFork0_~t~0_3 4))) (let ((.cse0 (+ |v_~#a~0.offset_4| .cse1))) (and (= |v_#memory_int_11| (store |v_#memory_int_12| |v_~#a~0.base_5| (store (select |v_#memory_int_12| |v_~#a~0.base_5|) .cse0 1))) (= (select |v_#valid_12| |v_~#a~0.base_5|) 1) (<= (+ |v_~#a~0.offset_4| .cse1 4) (select |v_#length_9| |v_~#a~0.base_5|)) (<= 0 .cse0)))) InVars {#valid=|v_#valid_12|, #memory_int=|v_#memory_int_12|, ~#a~0.base=|v_~#a~0.base_5|, ~#a~0.offset=|v_~#a~0.offset_4|, #length=|v_#length_9|, thrThread1of5ForFork0_~t~0=v_thrThread1of5ForFork0_~t~0_3} OutVars{#valid=|v_#valid_12|, #memory_int=|v_#memory_int_11|, ~#a~0.base=|v_~#a~0.base_5|, ~#a~0.offset=|v_~#a~0.offset_4|, #length=|v_#length_9|, thrThread1of5ForFork0_~t~0=v_thrThread1of5ForFork0_~t~0_3} AuxVars[] AssignedVars[#memory_int] 144715#[L694-1, L706-1]don't care [1052] L694-1-->thrEXIT: Formula: (= (+ v_thrThread1of5ForFork0_~t~0_11 1) v_~x~0_118) InVars {thrThread1of5ForFork0_~t~0=v_thrThread1of5ForFork0_~t~0_11} OutVars{~x~0=v_~x~0_118, thrThread1of5ForFork0_~t~0=v_thrThread1of5ForFork0_~t~0_11} AuxVars[] AssignedVars[~x~0] 169889#[L706-1, thrEXIT]don't care [1009] thrEXIT-->L706-2: Formula: (= (let ((.cse0 (mod |v_ULTIMATE.start_main_#t~mem8#1_95| 4294967296))) (ite (<= .cse0 2147483647) .cse0 (+ .cse0 (- 4294967296)))) v_thrThread1of5ForFork0_thidvar0_4) InVars {ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_95|, thrThread1of5ForFork0_thidvar0=v_thrThread1of5ForFork0_thidvar0_4} OutVars{ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_95|, thrThread1of5ForFork0_thidvar0=v_thrThread1of5ForFork0_thidvar0_4} AuxVars[] AssignedVars[] 147533#[L706-2]don't care [923] L706-2-->L705-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~mem8#1] 133613#[L705-2]don't care [1077] L705-2-->L705-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_477| (+ |v_ULTIMATE.start_main_~i~0#1_478| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_478|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_477|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_99|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~post7#1] 133615#[L705-5]don't care [1075] L705-5-->L709-6: Formula: (and (= |v_ULTIMATE.start_main_~sum~0#1_215| 0) (= |v_ULTIMATE.start_main_~i~0#1_473| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_474| |v_ULTIMATE.start_main_~n~0#1_273|))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_474|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_273|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_473|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_215|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_273|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1] 148595#[L709-6]don't care [2022-07-26 14:08:37,927 INFO L735 eck$LassoCheckResult]: Loop: 148595#[L709-6]don't care [1091] L709-6-->L709-6: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_498| 4))) (let ((.cse0 (+ |v_~#a~0.offset_124| .cse1))) (and (= (+ |v_ULTIMATE.start_main_~i~0#1_498| 1) |v_ULTIMATE.start_main_~i~0#1_497|) (= (+ |v_ULTIMATE.start_main_~sum~0#1_224| (select (select |v_#memory_int_307| |v_~#a~0.base_129|) .cse0)) |v_ULTIMATE.start_main_~sum~0#1_223|) (<= 0 .cse0) (= (select |v_#valid_410| |v_~#a~0.base_129|) 1) (<= (+ |v_~#a~0.offset_124| .cse1 4) (select |v_#length_279| |v_~#a~0.base_129|)) (< |v_ULTIMATE.start_main_~i~0#1_498| |v_ULTIMATE.start_main_~n~0#1_285|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_498|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_224|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_285|, #valid=|v_#valid_410|, #memory_int=|v_#memory_int_307|, ~#a~0.base=|v_~#a~0.base_129|, ~#a~0.offset=|v_~#a~0.offset_124|, #length=|v_#length_279|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_497|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_223|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_285|, #valid=|v_#valid_410|, #memory_int=|v_#memory_int_307|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_126|, ~#a~0.base=|v_~#a~0.base_129|, ~#a~0.offset=|v_~#a~0.offset_124|, #length=|v_#length_279|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_132|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1, ULTIMATE.start_main_#t~post9#1, ULTIMATE.start_main_#t~mem10#1] 148595#[L709-6]don't care [2022-07-26 14:08:37,927 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:37,928 INFO L85 PathProgramCache]: Analyzing trace with hash -238014453, now seen corresponding path program 1 times [2022-07-26 14:08:37,928 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:37,928 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [794242009] [2022-07-26 14:08:37,928 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:37,928 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:37,941 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-26 14:08:37,960 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-07-26 14:08:37,961 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-26 14:08:37,961 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [794242009] [2022-07-26 14:08:37,961 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [794242009] provided 0 perfect and 1 imperfect interpolant sequences [2022-07-26 14:08:37,961 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [76380883] [2022-07-26 14:08:37,961 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:37,961 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-26 14:08:37,961 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-26 14:08:37,962 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-26 14:08:37,963 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-07-26 14:08:38,028 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-26 14:08:38,028 INFO L263 TraceCheckSpWp]: Trace formula consists of 125 conjuncts, 8 conjunts are in the unsatisfiable core [2022-07-26 14:08:38,029 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-26 14:08:38,058 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-07-26 14:08:38,058 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-26 14:08:38,072 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-07-26 14:08:38,073 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [76380883] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-26 14:08:38,073 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-07-26 14:08:38,073 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 3, 3] total 7 [2022-07-26 14:08:38,073 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1330438195] [2022-07-26 14:08:38,073 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-07-26 14:08:38,074 INFO L738 eck$LassoCheckResult]: stem already infeasible [2022-07-26 14:08:38,074 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:38,074 INFO L85 PathProgramCache]: Analyzing trace with hash 1122, now seen corresponding path program 3 times [2022-07-26 14:08:38,074 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:38,074 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [326389366] [2022-07-26 14:08:38,074 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:38,075 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:38,083 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:38,083 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 14:08:38,084 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:38,085 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 14:08:38,110 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-26 14:08:38,110 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-07-26 14:08:38,110 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=30, Unknown=0, NotChecked=0, Total=56 [2022-07-26 14:08:38,111 INFO L87 Difference]: Start difference. First operand 19375 states and 82090 transitions. cyclomatic complexity: 65840 Second operand has 8 states, 8 states have (on average 3.5) internal successors, (28), 7 states have internal predecessors, (28), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-26 14:08:38,440 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-26 14:08:38,440 INFO L93 Difference]: Finished difference Result 19291 states and 81751 transitions. [2022-07-26 14:08:38,441 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 19291 states and 81751 transitions. [2022-07-26 14:08:38,633 INFO L131 ngComponentsAnalysis]: Automaton has 3125 accepting balls. 3125 [2022-07-26 14:08:38,896 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 19291 states to 19291 states and 81751 transitions. [2022-07-26 14:08:38,897 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 19291 [2022-07-26 14:08:38,928 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 19291 [2022-07-26 14:08:38,928 INFO L73 IsDeterministic]: Start isDeterministic. Operand 19291 states and 81751 transitions. [2022-07-26 14:08:38,959 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-26 14:08:38,959 INFO L220 hiAutomatonCegarLoop]: Abstraction has 19291 states and 81751 transitions. [2022-07-26 14:08:38,999 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 19291 states and 81751 transitions. [2022-07-26 14:08:39,420 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 19291 to 19291. [2022-07-26 14:08:39,452 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19291 states, 19291 states have (on average 4.23777927530973) internal successors, (81751), 19290 states have internal predecessors, (81751), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-26 14:08:39,521 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19291 states to 19291 states and 81751 transitions. [2022-07-26 14:08:39,521 INFO L242 hiAutomatonCegarLoop]: Abstraction has 19291 states and 81751 transitions. [2022-07-26 14:08:39,521 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-07-26 14:08:39,522 INFO L426 stractBuchiCegarLoop]: Abstraction has 19291 states and 81751 transitions. [2022-07-26 14:08:39,522 INFO L333 stractBuchiCegarLoop]: ======== Iteration 4 ============ [2022-07-26 14:08:39,522 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 19291 states and 81751 transitions. [2022-07-26 14:08:39,646 INFO L131 ngComponentsAnalysis]: Automaton has 3125 accepting balls. 3125 [2022-07-26 14:08:39,646 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 14:08:39,646 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 14:08:39,647 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [6, 5, 5, 1, 1, 1, 1, 1, 1, 1] [2022-07-26 14:08:39,647 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 14:08:39,648 INFO L733 eck$LassoCheckResult]: Stem: 225339#[ULTIMATE.startENTRY]don't care [1102] ULTIMATE.startENTRY-->L702-6: Formula: (let ((.cse1 (select |v_#memory_int_316| 1))) (and (= (select |v_#length_294| 1) 2) (= |v_ULTIMATE.start_main_#in~argv#1.offset_97| |v_ULTIMATE.start_main_~argv#1.offset_91|) (= |v_#NULL.base_48| 0) (= |v_#NULL.offset_48| 0) (= (store |v_#length_294| |v_ULTIMATE.start_main_~#t~1#1.base_245| 40) |v_#length_293|) (= (select |v_#valid_431| 0) 0) (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_127| 0)) (= (store |v_#memory_int_316| |v_~#a~0.base_135| (store ((as const (Array Int Int)) 0) |v_~#a~0.offset_130| 0)) |v_#memory_int_315|) (= (select |v_#valid_431| |v_ULTIMATE.start_main_~#t~1#1.base_245|) 0) (< 0 |v_#StackHeapBarrier_111|) (= (store |v_#valid_431| |v_ULTIMATE.start_main_~#t~1#1.base_245| 1) |v_#valid_430|) (= v_~x~0_132 0) (= (select |v_#valid_431| 2) 1) (= (let ((.cse0 (mod |v_ULTIMATE.start_main_#t~nondet3#1_181| 4294967296))) (ite (<= .cse0 2147483647) .cse0 (+ (- 4294967296) .cse0))) |v_ULTIMATE.start_main_~n~0#1_295|) (= |v_ULTIMATE.start_main_#in~argv#1.offset_97| |v_ULTIMATE.start_#in~argv#1.offset_62|) (= |v_~#a~0.offset_130| 0) (= |v_ULTIMATE.start_#in~argv#1.base_62| |v_ULTIMATE.start_main_#in~argv#1.base_97|) (= 0 |v_ULTIMATE.start_main_~#t~1#1.offset_193|) (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_127| |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_97|) (= (select |v_#valid_431| 3) 1) (= 9 (select |v_#length_294| 2)) (= |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_97| (ite (and (<= 5 |v_ULTIMATE.start_main_~n~0#1_295|) (<= |v_ULTIMATE.start_main_~n~0#1_295| 10)) 1 0)) (= 1 (select |v_#valid_431| 1)) (= |v_ULTIMATE.start_main_#in~argv#1.base_97| |v_ULTIMATE.start_main_~argv#1.base_91|) (= |v_ULTIMATE.start_main_~i~0#1_515| 0) (= |v_ULTIMATE.start_main_~argc#1_85| |v_ULTIMATE.start_main_#in~argc#1_95|) (= 3 |v_~#a~0.base_135|) (= 48 (select .cse1 0)) (= 40 (select |v_#length_294| 3)) (= |v_ULTIMATE.start_#in~argc#1_62| |v_ULTIMATE.start_main_#in~argc#1_95|) (= (select .cse1 1) 0) (< |v_#StackHeapBarrier_111| |v_ULTIMATE.start_main_~#t~1#1.base_245|))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_62|, #StackHeapBarrier=|v_#StackHeapBarrier_111|, #valid=|v_#valid_431|, #memory_int=|v_#memory_int_316|, #length=|v_#length_294|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_62|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_62|} OutVars{ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_193|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_116|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_245|, #NULL.offset=|v_#NULL.offset_48|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_91|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_91|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_62|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_515|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_95|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_233|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_295|, ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_127|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_132|, #length=|v_#length_293|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_132|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_62|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_62|, ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_85|, ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_150|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_102|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_97|, ~#a~0.base=|v_~#a~0.base_135|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_138|, #NULL.base=|v_#NULL.base_48|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_167|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_97|, #StackHeapBarrier=|v_#StackHeapBarrier_111|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_180|, #valid=|v_#valid_430|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_109|, #memory_int=|v_#memory_int_315|, ~#a~0.offset=|v_~#a~0.offset_130|, ~x~0=v_~x~0_132, ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_97|} AuxVars[|v_ULTIMATE.start_main_#t~nondet3#1_181|] AssignedVars[ULTIMATE.start_main_~#t~1#1.offset, ULTIMATE.start_main_#t~mem8#1, ULTIMATE.start_main_~#t~1#1.base, #NULL.offset, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_~sum~0#1, ULTIMATE.start_main_~n~0#1, ULTIMATE.start_assume_abort_if_not_~cond#1, ULTIMATE.start_main_#t~post9#1, #length, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#res#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#in~argv#1.offset, ~#a~0.base, ULTIMATE.start_main_#t~mem10#1, #NULL.base, ULTIMATE.start_main_#t~pre5#1, ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#t~nondet3#1, #valid, ULTIMATE.start_main_#t~post7#1, #memory_int, ~#a~0.offset, ~x~0, ULTIMATE.start_assume_abort_if_not_#in~cond#1] 225341#[L702-6]don't care [1068] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_469| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_171|))) (and (= |v_#pthreadsForks_77| (+ |v_#pthreadsForks_78| 1)) (= |v_#pthreadsForks_78| |v_ULTIMATE.start_main_#t~pre5#1_157|) (= (select |v_#valid_386| |v_ULTIMATE.start_main_~#t~1#1.base_217|) 1) (<= 0 .cse0) (<= (+ 4 .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_171|) (select |v_#length_265| |v_ULTIMATE.start_main_~#t~1#1.base_217|)) (= (store |v_#memory_int_296| |v_ULTIMATE.start_main_~#t~1#1.base_217| (store (select |v_#memory_int_296| |v_ULTIMATE.start_main_~#t~1#1.base_217|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_157|)) |v_#memory_int_295|) (< |v_ULTIMATE.start_main_~i~0#1_469| |v_ULTIMATE.start_main_~n~0#1_269|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_469|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_171|, #pthreadsForks=|v_#pthreadsForks_78|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_269|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_217|, #valid=|v_#valid_386|, #memory_int=|v_#memory_int_296|, #length=|v_#length_265|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_157|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_469|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_171|, #pthreadsForks=|v_#pthreadsForks_77|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_269|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_217|, #valid=|v_#valid_386|, #memory_int=|v_#memory_int_295|, #length=|v_#length_265|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 228671#[L703-3]don't care [1004] L703-3-->thrENTRY: Formula: (and (= v_thrThread1of5ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_142|) (= |v_thrThread1of5ForFork0_#in~arg.offset_4| 0) (= |v_thrThread1of5ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_142|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_142|, thrThread1of5ForFork0_~arg.offset=v_thrThread1of5ForFork0_~arg.offset_4, thrThread1of5ForFork0_#res.offset=|v_thrThread1of5ForFork0_#res.offset_2|, thrThread1of5ForFork0_~arg.base=v_thrThread1of5ForFork0_~arg.base_4, thrThread1of5ForFork0_thidvar0=v_thrThread1of5ForFork0_thidvar0_2, thrThread1of5ForFork0_#in~arg.base=|v_thrThread1of5ForFork0_#in~arg.base_4|, thrThread1of5ForFork0_#in~arg.offset=|v_thrThread1of5ForFork0_#in~arg.offset_4|, thrThread1of5ForFork0_~t~0=v_thrThread1of5ForFork0_~t~0_8, thrThread1of5ForFork0_#res.base=|v_thrThread1of5ForFork0_#res.base_2|} AuxVars[] AssignedVars[thrThread1of5ForFork0_~arg.offset, thrThread1of5ForFork0_#res.offset, thrThread1of5ForFork0_~arg.base, thrThread1of5ForFork0_thidvar0, thrThread1of5ForFork0_#in~arg.base, thrThread1of5ForFork0_#in~arg.offset, thrThread1of5ForFork0_~t~0, thrThread1of5ForFork0_#res.base] 226693#[thrENTRY, L703-4]don't care [940] L703-4-->L703-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1] 213349#[L703-5, thrENTRY]don't care [1078] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_482| 1) |v_ULTIMATE.start_main_~i~0#1_481|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_482|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_481|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_94|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_122|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#t~post4#1] 213353#[L702-6, thrENTRY]don't care [1068] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_469| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_171|))) (and (= |v_#pthreadsForks_77| (+ |v_#pthreadsForks_78| 1)) (= |v_#pthreadsForks_78| |v_ULTIMATE.start_main_#t~pre5#1_157|) (= (select |v_#valid_386| |v_ULTIMATE.start_main_~#t~1#1.base_217|) 1) (<= 0 .cse0) (<= (+ 4 .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_171|) (select |v_#length_265| |v_ULTIMATE.start_main_~#t~1#1.base_217|)) (= (store |v_#memory_int_296| |v_ULTIMATE.start_main_~#t~1#1.base_217| (store (select |v_#memory_int_296| |v_ULTIMATE.start_main_~#t~1#1.base_217|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_157|)) |v_#memory_int_295|) (< |v_ULTIMATE.start_main_~i~0#1_469| |v_ULTIMATE.start_main_~n~0#1_269|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_469|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_171|, #pthreadsForks=|v_#pthreadsForks_78|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_269|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_217|, #valid=|v_#valid_386|, #memory_int=|v_#memory_int_296|, #length=|v_#length_265|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_157|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_469|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_171|, #pthreadsForks=|v_#pthreadsForks_77|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_269|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_217|, #valid=|v_#valid_386|, #memory_int=|v_#memory_int_295|, #length=|v_#length_265|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 215405#[L703-3, thrENTRY]don't care [1005] L703-3-->thrENTRY: Formula: (and (= |v_ULTIMATE.start_main_#t~pre5#1_144| v_thrThread2of5ForFork0_thidvar0_2) (= |v_thrThread2of5ForFork0_#in~arg.base_4| 0) (= |v_thrThread2of5ForFork0_#in~arg.offset_4| 0)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_144|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_144|, thrThread2of5ForFork0_#in~arg.base=|v_thrThread2of5ForFork0_#in~arg.base_4|, thrThread2of5ForFork0_~t~0=v_thrThread2of5ForFork0_~t~0_8, thrThread2of5ForFork0_#res.offset=|v_thrThread2of5ForFork0_#res.offset_2|, thrThread2of5ForFork0_#in~arg.offset=|v_thrThread2of5ForFork0_#in~arg.offset_4|, thrThread2of5ForFork0_~arg.base=v_thrThread2of5ForFork0_~arg.base_4, thrThread2of5ForFork0_thidvar0=v_thrThread2of5ForFork0_thidvar0_2, thrThread2of5ForFork0_#res.base=|v_thrThread2of5ForFork0_#res.base_2|, thrThread2of5ForFork0_~arg.offset=v_thrThread2of5ForFork0_~arg.offset_4} AuxVars[] AssignedVars[thrThread2of5ForFork0_#in~arg.base, thrThread2of5ForFork0_~t~0, thrThread2of5ForFork0_#res.offset, thrThread2of5ForFork0_#in~arg.offset, thrThread2of5ForFork0_~arg.base, thrThread2of5ForFork0_thidvar0, thrThread2of5ForFork0_#res.base, thrThread2of5ForFork0_~arg.offset] 215409#[thrENTRY, L703-4, thrENTRY]don't care [940] L703-4-->L703-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1] 194027#[L703-5, thrENTRY, thrENTRY]don't care [1078] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_482| 1) |v_ULTIMATE.start_main_~i~0#1_481|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_482|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_481|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_94|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_122|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#t~post4#1] 194033#[thrENTRY, L702-6, thrENTRY]don't care [1068] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_469| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_171|))) (and (= |v_#pthreadsForks_77| (+ |v_#pthreadsForks_78| 1)) (= |v_#pthreadsForks_78| |v_ULTIMATE.start_main_#t~pre5#1_157|) (= (select |v_#valid_386| |v_ULTIMATE.start_main_~#t~1#1.base_217|) 1) (<= 0 .cse0) (<= (+ 4 .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_171|) (select |v_#length_265| |v_ULTIMATE.start_main_~#t~1#1.base_217|)) (= (store |v_#memory_int_296| |v_ULTIMATE.start_main_~#t~1#1.base_217| (store (select |v_#memory_int_296| |v_ULTIMATE.start_main_~#t~1#1.base_217|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_157|)) |v_#memory_int_295|) (< |v_ULTIMATE.start_main_~i~0#1_469| |v_ULTIMATE.start_main_~n~0#1_269|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_469|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_171|, #pthreadsForks=|v_#pthreadsForks_78|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_269|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_217|, #valid=|v_#valid_386|, #memory_int=|v_#memory_int_296|, #length=|v_#length_265|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_157|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_469|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_171|, #pthreadsForks=|v_#pthreadsForks_77|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_269|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_217|, #valid=|v_#valid_386|, #memory_int=|v_#memory_int_295|, #length=|v_#length_265|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 212703#[L703-3, thrENTRY, thrENTRY]don't care [1006] L703-3-->thrENTRY: Formula: (and (= |v_thrThread3of5ForFork0_#in~arg.offset_4| 0) (= v_thrThread3of5ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_146|) (= |v_thrThread3of5ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_146|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_146|, thrThread3of5ForFork0_#in~arg.base=|v_thrThread3of5ForFork0_#in~arg.base_4|, thrThread3of5ForFork0_#res.offset=|v_thrThread3of5ForFork0_#res.offset_2|, thrThread3of5ForFork0_~arg.offset=v_thrThread3of5ForFork0_~arg.offset_4, thrThread3of5ForFork0_~arg.base=v_thrThread3of5ForFork0_~arg.base_4, thrThread3of5ForFork0_#in~arg.offset=|v_thrThread3of5ForFork0_#in~arg.offset_4|, thrThread3of5ForFork0_thidvar0=v_thrThread3of5ForFork0_thidvar0_2, thrThread3of5ForFork0_~t~0=v_thrThread3of5ForFork0_~t~0_8, thrThread3of5ForFork0_#res.base=|v_thrThread3of5ForFork0_#res.base_2|} AuxVars[] AssignedVars[thrThread3of5ForFork0_#in~arg.base, thrThread3of5ForFork0_#res.offset, thrThread3of5ForFork0_~arg.offset, thrThread3of5ForFork0_~arg.base, thrThread3of5ForFork0_#in~arg.offset, thrThread3of5ForFork0_thidvar0, thrThread3of5ForFork0_~t~0, thrThread3of5ForFork0_#res.base] 212709#[thrENTRY, L703-4, thrENTRY, thrENTRY]don't care [940] L703-4-->L703-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1] 228791#[thrENTRY, L703-5, thrENTRY, thrENTRY]don't care [1078] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_482| 1) |v_ULTIMATE.start_main_~i~0#1_481|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_482|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_481|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_94|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_122|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#t~post4#1] 215251#[thrENTRY, thrENTRY, thrENTRY, L702-6]don't care [1068] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_469| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_171|))) (and (= |v_#pthreadsForks_77| (+ |v_#pthreadsForks_78| 1)) (= |v_#pthreadsForks_78| |v_ULTIMATE.start_main_#t~pre5#1_157|) (= (select |v_#valid_386| |v_ULTIMATE.start_main_~#t~1#1.base_217|) 1) (<= 0 .cse0) (<= (+ 4 .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_171|) (select |v_#length_265| |v_ULTIMATE.start_main_~#t~1#1.base_217|)) (= (store |v_#memory_int_296| |v_ULTIMATE.start_main_~#t~1#1.base_217| (store (select |v_#memory_int_296| |v_ULTIMATE.start_main_~#t~1#1.base_217|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_157|)) |v_#memory_int_295|) (< |v_ULTIMATE.start_main_~i~0#1_469| |v_ULTIMATE.start_main_~n~0#1_269|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_469|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_171|, #pthreadsForks=|v_#pthreadsForks_78|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_269|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_217|, #valid=|v_#valid_386|, #memory_int=|v_#memory_int_296|, #length=|v_#length_265|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_157|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_469|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_171|, #pthreadsForks=|v_#pthreadsForks_77|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_269|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_217|, #valid=|v_#valid_386|, #memory_int=|v_#memory_int_295|, #length=|v_#length_265|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 215257#[thrENTRY, L703-3, thrENTRY, thrENTRY]don't care [1007] L703-3-->thrENTRY: Formula: (and (= v_thrThread4of5ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_148|) (= |v_thrThread4of5ForFork0_#in~arg.base_4| 0) (= |v_thrThread4of5ForFork0_#in~arg.offset_4| 0)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_148|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_148|, thrThread4of5ForFork0_#in~arg.offset=|v_thrThread4of5ForFork0_#in~arg.offset_4|, thrThread4of5ForFork0_#res.offset=|v_thrThread4of5ForFork0_#res.offset_2|, thrThread4of5ForFork0_thidvar0=v_thrThread4of5ForFork0_thidvar0_2, thrThread4of5ForFork0_#in~arg.base=|v_thrThread4of5ForFork0_#in~arg.base_4|, thrThread4of5ForFork0_~arg.base=v_thrThread4of5ForFork0_~arg.base_4, thrThread4of5ForFork0_#res.base=|v_thrThread4of5ForFork0_#res.base_2|, thrThread4of5ForFork0_~arg.offset=v_thrThread4of5ForFork0_~arg.offset_4, thrThread4of5ForFork0_~t~0=v_thrThread4of5ForFork0_~t~0_8} AuxVars[] AssignedVars[thrThread4of5ForFork0_#in~arg.offset, thrThread4of5ForFork0_#res.offset, thrThread4of5ForFork0_thidvar0, thrThread4of5ForFork0_#in~arg.base, thrThread4of5ForFork0_~arg.base, thrThread4of5ForFork0_#res.base, thrThread4of5ForFork0_~arg.offset, thrThread4of5ForFork0_~t~0] 220325#[thrENTRY, L703-4, thrENTRY, thrENTRY, thrENTRY]don't care [940] L703-4-->L703-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1] 228581#[thrENTRY, thrENTRY, thrENTRY, L703-5, thrENTRY]don't care [1078] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_482| 1) |v_ULTIMATE.start_main_~i~0#1_481|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_482|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_481|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_94|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_122|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#t~post4#1] 213431#[thrENTRY, L702-6, thrENTRY, thrENTRY, thrENTRY]don't care [1068] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_469| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_171|))) (and (= |v_#pthreadsForks_77| (+ |v_#pthreadsForks_78| 1)) (= |v_#pthreadsForks_78| |v_ULTIMATE.start_main_#t~pre5#1_157|) (= (select |v_#valid_386| |v_ULTIMATE.start_main_~#t~1#1.base_217|) 1) (<= 0 .cse0) (<= (+ 4 .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_171|) (select |v_#length_265| |v_ULTIMATE.start_main_~#t~1#1.base_217|)) (= (store |v_#memory_int_296| |v_ULTIMATE.start_main_~#t~1#1.base_217| (store (select |v_#memory_int_296| |v_ULTIMATE.start_main_~#t~1#1.base_217|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_157|)) |v_#memory_int_295|) (< |v_ULTIMATE.start_main_~i~0#1_469| |v_ULTIMATE.start_main_~n~0#1_269|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_469|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_171|, #pthreadsForks=|v_#pthreadsForks_78|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_269|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_217|, #valid=|v_#valid_386|, #memory_int=|v_#memory_int_296|, #length=|v_#length_265|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_157|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_469|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_171|, #pthreadsForks=|v_#pthreadsForks_77|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_269|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_217|, #valid=|v_#valid_386|, #memory_int=|v_#memory_int_295|, #length=|v_#length_265|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 213441#[thrENTRY, thrENTRY, thrENTRY, L703-3, thrENTRY]don't care [1008] L703-3-->thrENTRY: Formula: (and (= |v_thrThread5of5ForFork0_#in~arg.base_4| 0) (= |v_thrThread5of5ForFork0_#in~arg.offset_4| 0) (= v_thrThread5of5ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_150|)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_150|} OutVars{thrThread5of5ForFork0_~t~0=v_thrThread5of5ForFork0_~t~0_8, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_150|, thrThread5of5ForFork0_~arg.base=v_thrThread5of5ForFork0_~arg.base_4, thrThread5of5ForFork0_#in~arg.offset=|v_thrThread5of5ForFork0_#in~arg.offset_4|, thrThread5of5ForFork0_#in~arg.base=|v_thrThread5of5ForFork0_#in~arg.base_4|, thrThread5of5ForFork0_#res.offset=|v_thrThread5of5ForFork0_#res.offset_2|, thrThread5of5ForFork0_thidvar0=v_thrThread5of5ForFork0_thidvar0_2, thrThread5of5ForFork0_#res.base=|v_thrThread5of5ForFork0_#res.base_2|, thrThread5of5ForFork0_~arg.offset=v_thrThread5of5ForFork0_~arg.offset_4} AuxVars[] AssignedVars[thrThread5of5ForFork0_~t~0, thrThread5of5ForFork0_~arg.base, thrThread5of5ForFork0_#in~arg.offset, thrThread5of5ForFork0_#in~arg.base, thrThread5of5ForFork0_#res.offset, thrThread5of5ForFork0_thidvar0, thrThread5of5ForFork0_#res.base, thrThread5of5ForFork0_~arg.offset] 195403#[thrENTRY, thrENTRY, thrENTRY, thrENTRY, thrENTRY, L703-4]don't care [940] L703-4-->L703-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1] 195413#[thrENTRY, thrENTRY, L703-5, thrENTRY, thrENTRY, thrENTRY]don't care [1078] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_482| 1) |v_ULTIMATE.start_main_~i~0#1_481|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_482|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_481|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_94|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_122|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#t~post4#1] 228703#[thrENTRY, thrENTRY, thrENTRY, thrENTRY, thrENTRY, L702-6]don't care [1068] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_469| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_171|))) (and (= |v_#pthreadsForks_77| (+ |v_#pthreadsForks_78| 1)) (= |v_#pthreadsForks_78| |v_ULTIMATE.start_main_#t~pre5#1_157|) (= (select |v_#valid_386| |v_ULTIMATE.start_main_~#t~1#1.base_217|) 1) (<= 0 .cse0) (<= (+ 4 .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_171|) (select |v_#length_265| |v_ULTIMATE.start_main_~#t~1#1.base_217|)) (= (store |v_#memory_int_296| |v_ULTIMATE.start_main_~#t~1#1.base_217| (store (select |v_#memory_int_296| |v_ULTIMATE.start_main_~#t~1#1.base_217|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_157|)) |v_#memory_int_295|) (< |v_ULTIMATE.start_main_~i~0#1_469| |v_ULTIMATE.start_main_~n~0#1_269|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_469|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_171|, #pthreadsForks=|v_#pthreadsForks_78|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_269|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_217|, #valid=|v_#valid_386|, #memory_int=|v_#memory_int_296|, #length=|v_#length_265|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_157|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_469|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_171|, #pthreadsForks=|v_#pthreadsForks_77|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_269|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_217|, #valid=|v_#valid_386|, #memory_int=|v_#memory_int_295|, #length=|v_#length_265|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 225857#[thrENTRY, thrENTRY, thrENTRY, thrENTRY, thrENTRY, L703-3]don't care [1002] L703-3-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 217233#[thrENTRY, thrENTRY, thrENTRY, thrENTRY, thrENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES]don't care [2022-07-26 14:08:39,648 INFO L735 eck$LassoCheckResult]: Loop: 217233#[thrENTRY, thrENTRY, thrENTRY, thrENTRY, thrENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES]don't care [1003] ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 217233#[thrENTRY, thrENTRY, thrENTRY, thrENTRY, thrENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES]don't care [2022-07-26 14:08:39,648 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:39,648 INFO L85 PathProgramCache]: Analyzing trace with hash -1659448857, now seen corresponding path program 1 times [2022-07-26 14:08:39,648 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:39,648 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1359846419] [2022-07-26 14:08:39,648 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:39,648 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:39,659 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:39,659 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 14:08:39,665 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:39,668 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 14:08:39,669 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:39,669 INFO L85 PathProgramCache]: Analyzing trace with hash 1034, now seen corresponding path program 1 times [2022-07-26 14:08:39,669 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:39,669 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2041895752] [2022-07-26 14:08:39,669 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:39,669 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:39,671 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:39,671 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 14:08:39,671 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:39,672 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 14:08:39,672 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:39,673 INFO L85 PathProgramCache]: Analyzing trace with hash 96693988, now seen corresponding path program 1 times [2022-07-26 14:08:39,673 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:39,673 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1924083148] [2022-07-26 14:08:39,673 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:39,673 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:39,683 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:39,683 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 14:08:39,688 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:39,691 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 14:08:42,097 WARN L146 chiAutomizerObserver]: 5 thread instances were not sufficient, I will increase this number and restart the analysis [2022-07-26 14:08:42,107 INFO L144 ThreadInstanceAdder]: Constructed 6 joinOtherThreadTransitions. [2022-07-26 14:08:42,109 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 123 places, 123 transitions, 324 flow [2022-07-26 14:08:42,251 INFO L129 PetriNetUnfolder]: 400/2514 cut-off events. [2022-07-26 14:08:42,251 INFO L130 PetriNetUnfolder]: For 242/242 co-relation queries the response was YES. [2022-07-26 14:08:42,258 INFO L84 FinitePrefix]: Finished finitePrefix Result has 2746 conditions, 2514 events. 400/2514 cut-off events. For 242/242 co-relation queries the response was YES. Maximal size of possible extension queue 50. Compared 17870 event pairs, 72 based on Foata normal form. 0/2179 useless extension candidates. Maximal degree in co-relation 1394. Up to 192 conditions per place. [2022-07-26 14:08:42,258 INFO L82 GeneralOperation]: Start removeDead. Operand has 123 places, 123 transitions, 324 flow [2022-07-26 14:08:42,276 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 123 places, 123 transitions, 324 flow [2022-07-26 14:08:42,276 INFO L124 etLargeBlockEncoding]: Petri net LBE is using variable-based independence relation. [2022-07-26 14:08:42,276 INFO L131 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 123 places, 123 transitions, 324 flow [2022-07-26 14:08:42,277 INFO L110 LiptonReduction]: Starting Lipton reduction on Petri net that has 123 places, 123 transitions, 324 flow [2022-07-26 14:08:42,277 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 123 places, 123 transitions, 324 flow [2022-07-26 14:08:42,461 INFO L129 PetriNetUnfolder]: 400/2514 cut-off events. [2022-07-26 14:08:42,461 INFO L130 PetriNetUnfolder]: For 242/242 co-relation queries the response was YES. [2022-07-26 14:08:42,467 INFO L84 FinitePrefix]: Finished finitePrefix Result has 2746 conditions, 2514 events. 400/2514 cut-off events. For 242/242 co-relation queries the response was YES. Maximal size of possible extension queue 50. Compared 17847 event pairs, 72 based on Foata normal form. 0/2179 useless extension candidates. Maximal degree in co-relation 1394. Up to 192 conditions per place. [2022-07-26 14:08:42,490 INFO L116 LiptonReduction]: Number of co-enabled transitions 4080 [2022-07-26 14:08:44,619 INFO L131 LiptonReduction]: Checked pairs total: 17409 [2022-07-26 14:08:44,620 INFO L133 LiptonReduction]: Total number of compositions: 96 [2022-07-26 14:08:44,620 INFO L301 stractBuchiCegarLoop]: Interprodecural is true [2022-07-26 14:08:44,620 INFO L302 stractBuchiCegarLoop]: Hoare is false [2022-07-26 14:08:44,620 INFO L303 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2022-07-26 14:08:44,620 INFO L304 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2022-07-26 14:08:44,620 INFO L305 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2022-07-26 14:08:44,620 INFO L306 stractBuchiCegarLoop]: Difference is false [2022-07-26 14:08:44,620 INFO L307 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2022-07-26 14:08:44,620 INFO L311 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2022-07-26 14:08:44,621 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 0 states, but on-demand construction may add more states [2022-07-26 14:08:53,248 INFO L131 ngComponentsAnalysis]: Automaton has 19721 accepting balls. 19721 [2022-07-26 14:08:53,249 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 14:08:53,249 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 14:08:53,255 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2022-07-26 14:08:53,255 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 14:08:53,255 INFO L333 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2022-07-26 14:08:53,255 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 111496 states, but on-demand construction may add more states [2022-07-26 14:08:55,399 INFO L131 ngComponentsAnalysis]: Automaton has 19721 accepting balls. 19721 [2022-07-26 14:08:55,399 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 14:08:55,399 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 14:08:55,405 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2022-07-26 14:08:55,405 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 14:08:55,405 INFO L733 eck$LassoCheckResult]: Stem: 126#[ULTIMATE.startENTRY]don't care [1328] ULTIMATE.startENTRY-->L702-6: Formula: (let ((.cse0 (select |v_#memory_int_In_1| 1))) (and (= |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_Out_14| |v_ULTIMATE.start_assume_abort_if_not_~cond#1_Out_18|) (= (select |v_#length_In_3| 2) 9) (= |v_~#a~0.offset_Out_2| 0) (= (store |v_#valid_In_15| |v_ULTIMATE.start_main_~#t~1#1.base_Out_30| 1) |v_#valid_Out_30|) (= |v_#length_Out_6| (store |v_#length_In_3| |v_ULTIMATE.start_main_~#t~1#1.base_Out_30| 40)) (= 0 |v_#NULL.base_Out_2|) (= |v_ULTIMATE.start_main_~#t~1#1.offset_Out_30| 0) (= |v_ULTIMATE.start_main_~argc#1_Out_6| |v_ULTIMATE.start_main_#in~argc#1_Out_2|) (= (select .cse0 1) 0) (= 48 (select .cse0 0)) (= (select |v_#valid_In_15| 2) 1) (= |v_#NULL.offset_Out_2| 0) (= (select |v_#valid_In_15| 0) 0) (< |v_#StackHeapBarrier_In_3| |v_ULTIMATE.start_main_~#t~1#1.base_Out_30|) (= (select |v_#valid_In_15| 3) 1) (< 0 |v_#StackHeapBarrier_In_3|) (= |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_Out_14| (ite (and (<= |v_ULTIMATE.start_main_~n~0#1_Out_6| 10) (<= 5 |v_ULTIMATE.start_main_~n~0#1_Out_6|)) 1 0)) (= |v_ULTIMATE.start_main_#in~argv#1.base_Out_2| |v_ULTIMATE.start_main_~argv#1.base_Out_6|) (= |v_ULTIMATE.start_main_~argv#1.offset_Out_6| |v_ULTIMATE.start_main_#in~argv#1.offset_Out_2|) (= 40 (select |v_#length_In_3| 3)) (= |v_ULTIMATE.start_main_~i~0#1_Out_46| 0) (= 2 (select |v_#length_In_3| 1)) (= |v_~#a~0.base_Out_2| 3) (= |v_ULTIMATE.start_main_#in~argv#1.offset_Out_2| |v_ULTIMATE.start_#in~argv#1.offset_In_1|) (= v_~x~0_Out_2 0) (= |v_ULTIMATE.start_main_#in~argv#1.base_Out_2| |v_ULTIMATE.start_#in~argv#1.base_In_1|) (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_Out_18| 0)) (= |v_ULTIMATE.start_#in~argc#1_In_1| |v_ULTIMATE.start_main_#in~argc#1_Out_2|) (= (select |v_#valid_In_15| |v_ULTIMATE.start_main_~#t~1#1.base_Out_30|) 0) (= |v_ULTIMATE.start_main_~n~0#1_Out_6| (let ((.cse1 (mod |v_ULTIMATE.start_main_#t~nondet3#1_243| 4294967296))) (ite (<= .cse1 2147483647) .cse1 (+ .cse1 (- 4294967296))))) (= |v_#memory_int_Out_2| (store |v_#memory_int_In_1| |v_~#a~0.base_Out_2| (store ((as const (Array Int Int)) 0) |v_~#a~0.offset_Out_2| 0))) (= (select |v_#valid_In_15| 1) 1))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_In_1|, #StackHeapBarrier=|v_#StackHeapBarrier_In_3|, #valid=|v_#valid_In_15|, #memory_int=|v_#memory_int_In_1|, #length=|v_#length_In_3|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_In_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_In_1|} OutVars{ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_Out_30|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_Out_6|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_Out_30|, #NULL.offset=|v_#NULL.offset_Out_2|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_Out_6|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_Out_6|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_In_1|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_Out_46|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_Out_2|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_Out_30|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_Out_6|, ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_Out_18|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_Out_6|, #length=|v_#length_Out_6|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_Out_6|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_In_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_In_1|, ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_Out_6|, ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_Out_30|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_Out_6|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_Out_2|, ~#a~0.base=|v_~#a~0.base_Out_2|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_Out_6|, #NULL.base=|v_#NULL.base_Out_2|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_Out_6|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_Out_2|, #StackHeapBarrier=|v_#StackHeapBarrier_In_3|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_Out_6|, #valid=|v_#valid_Out_30|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_Out_6|, #memory_int=|v_#memory_int_Out_2|, ~#a~0.offset=|v_~#a~0.offset_Out_2|, ~x~0=v_~x~0_Out_2, ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_Out_14|} AuxVars[|v_ULTIMATE.start_main_#t~nondet3#1_243|] AssignedVars[ULTIMATE.start_main_~#t~1#1.offset, ULTIMATE.start_main_#t~mem8#1, ULTIMATE.start_main_~#t~1#1.base, #NULL.offset, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_~sum~0#1, ULTIMATE.start_main_~n~0#1, ULTIMATE.start_assume_abort_if_not_~cond#1, ULTIMATE.start_main_#t~post9#1, #length, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#res#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#in~argv#1.offset, ~#a~0.base, ULTIMATE.start_main_#t~mem10#1, #NULL.base, ULTIMATE.start_main_#t~pre5#1, ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#t~nondet3#1, #valid, ULTIMATE.start_main_#t~post7#1, #memory_int, ~#a~0.offset, ~x~0, ULTIMATE.start_assume_abort_if_not_#in~cond#1] 129#[L702-6]don't care [1281] L702-6-->L705-5: Formula: (and (= |v_ULTIMATE.start_main_~i~0#1_Out_42| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_In_43| |v_ULTIMATE.start_main_~n~0#1_In_47|))) InVars {ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_In_47|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_In_43|} OutVars{ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_In_47|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_Out_42|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] 131#[L705-5]don't care [1300] L705-5-->L709-6: Formula: (and (= |v_ULTIMATE.start_main_~sum~0#1_264| 0) (= |v_ULTIMATE.start_main_~i~0#1_586| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_587| |v_ULTIMATE.start_main_~n~0#1_327|))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_587|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_327|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_586|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_264|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_327|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1] 135#[L709-6]don't care [2022-07-26 14:08:55,405 INFO L735 eck$LassoCheckResult]: Loop: 135#[L709-6]don't care [1304] L709-6-->L709-6: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_597| 4))) (let ((.cse0 (+ |v_~#a~0.offset_148| .cse1))) (and (< |v_ULTIMATE.start_main_~i~0#1_597| |v_ULTIMATE.start_main_~n~0#1_331|) (<= 0 .cse0) (= (+ (select (select |v_#memory_int_365| |v_~#a~0.base_153|) .cse0) |v_ULTIMATE.start_main_~sum~0#1_269|) |v_ULTIMATE.start_main_~sum~0#1_268|) (= (select |v_#valid_481| |v_~#a~0.base_153|) 1) (= (+ |v_ULTIMATE.start_main_~i~0#1_597| 1) |v_ULTIMATE.start_main_~i~0#1_596|) (<= (+ |v_~#a~0.offset_148| .cse1 4) (select |v_#length_330| |v_~#a~0.base_153|))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_597|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_269|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_331|, #valid=|v_#valid_481|, #memory_int=|v_#memory_int_365|, ~#a~0.base=|v_~#a~0.base_153|, ~#a~0.offset=|v_~#a~0.offset_148|, #length=|v_#length_330|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_596|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_268|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_331|, #valid=|v_#valid_481|, #memory_int=|v_#memory_int_365|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_154|, ~#a~0.base=|v_~#a~0.base_153|, ~#a~0.offset=|v_~#a~0.offset_148|, #length=|v_#length_330|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_158|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1, ULTIMATE.start_main_#t~post9#1, ULTIMATE.start_main_#t~mem10#1] 135#[L709-6]don't care [2022-07-26 14:08:55,406 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:55,406 INFO L85 PathProgramCache]: Analyzing trace with hash 1347010, now seen corresponding path program 1 times [2022-07-26 14:08:55,406 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:55,406 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [936084492] [2022-07-26 14:08:55,406 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:55,406 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:55,423 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-26 14:08:55,430 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-26 14:08:55,431 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-26 14:08:55,431 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [936084492] [2022-07-26 14:08:55,431 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [936084492] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-26 14:08:55,431 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-26 14:08:55,431 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-07-26 14:08:55,431 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [510000970] [2022-07-26 14:08:55,431 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-26 14:08:55,431 INFO L738 eck$LassoCheckResult]: stem already infeasible [2022-07-26 14:08:55,431 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:08:55,431 INFO L85 PathProgramCache]: Analyzing trace with hash 1335, now seen corresponding path program 1 times [2022-07-26 14:08:55,431 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:08:55,431 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1980177927] [2022-07-26 14:08:55,431 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:08:55,431 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:08:55,434 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:55,434 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 14:08:55,435 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:08:55,436 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 14:08:55,457 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-26 14:08:55,457 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-07-26 14:08:55,457 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-07-26 14:08:55,458 INFO L87 Difference]: Start difference. First operand currently 111496 states, but on-demand construction may add more states Second operand has 3 states, 3 states have (on average 1.0) internal successors, (3), 2 states have internal predecessors, (3), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-26 14:08:56,952 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-26 14:08:56,953 INFO L93 Difference]: Finished difference Result 111497 states and 547619 transitions. [2022-07-26 14:08:56,953 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 111497 states and 547619 transitions. [2022-07-26 14:08:59,144 INFO L131 ngComponentsAnalysis]: Automaton has 19721 accepting balls. 19721 [2022-07-26 14:09:00,585 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 111497 states to 95871 states and 475743 transitions. [2022-07-26 14:09:00,585 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 95871 [2022-07-26 14:09:01,126 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 95871 [2022-07-26 14:09:01,127 INFO L73 IsDeterministic]: Start isDeterministic. Operand 95871 states and 475743 transitions. [2022-07-26 14:09:01,273 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-26 14:09:01,274 INFO L220 hiAutomatonCegarLoop]: Abstraction has 95871 states and 475743 transitions. [2022-07-26 14:09:01,514 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 95871 states and 475743 transitions. [2022-07-26 14:09:03,786 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 95871 to 95871. [2022-07-26 14:09:04,276 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 95871 states, 95871 states have (on average 4.962324373376725) internal successors, (475743), 95870 states have internal predecessors, (475743), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-26 14:09:05,072 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 95871 states to 95871 states and 475743 transitions. [2022-07-26 14:09:05,072 INFO L242 hiAutomatonCegarLoop]: Abstraction has 95871 states and 475743 transitions. [2022-07-26 14:09:05,072 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-07-26 14:09:05,073 INFO L426 stractBuchiCegarLoop]: Abstraction has 95871 states and 475743 transitions. [2022-07-26 14:09:05,073 INFO L333 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2022-07-26 14:09:05,073 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 95871 states and 475743 transitions. [2022-07-26 14:09:06,314 INFO L131 ngComponentsAnalysis]: Automaton has 19721 accepting balls. 19721 [2022-07-26 14:09:06,314 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 14:09:06,314 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 14:09:06,321 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1] [2022-07-26 14:09:06,322 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 14:09:06,336 INFO L733 eck$LassoCheckResult]: Stem: 526300#[ULTIMATE.startENTRY]don't care [1328] ULTIMATE.startENTRY-->L702-6: Formula: (let ((.cse0 (select |v_#memory_int_In_1| 1))) (and (= |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_Out_14| |v_ULTIMATE.start_assume_abort_if_not_~cond#1_Out_18|) (= (select |v_#length_In_3| 2) 9) (= |v_~#a~0.offset_Out_2| 0) (= (store |v_#valid_In_15| |v_ULTIMATE.start_main_~#t~1#1.base_Out_30| 1) |v_#valid_Out_30|) (= |v_#length_Out_6| (store |v_#length_In_3| |v_ULTIMATE.start_main_~#t~1#1.base_Out_30| 40)) (= 0 |v_#NULL.base_Out_2|) (= |v_ULTIMATE.start_main_~#t~1#1.offset_Out_30| 0) (= |v_ULTIMATE.start_main_~argc#1_Out_6| |v_ULTIMATE.start_main_#in~argc#1_Out_2|) (= (select .cse0 1) 0) (= 48 (select .cse0 0)) (= (select |v_#valid_In_15| 2) 1) (= |v_#NULL.offset_Out_2| 0) (= (select |v_#valid_In_15| 0) 0) (< |v_#StackHeapBarrier_In_3| |v_ULTIMATE.start_main_~#t~1#1.base_Out_30|) (= (select |v_#valid_In_15| 3) 1) (< 0 |v_#StackHeapBarrier_In_3|) (= |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_Out_14| (ite (and (<= |v_ULTIMATE.start_main_~n~0#1_Out_6| 10) (<= 5 |v_ULTIMATE.start_main_~n~0#1_Out_6|)) 1 0)) (= |v_ULTIMATE.start_main_#in~argv#1.base_Out_2| |v_ULTIMATE.start_main_~argv#1.base_Out_6|) (= |v_ULTIMATE.start_main_~argv#1.offset_Out_6| |v_ULTIMATE.start_main_#in~argv#1.offset_Out_2|) (= 40 (select |v_#length_In_3| 3)) (= |v_ULTIMATE.start_main_~i~0#1_Out_46| 0) (= 2 (select |v_#length_In_3| 1)) (= |v_~#a~0.base_Out_2| 3) (= |v_ULTIMATE.start_main_#in~argv#1.offset_Out_2| |v_ULTIMATE.start_#in~argv#1.offset_In_1|) (= v_~x~0_Out_2 0) (= |v_ULTIMATE.start_main_#in~argv#1.base_Out_2| |v_ULTIMATE.start_#in~argv#1.base_In_1|) (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_Out_18| 0)) (= |v_ULTIMATE.start_#in~argc#1_In_1| |v_ULTIMATE.start_main_#in~argc#1_Out_2|) (= (select |v_#valid_In_15| |v_ULTIMATE.start_main_~#t~1#1.base_Out_30|) 0) (= |v_ULTIMATE.start_main_~n~0#1_Out_6| (let ((.cse1 (mod |v_ULTIMATE.start_main_#t~nondet3#1_243| 4294967296))) (ite (<= .cse1 2147483647) .cse1 (+ .cse1 (- 4294967296))))) (= |v_#memory_int_Out_2| (store |v_#memory_int_In_1| |v_~#a~0.base_Out_2| (store ((as const (Array Int Int)) 0) |v_~#a~0.offset_Out_2| 0))) (= (select |v_#valid_In_15| 1) 1))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_In_1|, #StackHeapBarrier=|v_#StackHeapBarrier_In_3|, #valid=|v_#valid_In_15|, #memory_int=|v_#memory_int_In_1|, #length=|v_#length_In_3|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_In_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_In_1|} OutVars{ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_Out_30|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_Out_6|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_Out_30|, #NULL.offset=|v_#NULL.offset_Out_2|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_Out_6|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_Out_6|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_In_1|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_Out_46|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_Out_2|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_Out_30|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_Out_6|, ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_Out_18|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_Out_6|, #length=|v_#length_Out_6|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_Out_6|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_In_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_In_1|, ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_Out_6|, ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_Out_30|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_Out_6|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_Out_2|, ~#a~0.base=|v_~#a~0.base_Out_2|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_Out_6|, #NULL.base=|v_#NULL.base_Out_2|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_Out_6|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_Out_2|, #StackHeapBarrier=|v_#StackHeapBarrier_In_3|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_Out_6|, #valid=|v_#valid_Out_30|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_Out_6|, #memory_int=|v_#memory_int_Out_2|, ~#a~0.offset=|v_~#a~0.offset_Out_2|, ~x~0=v_~x~0_Out_2, ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_Out_14|} AuxVars[|v_ULTIMATE.start_main_#t~nondet3#1_243|] AssignedVars[ULTIMATE.start_main_~#t~1#1.offset, ULTIMATE.start_main_#t~mem8#1, ULTIMATE.start_main_~#t~1#1.base, #NULL.offset, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_~sum~0#1, ULTIMATE.start_main_~n~0#1, ULTIMATE.start_assume_abort_if_not_~cond#1, ULTIMATE.start_main_#t~post9#1, #length, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#res#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#in~argv#1.offset, ~#a~0.base, ULTIMATE.start_main_#t~mem10#1, #NULL.base, ULTIMATE.start_main_#t~pre5#1, ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#t~nondet3#1, #valid, ULTIMATE.start_main_#t~post7#1, #memory_int, ~#a~0.offset, ~x~0, ULTIMATE.start_assume_abort_if_not_#in~cond#1] 526302#[L702-6]don't care [1287] L702-6-->L703-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_570| 4))) (let ((.cse1 (+ .cse0 |v_ULTIMATE.start_main_~#t~1#1.offset_206|))) (and (<= (+ .cse0 4 |v_ULTIMATE.start_main_~#t~1#1.offset_206|) (select |v_#length_316| |v_ULTIMATE.start_main_~#t~1#1.base_264|)) (= |v_#pthreadsForks_97| |v_ULTIMATE.start_main_#t~pre5#1_203|) (= (+ |v_#pthreadsForks_97| 1) |v_#pthreadsForks_96|) (<= 0 .cse1) (= (select |v_#valid_465| |v_ULTIMATE.start_main_~#t~1#1.base_264|) 1) (< |v_ULTIMATE.start_main_~i~0#1_570| |v_ULTIMATE.start_main_~n~0#1_317|) (= (store |v_#memory_int_348| |v_ULTIMATE.start_main_~#t~1#1.base_264| (store (select |v_#memory_int_348| |v_ULTIMATE.start_main_~#t~1#1.base_264|) .cse1 |v_ULTIMATE.start_main_#t~pre5#1_203|)) |v_#memory_int_347|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_570|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_206|, #pthreadsForks=|v_#pthreadsForks_97|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_317|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_264|, #valid=|v_#valid_465|, #memory_int=|v_#memory_int_348|, #length=|v_#length_316|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_203|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_570|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_206|, #pthreadsForks=|v_#pthreadsForks_96|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_317|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_264|, #valid=|v_#valid_465|, #memory_int=|v_#memory_int_347|, #length=|v_#length_316|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 487656#[L703-3]don't care [1221] L703-3-->thrENTRY: Formula: (and (= v_thrThread1of6ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_186|) (= |v_thrThread1of6ForFork0_#in~arg.base_4| 0) (= |v_thrThread1of6ForFork0_#in~arg.offset_4| 0)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_186|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_186|, thrThread1of6ForFork0_#in~arg.offset=|v_thrThread1of6ForFork0_#in~arg.offset_4|, thrThread1of6ForFork0_~t~0=v_thrThread1of6ForFork0_~t~0_8, thrThread1of6ForFork0_#res.offset=|v_thrThread1of6ForFork0_#res.offset_2|, thrThread1of6ForFork0_~arg.offset=v_thrThread1of6ForFork0_~arg.offset_4, thrThread1of6ForFork0_#res.base=|v_thrThread1of6ForFork0_#res.base_2|, thrThread1of6ForFork0_thidvar0=v_thrThread1of6ForFork0_thidvar0_2, thrThread1of6ForFork0_#in~arg.base=|v_thrThread1of6ForFork0_#in~arg.base_4|, thrThread1of6ForFork0_~arg.base=v_thrThread1of6ForFork0_~arg.base_4} AuxVars[] AssignedVars[thrThread1of6ForFork0_#in~arg.offset, thrThread1of6ForFork0_~t~0, thrThread1of6ForFork0_#res.offset, thrThread1of6ForFork0_~arg.offset, thrThread1of6ForFork0_#res.base, thrThread1of6ForFork0_thidvar0, thrThread1of6ForFork0_#in~arg.base, thrThread1of6ForFork0_~arg.base] 458090#[thrENTRY, L703-4]don't care [1152] L703-4-->L703-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1] 458092#[L703-5, thrENTRY]don't care [1301] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_591| 1) |v_ULTIMATE.start_main_~i~0#1_590|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_591|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_590|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_118|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_152|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#t~post4#1] 370228#[L702-6, thrENTRY]don't care [1281] L702-6-->L705-5: Formula: (and (= |v_ULTIMATE.start_main_~i~0#1_Out_42| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_In_43| |v_ULTIMATE.start_main_~n~0#1_In_47|))) InVars {ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_In_47|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_In_43|} OutVars{ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_In_47|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_Out_42|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] 370230#[thrENTRY, L705-5]don't care [1300] L705-5-->L709-6: Formula: (and (= |v_ULTIMATE.start_main_~sum~0#1_264| 0) (= |v_ULTIMATE.start_main_~i~0#1_586| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_587| |v_ULTIMATE.start_main_~n~0#1_327|))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_587|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_327|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_586|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_264|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_327|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1] 505056#[thrENTRY, L709-6]don't care [2022-07-26 14:09:06,336 INFO L735 eck$LassoCheckResult]: Loop: 505056#[thrENTRY, L709-6]don't care [1304] L709-6-->L709-6: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_597| 4))) (let ((.cse0 (+ |v_~#a~0.offset_148| .cse1))) (and (< |v_ULTIMATE.start_main_~i~0#1_597| |v_ULTIMATE.start_main_~n~0#1_331|) (<= 0 .cse0) (= (+ (select (select |v_#memory_int_365| |v_~#a~0.base_153|) .cse0) |v_ULTIMATE.start_main_~sum~0#1_269|) |v_ULTIMATE.start_main_~sum~0#1_268|) (= (select |v_#valid_481| |v_~#a~0.base_153|) 1) (= (+ |v_ULTIMATE.start_main_~i~0#1_597| 1) |v_ULTIMATE.start_main_~i~0#1_596|) (<= (+ |v_~#a~0.offset_148| .cse1 4) (select |v_#length_330| |v_~#a~0.base_153|))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_597|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_269|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_331|, #valid=|v_#valid_481|, #memory_int=|v_#memory_int_365|, ~#a~0.base=|v_~#a~0.base_153|, ~#a~0.offset=|v_~#a~0.offset_148|, #length=|v_#length_330|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_596|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_268|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_331|, #valid=|v_#valid_481|, #memory_int=|v_#memory_int_365|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_154|, ~#a~0.base=|v_~#a~0.base_153|, ~#a~0.offset=|v_~#a~0.offset_148|, #length=|v_#length_330|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_158|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1, ULTIMATE.start_main_#t~post9#1, ULTIMATE.start_main_#t~mem10#1] 505056#[thrENTRY, L709-6]don't care [2022-07-26 14:09:06,336 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:09:06,336 INFO L85 PathProgramCache]: Analyzing trace with hash -1414066379, now seen corresponding path program 1 times [2022-07-26 14:09:06,336 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:09:06,336 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1754787597] [2022-07-26 14:09:06,336 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:09:06,337 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:09:06,343 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-26 14:09:06,371 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-26 14:09:06,371 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-26 14:09:06,371 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1754787597] [2022-07-26 14:09:06,371 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1754787597] provided 0 perfect and 1 imperfect interpolant sequences [2022-07-26 14:09:06,371 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [452935834] [2022-07-26 14:09:06,371 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:09:06,371 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-26 14:09:06,372 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-26 14:09:06,388 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-26 14:09:06,433 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-07-26 14:09:06,518 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-26 14:09:06,519 INFO L263 TraceCheckSpWp]: Trace formula consists of 97 conjuncts, 4 conjunts are in the unsatisfiable core [2022-07-26 14:09:06,520 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-26 14:09:06,534 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-26 14:09:06,534 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-26 14:09:06,545 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-26 14:09:06,545 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [452935834] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-26 14:09:06,545 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-07-26 14:09:06,545 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 3, 3] total 6 [2022-07-26 14:09:06,546 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [775665850] [2022-07-26 14:09:06,546 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-07-26 14:09:06,546 INFO L738 eck$LassoCheckResult]: stem already infeasible [2022-07-26 14:09:06,546 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:09:06,546 INFO L85 PathProgramCache]: Analyzing trace with hash 1335, now seen corresponding path program 2 times [2022-07-26 14:09:06,546 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:09:06,546 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [483242240] [2022-07-26 14:09:06,546 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:09:06,546 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:09:06,550 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:09:06,550 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 14:09:06,551 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:09:06,552 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 14:09:06,581 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-26 14:09:06,582 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-07-26 14:09:06,582 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=35, Unknown=0, NotChecked=0, Total=56 [2022-07-26 14:09:06,582 INFO L87 Difference]: Start difference. First operand 95871 states and 475743 transitions. cyclomatic complexity: 399593 Second operand has 8 states, 7 states have (on average 2.2857142857142856) internal successors, (16), 7 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-26 14:09:08,025 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-26 14:09:08,026 INFO L93 Difference]: Finished difference Result 109218 states and 523155 transitions. [2022-07-26 14:09:08,026 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 109218 states and 523155 transitions. [2022-07-26 14:09:10,225 INFO L131 ngComponentsAnalysis]: Automaton has 15625 accepting balls. 15625 [2022-07-26 14:09:11,697 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 109218 states to 109218 states and 523155 transitions. [2022-07-26 14:09:11,697 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 109218 [2022-07-26 14:09:12,246 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 109218 [2022-07-26 14:09:12,246 INFO L73 IsDeterministic]: Start isDeterministic. Operand 109218 states and 523155 transitions. [2022-07-26 14:09:12,428 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-26 14:09:12,429 INFO L220 hiAutomatonCegarLoop]: Abstraction has 109218 states and 523155 transitions. [2022-07-26 14:09:12,691 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 109218 states and 523155 transitions. [2022-07-26 14:09:15,049 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 109218 to 93139. [2022-07-26 14:09:15,201 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 93139 states, 93139 states have (on average 4.887984625130182) internal successors, (455262), 93138 states have internal predecessors, (455262), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-26 14:09:16,094 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 93139 states to 93139 states and 455262 transitions. [2022-07-26 14:09:16,094 INFO L242 hiAutomatonCegarLoop]: Abstraction has 93139 states and 455262 transitions. [2022-07-26 14:09:16,094 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-07-26 14:09:16,094 INFO L426 stractBuchiCegarLoop]: Abstraction has 93139 states and 455262 transitions. [2022-07-26 14:09:16,095 INFO L333 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2022-07-26 14:09:16,095 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 93139 states and 455262 transitions. [2022-07-26 14:09:17,291 INFO L131 ngComponentsAnalysis]: Automaton has 15625 accepting balls. 15625 [2022-07-26 14:09:17,292 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 14:09:17,292 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 14:09:17,297 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-26 14:09:17,297 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 14:09:17,297 INFO L733 eck$LassoCheckResult]: Stem: 821483#[ULTIMATE.startENTRY]don't care [1328] ULTIMATE.startENTRY-->L702-6: Formula: (let ((.cse0 (select |v_#memory_int_In_1| 1))) (and (= |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_Out_14| |v_ULTIMATE.start_assume_abort_if_not_~cond#1_Out_18|) (= (select |v_#length_In_3| 2) 9) (= |v_~#a~0.offset_Out_2| 0) (= (store |v_#valid_In_15| |v_ULTIMATE.start_main_~#t~1#1.base_Out_30| 1) |v_#valid_Out_30|) (= |v_#length_Out_6| (store |v_#length_In_3| |v_ULTIMATE.start_main_~#t~1#1.base_Out_30| 40)) (= 0 |v_#NULL.base_Out_2|) (= |v_ULTIMATE.start_main_~#t~1#1.offset_Out_30| 0) (= |v_ULTIMATE.start_main_~argc#1_Out_6| |v_ULTIMATE.start_main_#in~argc#1_Out_2|) (= (select .cse0 1) 0) (= 48 (select .cse0 0)) (= (select |v_#valid_In_15| 2) 1) (= |v_#NULL.offset_Out_2| 0) (= (select |v_#valid_In_15| 0) 0) (< |v_#StackHeapBarrier_In_3| |v_ULTIMATE.start_main_~#t~1#1.base_Out_30|) (= (select |v_#valid_In_15| 3) 1) (< 0 |v_#StackHeapBarrier_In_3|) (= |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_Out_14| (ite (and (<= |v_ULTIMATE.start_main_~n~0#1_Out_6| 10) (<= 5 |v_ULTIMATE.start_main_~n~0#1_Out_6|)) 1 0)) (= |v_ULTIMATE.start_main_#in~argv#1.base_Out_2| |v_ULTIMATE.start_main_~argv#1.base_Out_6|) (= |v_ULTIMATE.start_main_~argv#1.offset_Out_6| |v_ULTIMATE.start_main_#in~argv#1.offset_Out_2|) (= 40 (select |v_#length_In_3| 3)) (= |v_ULTIMATE.start_main_~i~0#1_Out_46| 0) (= 2 (select |v_#length_In_3| 1)) (= |v_~#a~0.base_Out_2| 3) (= |v_ULTIMATE.start_main_#in~argv#1.offset_Out_2| |v_ULTIMATE.start_#in~argv#1.offset_In_1|) (= v_~x~0_Out_2 0) (= |v_ULTIMATE.start_main_#in~argv#1.base_Out_2| |v_ULTIMATE.start_#in~argv#1.base_In_1|) (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_Out_18| 0)) (= |v_ULTIMATE.start_#in~argc#1_In_1| |v_ULTIMATE.start_main_#in~argc#1_Out_2|) (= (select |v_#valid_In_15| |v_ULTIMATE.start_main_~#t~1#1.base_Out_30|) 0) (= |v_ULTIMATE.start_main_~n~0#1_Out_6| (let ((.cse1 (mod |v_ULTIMATE.start_main_#t~nondet3#1_243| 4294967296))) (ite (<= .cse1 2147483647) .cse1 (+ .cse1 (- 4294967296))))) (= |v_#memory_int_Out_2| (store |v_#memory_int_In_1| |v_~#a~0.base_Out_2| (store ((as const (Array Int Int)) 0) |v_~#a~0.offset_Out_2| 0))) (= (select |v_#valid_In_15| 1) 1))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_In_1|, #StackHeapBarrier=|v_#StackHeapBarrier_In_3|, #valid=|v_#valid_In_15|, #memory_int=|v_#memory_int_In_1|, #length=|v_#length_In_3|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_In_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_In_1|} OutVars{ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_Out_30|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_Out_6|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_Out_30|, #NULL.offset=|v_#NULL.offset_Out_2|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_Out_6|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_Out_6|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_In_1|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_Out_46|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_Out_2|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_Out_30|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_Out_6|, ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_Out_18|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_Out_6|, #length=|v_#length_Out_6|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_Out_6|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_In_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_In_1|, ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_Out_6|, ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_Out_30|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_Out_6|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_Out_2|, ~#a~0.base=|v_~#a~0.base_Out_2|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_Out_6|, #NULL.base=|v_#NULL.base_Out_2|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_Out_6|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_Out_2|, #StackHeapBarrier=|v_#StackHeapBarrier_In_3|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_Out_6|, #valid=|v_#valid_Out_30|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_Out_6|, #memory_int=|v_#memory_int_Out_2|, ~#a~0.offset=|v_~#a~0.offset_Out_2|, ~x~0=v_~x~0_Out_2, ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_Out_14|} AuxVars[|v_ULTIMATE.start_main_#t~nondet3#1_243|] AssignedVars[ULTIMATE.start_main_~#t~1#1.offset, ULTIMATE.start_main_#t~mem8#1, ULTIMATE.start_main_~#t~1#1.base, #NULL.offset, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_~sum~0#1, ULTIMATE.start_main_~n~0#1, ULTIMATE.start_assume_abort_if_not_~cond#1, ULTIMATE.start_main_#t~post9#1, #length, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#res#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#in~argv#1.offset, ~#a~0.base, ULTIMATE.start_main_#t~mem10#1, #NULL.base, ULTIMATE.start_main_#t~pre5#1, ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#t~nondet3#1, #valid, ULTIMATE.start_main_#t~post7#1, #memory_int, ~#a~0.offset, ~x~0, ULTIMATE.start_assume_abort_if_not_#in~cond#1] 821485#[L702-6]don't care [1287] L702-6-->L703-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_570| 4))) (let ((.cse1 (+ .cse0 |v_ULTIMATE.start_main_~#t~1#1.offset_206|))) (and (<= (+ .cse0 4 |v_ULTIMATE.start_main_~#t~1#1.offset_206|) (select |v_#length_316| |v_ULTIMATE.start_main_~#t~1#1.base_264|)) (= |v_#pthreadsForks_97| |v_ULTIMATE.start_main_#t~pre5#1_203|) (= (+ |v_#pthreadsForks_97| 1) |v_#pthreadsForks_96|) (<= 0 .cse1) (= (select |v_#valid_465| |v_ULTIMATE.start_main_~#t~1#1.base_264|) 1) (< |v_ULTIMATE.start_main_~i~0#1_570| |v_ULTIMATE.start_main_~n~0#1_317|) (= (store |v_#memory_int_348| |v_ULTIMATE.start_main_~#t~1#1.base_264| (store (select |v_#memory_int_348| |v_ULTIMATE.start_main_~#t~1#1.base_264|) .cse1 |v_ULTIMATE.start_main_#t~pre5#1_203|)) |v_#memory_int_347|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_570|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_206|, #pthreadsForks=|v_#pthreadsForks_97|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_317|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_264|, #valid=|v_#valid_465|, #memory_int=|v_#memory_int_348|, #length=|v_#length_316|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_203|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_570|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_206|, #pthreadsForks=|v_#pthreadsForks_96|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_317|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_264|, #valid=|v_#valid_465|, #memory_int=|v_#memory_int_347|, #length=|v_#length_316|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 782561#[L703-3]don't care [1221] L703-3-->thrENTRY: Formula: (and (= v_thrThread1of6ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_186|) (= |v_thrThread1of6ForFork0_#in~arg.base_4| 0) (= |v_thrThread1of6ForFork0_#in~arg.offset_4| 0)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_186|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_186|, thrThread1of6ForFork0_#in~arg.offset=|v_thrThread1of6ForFork0_#in~arg.offset_4|, thrThread1of6ForFork0_~t~0=v_thrThread1of6ForFork0_~t~0_8, thrThread1of6ForFork0_#res.offset=|v_thrThread1of6ForFork0_#res.offset_2|, thrThread1of6ForFork0_~arg.offset=v_thrThread1of6ForFork0_~arg.offset_4, thrThread1of6ForFork0_#res.base=|v_thrThread1of6ForFork0_#res.base_2|, thrThread1of6ForFork0_thidvar0=v_thrThread1of6ForFork0_thidvar0_2, thrThread1of6ForFork0_#in~arg.base=|v_thrThread1of6ForFork0_#in~arg.base_4|, thrThread1of6ForFork0_~arg.base=v_thrThread1of6ForFork0_~arg.base_4} AuxVars[] AssignedVars[thrThread1of6ForFork0_#in~arg.offset, thrThread1of6ForFork0_~t~0, thrThread1of6ForFork0_#res.offset, thrThread1of6ForFork0_~arg.offset, thrThread1of6ForFork0_#res.base, thrThread1of6ForFork0_thidvar0, thrThread1of6ForFork0_#in~arg.base, thrThread1of6ForFork0_~arg.base] 753681#[thrENTRY, L703-4]don't care [1152] L703-4-->L703-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1] 753683#[L703-5, thrENTRY]don't care [1301] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_591| 1) |v_ULTIMATE.start_main_~i~0#1_590|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_591|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_590|, ULTIMATE.start_main_#t~nondet6#1=|v_ULTIMATE.start_main_#t~nondet6#1_118|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_152|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet6#1, ULTIMATE.start_main_#t~post4#1] 669613#[L702-6, thrENTRY]don't care [1281] L702-6-->L705-5: Formula: (and (= |v_ULTIMATE.start_main_~i~0#1_Out_42| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_In_43| |v_ULTIMATE.start_main_~n~0#1_In_47|))) InVars {ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_In_47|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_In_43|} OutVars{ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_In_47|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_Out_42|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] 669615#[thrENTRY, L705-5]don't care [1272] thrENTRY-->L694: Formula: (and (= v_thrThread1of6ForFork0_~t~0_11 v_~x~0_158) (= v_thrThread1of6ForFork0_~arg.offset_5 |v_thrThread1of6ForFork0_#in~arg.offset_5|) (= |v_thrThread1of6ForFork0_#in~arg.base_5| v_thrThread1of6ForFork0_~arg.base_5)) InVars {thrThread1of6ForFork0_#in~arg.offset=|v_thrThread1of6ForFork0_#in~arg.offset_5|, thrThread1of6ForFork0_#in~arg.base=|v_thrThread1of6ForFork0_#in~arg.base_5|, ~x~0=v_~x~0_158} OutVars{thrThread1of6ForFork0_#in~arg.offset=|v_thrThread1of6ForFork0_#in~arg.offset_5|, thrThread1of6ForFork0_~t~0=v_thrThread1of6ForFork0_~t~0_11, thrThread1of6ForFork0_~arg.offset=v_thrThread1of6ForFork0_~arg.offset_5, thrThread1of6ForFork0_#in~arg.base=|v_thrThread1of6ForFork0_#in~arg.base_5|, ~x~0=v_~x~0_158, thrThread1of6ForFork0_~arg.base=v_thrThread1of6ForFork0_~arg.base_5} AuxVars[] AssignedVars[thrThread1of6ForFork0_~t~0, thrThread1of6ForFork0_~arg.offset, thrThread1of6ForFork0_~arg.base] 799489#[L694, L705-5]don't care [1216] L694-->L694-1: Formula: (let ((.cse1 (* 4 v_thrThread1of6ForFork0_~t~0_3))) (let ((.cse0 (+ |v_~#a~0.offset_4| .cse1))) (and (= (select |v_#valid_12| |v_~#a~0.base_5|) 1) (<= 0 .cse0) (<= (+ |v_~#a~0.offset_4| .cse1 4) (select |v_#length_9| |v_~#a~0.base_5|)) (= (store |v_#memory_int_12| |v_~#a~0.base_5| (store (select |v_#memory_int_12| |v_~#a~0.base_5|) .cse0 1)) |v_#memory_int_11|)))) InVars {#valid=|v_#valid_12|, thrThread1of6ForFork0_~t~0=v_thrThread1of6ForFork0_~t~0_3, #memory_int=|v_#memory_int_12|, ~#a~0.base=|v_~#a~0.base_5|, ~#a~0.offset=|v_~#a~0.offset_4|, #length=|v_#length_9|} OutVars{#valid=|v_#valid_12|, thrThread1of6ForFork0_~t~0=v_thrThread1of6ForFork0_~t~0_3, #memory_int=|v_#memory_int_11|, ~#a~0.base=|v_~#a~0.base_5|, ~#a~0.offset=|v_~#a~0.offset_4|, #length=|v_#length_9|} AuxVars[] AssignedVars[#memory_int] 818647#[L705-5, L694-1]don't care [1266] L694-1-->thrEXIT: Formula: (= (+ v_thrThread1of6ForFork0_~t~0_9 1) v_~x~0_148) InVars {thrThread1of6ForFork0_~t~0=v_thrThread1of6ForFork0_~t~0_9} OutVars{thrThread1of6ForFork0_~t~0=v_thrThread1of6ForFork0_~t~0_9, ~x~0=v_~x~0_148} AuxVars[] AssignedVars[~x~0] 765863#[L705-5, thrEXIT]don't care [1275] L705-5-->L706-1: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_566| 4))) (let ((.cse1 (+ .cse0 |v_ULTIMATE.start_main_~#t~1#1.offset_204|))) (and (= (select |v_#valid_455| |v_ULTIMATE.start_main_~#t~1#1.base_258|) 1) (<= (+ .cse0 4 |v_ULTIMATE.start_main_~#t~1#1.offset_204|) (select |v_#length_314| |v_ULTIMATE.start_main_~#t~1#1.base_258|)) (< |v_ULTIMATE.start_main_~i~0#1_566| |v_ULTIMATE.start_main_~n~0#1_313|) (= |v_ULTIMATE.start_main_#t~mem8#1_135| (select (select |v_#memory_int_345| |v_ULTIMATE.start_main_~#t~1#1.base_258|) .cse1)) (<= 0 .cse1)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_566|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_204|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_313|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_258|, #valid=|v_#valid_455|, #memory_int=|v_#memory_int_345|, #length=|v_#length_314|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_566|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_135|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_204|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_313|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_258|, #valid=|v_#valid_455|, #memory_int=|v_#memory_int_345|, #length=|v_#length_314|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~mem8#1] 765865#[L706-1, thrEXIT]don't care [1227] thrEXIT-->L706-2: Formula: (= v_thrThread1of6ForFork0_thidvar0_4 (let ((.cse0 (mod |v_ULTIMATE.start_main_#t~mem8#1_122| 4294967296))) (ite (<= .cse0 2147483647) .cse0 (+ (- 4294967296) .cse0)))) InVars {ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_122|, thrThread1of6ForFork0_thidvar0=v_thrThread1of6ForFork0_thidvar0_4} OutVars{ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_122|, thrThread1of6ForFork0_thidvar0=v_thrThread1of6ForFork0_thidvar0_4} AuxVars[] AssignedVars[] 755003#[L706-2]don't care [1135] L706-2-->L705-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~mem8#1] 783177#[L705-2]don't care [1297] L705-2-->L705-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_579| 1) |v_ULTIMATE.start_main_~i~0#1_578|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_579|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_578|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_119|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~post7#1] 783179#[L705-5]don't care [1300] L705-5-->L709-6: Formula: (and (= |v_ULTIMATE.start_main_~sum~0#1_264| 0) (= |v_ULTIMATE.start_main_~i~0#1_586| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_587| |v_ULTIMATE.start_main_~n~0#1_327|))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_587|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_327|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_586|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_264|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_327|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1] 821155#[L709-6]don't care [2022-07-26 14:09:17,297 INFO L735 eck$LassoCheckResult]: Loop: 821155#[L709-6]don't care [1304] L709-6-->L709-6: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_597| 4))) (let ((.cse0 (+ |v_~#a~0.offset_148| .cse1))) (and (< |v_ULTIMATE.start_main_~i~0#1_597| |v_ULTIMATE.start_main_~n~0#1_331|) (<= 0 .cse0) (= (+ (select (select |v_#memory_int_365| |v_~#a~0.base_153|) .cse0) |v_ULTIMATE.start_main_~sum~0#1_269|) |v_ULTIMATE.start_main_~sum~0#1_268|) (= (select |v_#valid_481| |v_~#a~0.base_153|) 1) (= (+ |v_ULTIMATE.start_main_~i~0#1_597| 1) |v_ULTIMATE.start_main_~i~0#1_596|) (<= (+ |v_~#a~0.offset_148| .cse1 4) (select |v_#length_330| |v_~#a~0.base_153|))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_597|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_269|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_331|, #valid=|v_#valid_481|, #memory_int=|v_#memory_int_365|, ~#a~0.base=|v_~#a~0.base_153|, ~#a~0.offset=|v_~#a~0.offset_148|, #length=|v_#length_330|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_596|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_268|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_331|, #valid=|v_#valid_481|, #memory_int=|v_#memory_int_365|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_154|, ~#a~0.base=|v_~#a~0.base_153|, ~#a~0.offset=|v_~#a~0.offset_148|, #length=|v_#length_330|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_158|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1, ULTIMATE.start_main_#t~post9#1, ULTIMATE.start_main_#t~mem10#1] 821155#[L709-6]don't care [2022-07-26 14:09:17,297 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:09:17,298 INFO L85 PathProgramCache]: Analyzing trace with hash 1566983031, now seen corresponding path program 1 times [2022-07-26 14:09:17,298 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:09:17,298 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1571686755] [2022-07-26 14:09:17,298 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:09:17,298 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:09:17,313 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-26 14:09:17,329 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-07-26 14:09:17,330 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-26 14:09:17,330 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1571686755] [2022-07-26 14:09:17,330 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1571686755] provided 0 perfect and 1 imperfect interpolant sequences [2022-07-26 14:09:17,330 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [969592554] [2022-07-26 14:09:17,330 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:09:17,330 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-26 14:09:17,330 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-26 14:09:17,331 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-26 14:09:17,332 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2022-07-26 14:09:17,402 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-26 14:09:17,402 INFO L263 TraceCheckSpWp]: Trace formula consists of 125 conjuncts, 8 conjunts are in the unsatisfiable core [2022-07-26 14:09:17,403 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-26 14:09:17,434 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-07-26 14:09:17,435 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-26 14:09:17,590 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-07-26 14:09:17,590 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [969592554] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-26 14:09:17,590 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-07-26 14:09:17,590 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 3, 3] total 7 [2022-07-26 14:09:17,590 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2108826064] [2022-07-26 14:09:17,590 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-07-26 14:09:17,590 INFO L738 eck$LassoCheckResult]: stem already infeasible [2022-07-26 14:09:17,591 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:09:17,591 INFO L85 PathProgramCache]: Analyzing trace with hash 1335, now seen corresponding path program 3 times [2022-07-26 14:09:17,591 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:09:17,591 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [359032457] [2022-07-26 14:09:17,591 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:09:17,591 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:09:17,597 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:09:17,597 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 14:09:17,598 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:09:17,599 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 14:09:17,627 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-26 14:09:17,627 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-07-26 14:09:17,627 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=30, Unknown=0, NotChecked=0, Total=56 [2022-07-26 14:09:17,627 INFO L87 Difference]: Start difference. First operand 93139 states and 455262 transitions. cyclomatic complexity: 377748 Second operand has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-26 14:09:18,596 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-26 14:09:18,596 INFO L93 Difference]: Finished difference Result 93055 states and 454923 transitions. [2022-07-26 14:09:18,596 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 93055 states and 454923 transitions. [2022-07-26 14:09:20,421 INFO L131 ngComponentsAnalysis]: Automaton has 15625 accepting balls. 15625 [2022-07-26 14:09:21,882 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 93055 states to 93055 states and 454923 transitions. [2022-07-26 14:09:21,883 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 93055 [2022-07-26 14:09:22,145 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 93055 [2022-07-26 14:09:22,146 INFO L73 IsDeterministic]: Start isDeterministic. Operand 93055 states and 454923 transitions. [2022-07-26 14:09:22,290 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-26 14:09:22,290 INFO L220 hiAutomatonCegarLoop]: Abstraction has 93055 states and 454923 transitions. [2022-07-26 14:09:22,497 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 93055 states and 454923 transitions. [2022-07-26 14:09:24,807 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 93055 to 93055. [2022-07-26 14:09:24,968 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 93055 states, 93055 states have (on average 4.888753962710225) internal successors, (454923), 93054 states have internal predecessors, (454923), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-26 14:09:26,201 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 93055 states to 93055 states and 454923 transitions. [2022-07-26 14:09:26,201 INFO L242 hiAutomatonCegarLoop]: Abstraction has 93055 states and 454923 transitions. [2022-07-26 14:09:26,202 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-07-26 14:09:26,203 INFO L426 stractBuchiCegarLoop]: Abstraction has 93055 states and 454923 transitions. [2022-07-26 14:09:26,203 INFO L333 stractBuchiCegarLoop]: ======== Iteration 4 ============ [2022-07-26 14:09:26,203 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 93055 states and 454923 transitions.