/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-semanticLbe.epf -i ../../../trunk/examples/svcomp/pthread-nondet/nondet-array-1.i -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-21b0908 [2022-07-22 12:14:06,849 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-07-22 12:14:06,853 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-07-22 12:14:06,921 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-07-22 12:14:06,921 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-07-22 12:14:06,923 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-07-22 12:14:06,931 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-07-22 12:14:06,936 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-07-22 12:14:06,938 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-07-22 12:14:06,944 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-07-22 12:14:06,946 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-07-22 12:14:06,948 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-07-22 12:14:06,948 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-07-22 12:14:06,952 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-07-22 12:14:06,953 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-07-22 12:14:06,954 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-07-22 12:14:06,955 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-07-22 12:14:06,956 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-07-22 12:14:06,958 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-07-22 12:14:06,961 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-07-22 12:14:06,962 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-07-22 12:14:06,964 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-07-22 12:14:06,965 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-07-22 12:14:06,966 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-07-22 12:14:06,967 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-07-22 12:14:06,971 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-07-22 12:14:06,971 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-07-22 12:14:06,971 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-07-22 12:14:06,973 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-07-22 12:14:06,973 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-07-22 12:14:06,974 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-07-22 12:14:06,975 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-07-22 12:14:06,975 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-07-22 12:14:06,976 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-07-22 12:14:06,977 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-07-22 12:14:06,978 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-07-22 12:14:06,979 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-07-22 12:14:06,979 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-07-22 12:14:06,980 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-07-22 12:14:06,980 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-07-22 12:14:06,981 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-07-22 12:14:06,983 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-07-22 12:14:06,984 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/buchiAutomizer/concurrent-automaton-semanticLbe.epf [2022-07-22 12:14:07,013 INFO L113 SettingsManager]: Loading preferences was successful [2022-07-22 12:14:07,013 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-07-22 12:14:07,014 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-07-22 12:14:07,014 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-07-22 12:14:07,015 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-07-22 12:14:07,015 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-07-22 12:14:07,015 INFO L138 SettingsManager]: * Use SBE=true [2022-07-22 12:14:07,016 INFO L136 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2022-07-22 12:14:07,016 INFO L138 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2022-07-22 12:14:07,016 INFO L138 SettingsManager]: * Use old map elimination=false [2022-07-22 12:14:07,016 INFO L138 SettingsManager]: * Use external solver (rank synthesis)=false [2022-07-22 12:14:07,016 INFO L138 SettingsManager]: * Use only trivial implications for array writes=true [2022-07-22 12:14:07,017 INFO L138 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2022-07-22 12:14:07,017 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-07-22 12:14:07,017 INFO L138 SettingsManager]: * sizeof long=4 [2022-07-22 12:14:07,017 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-07-22 12:14:07,017 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-07-22 12:14:07,018 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-07-22 12:14:07,018 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-07-22 12:14:07,018 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2022-07-22 12:14:07,018 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2022-07-22 12:14:07,018 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2022-07-22 12:14:07,018 INFO L138 SettingsManager]: * sizeof long double=12 [2022-07-22 12:14:07,019 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-07-22 12:14:07,019 INFO L138 SettingsManager]: * Assume nondeterminstic values are in range=false [2022-07-22 12:14:07,019 INFO L138 SettingsManager]: * Use constant arrays=true [2022-07-22 12:14:07,019 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2022-07-22 12:14:07,019 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-07-22 12:14:07,020 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-07-22 12:14:07,020 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-07-22 12:14:07,020 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-07-22 12:14:07,021 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-07-22 12:14:07,022 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-22 12:14:07,377 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-07-22 12:14:07,421 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-07-22 12:14:07,424 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-07-22 12:14:07,426 INFO L271 PluginConnector]: Initializing CDTParser... [2022-07-22 12:14:07,429 INFO L275 PluginConnector]: CDTParser initialized [2022-07-22 12:14:07,431 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/pthread-nondet/nondet-array-1.i [2022-07-22 12:14:07,523 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/3ac74f0c0/3dd7f136f2dc4c43b4070967e34c59f1/FLAGf4ac123aa [2022-07-22 12:14:08,374 INFO L306 CDTParser]: Found 1 translation units. [2022-07-22 12:14:08,375 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/pthread-nondet/nondet-array-1.i [2022-07-22 12:14:08,389 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/3ac74f0c0/3dd7f136f2dc4c43b4070967e34c59f1/FLAGf4ac123aa [2022-07-22 12:14:08,594 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/3ac74f0c0/3dd7f136f2dc4c43b4070967e34c59f1 [2022-07-22 12:14:08,597 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-07-22 12:14:08,602 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-07-22 12:14:08,604 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-07-22 12:14:08,604 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-07-22 12:14:08,608 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-07-22 12:14:08,609 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 22.07 12:14:08" (1/1) ... [2022-07-22 12:14:08,611 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@3a901e13 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.07 12:14:08, skipping insertion in model container [2022-07-22 12:14:08,611 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 22.07 12:14:08" (1/1) ... [2022-07-22 12:14:08,620 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-07-22 12:14:08,658 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-07-22 12:14:09,058 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-1.i[30035,30048] [2022-07-22 12:14:09,090 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-07-22 12:14:09,109 INFO L203 MainTranslator]: Completed pre-run [2022-07-22 12:14:09,193 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-1.i[30035,30048] [2022-07-22 12:14:09,214 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-07-22 12:14:09,302 INFO L208 MainTranslator]: Completed translation [2022-07-22 12:14:09,304 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.07 12:14:09 WrapperNode [2022-07-22 12:14:09,304 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-07-22 12:14:09,306 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-07-22 12:14:09,306 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-07-22 12:14:09,306 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-07-22 12:14:09,317 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.07 12:14:09" (1/1) ... [2022-07-22 12:14:09,364 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.07 12:14:09" (1/1) ... [2022-07-22 12:14:09,418 INFO L137 Inliner]: procedures = 170, calls = 18, calls flagged for inlining = 4, calls inlined = 4, statements flattened = 73 [2022-07-22 12:14:09,418 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-07-22 12:14:09,421 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-07-22 12:14:09,421 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-07-22 12:14:09,422 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-07-22 12:14:09,433 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.07 12:14:09" (1/1) ... [2022-07-22 12:14:09,434 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.07 12:14:09" (1/1) ... [2022-07-22 12:14:09,455 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.07 12:14:09" (1/1) ... [2022-07-22 12:14:09,456 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.07 12:14:09" (1/1) ... [2022-07-22 12:14:09,464 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.07 12:14:09" (1/1) ... [2022-07-22 12:14:09,469 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.07 12:14:09" (1/1) ... [2022-07-22 12:14:09,471 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.07 12:14:09" (1/1) ... [2022-07-22 12:14:09,475 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-07-22 12:14:09,476 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-07-22 12:14:09,476 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-07-22 12:14:09,476 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-07-22 12:14:09,477 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.07 12:14:09" (1/1) ... [2022-07-22 12:14:09,493 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-22 12:14:09,512 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-22 12:14:09,542 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-22 12:14:09,562 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-22 12:14:09,642 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int [2022-07-22 12:14:09,643 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-07-22 12:14:09,643 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-07-22 12:14:09,643 INFO L130 BoogieDeclarations]: Found specification of procedure thr [2022-07-22 12:14:09,643 INFO L138 BoogieDeclarations]: Found implementation of procedure thr [2022-07-22 12:14:09,643 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-07-22 12:14:09,644 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-07-22 12:14:09,644 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-07-22 12:14:09,644 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-07-22 12:14:09,644 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-07-22 12:14:09,644 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-07-22 12:14:09,649 WARN L208 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to SingleStatement [2022-07-22 12:14:09,871 INFO L234 CfgBuilder]: Building ICFG [2022-07-22 12:14:09,874 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-07-22 12:14:10,187 INFO L275 CfgBuilder]: Performing block encoding [2022-07-22 12:14:10,196 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-07-22 12:14:10,197 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-07-22 12:14:10,200 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 22.07 12:14:10 BoogieIcfgContainer [2022-07-22 12:14:10,200 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-07-22 12:14:10,201 INFO L113 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2022-07-22 12:14:10,201 INFO L271 PluginConnector]: Initializing BuchiAutomizer... [2022-07-22 12:14:10,206 INFO L275 PluginConnector]: BuchiAutomizer initialized [2022-07-22 12:14:10,207 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2022-07-22 12:14:10,207 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "CDTParser AST 22.07 12:14:08" (1/3) ... [2022-07-22 12:14:10,209 INFO L205 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@6c59b4a9 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 22.07 12:14:10, skipping insertion in model container [2022-07-22 12:14:10,209 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2022-07-22 12:14:10,209 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.07 12:14:09" (2/3) ... [2022-07-22 12:14:10,210 INFO L205 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@6c59b4a9 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 22.07 12:14:10, skipping insertion in model container [2022-07-22 12:14:10,210 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2022-07-22 12:14:10,210 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 22.07 12:14:10" (3/3) ... [2022-07-22 12:14:10,212 INFO L322 chiAutomizerObserver]: Analyzing ICFG nondet-array-1.i [2022-07-22 12:14:10,288 INFO L144 ThreadInstanceAdder]: Constructed 1 joinOtherThreadTransitions. [2022-07-22 12:14:10,329 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 83 places, 88 transitions, 184 flow [2022-07-22 12:14:10,384 INFO L129 PetriNetUnfolder]: 13/125 cut-off events. [2022-07-22 12:14:10,384 INFO L130 PetriNetUnfolder]: For 1/1 co-relation queries the response was YES. [2022-07-22 12:14:10,392 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-22 12:14:10,392 INFO L82 GeneralOperation]: Start removeDead. Operand has 83 places, 88 transitions, 184 flow [2022-07-22 12:14:10,410 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 83 places, 88 transitions, 184 flow [2022-07-22 12:14:10,415 INFO L115 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-07-22 12:14:10,438 INFO L131 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 83 places, 88 transitions, 184 flow [2022-07-22 12:14:10,446 INFO L110 LiptonReduction]: Starting Lipton reduction on Petri net that has 83 places, 88 transitions, 184 flow [2022-07-22 12:14:10,447 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 83 places, 88 transitions, 184 flow [2022-07-22 12:14:10,505 INFO L129 PetriNetUnfolder]: 13/125 cut-off events. [2022-07-22 12:14:10,506 INFO L130 PetriNetUnfolder]: For 1/1 co-relation queries the response was YES. [2022-07-22 12:14:10,506 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-22 12:14:10,512 INFO L116 LiptonReduction]: Number of co-enabled transitions 440 [2022-07-22 12:14:13,483 INFO L131 LiptonReduction]: Checked pairs total: 441 [2022-07-22 12:14:13,484 INFO L133 LiptonReduction]: Total number of compositions: 86 [2022-07-22 12:14:13,511 INFO L300 stractBuchiCegarLoop]: Interprodecural is true [2022-07-22 12:14:13,512 INFO L301 stractBuchiCegarLoop]: Hoare is false [2022-07-22 12:14:13,512 INFO L302 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2022-07-22 12:14:13,512 INFO L303 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2022-07-22 12:14:13,512 INFO L304 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2022-07-22 12:14:13,512 INFO L305 stractBuchiCegarLoop]: Difference is false [2022-07-22 12:14:13,512 INFO L306 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2022-07-22 12:14:13,513 INFO L310 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2022-07-22 12:14:13,515 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 0 states, but on-demand construction may add more states [2022-07-22 12:14:13,551 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 5 [2022-07-22 12:14:13,551 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:14:13,551 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:14:13,558 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2022-07-22 12:14:13,559 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:14:13,559 INFO L332 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2022-07-22 12:14:13,559 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 23 states, but on-demand construction may add more states [2022-07-22 12:14:13,562 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 5 [2022-07-22 12:14:13,562 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:14:13,562 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:14:13,563 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2022-07-22 12:14:13,563 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:14:13,570 INFO L748 eck$LassoCheckResult]: Stem: 86#[ULTIMATE.startENTRY]don't care [303] ULTIMATE.startENTRY-->L702-6: Formula: (let ((.cse1 (select |v_#memory_int_132| 1))) (and (= |v_#NULL.base_10| 0) (< |v_#StackHeapBarrier_19| |v_ULTIMATE.start_main_~#t~1#1.base_65|) (= 2 (select |v_#length_85| 1)) (= |v_ULTIMATE.start_#in~argv#1.base_12| |v_ULTIMATE.start_main_#in~argv#1.base_15|) (= (store |v_#valid_113| |v_ULTIMATE.start_main_~#t~1#1.base_65| 1) |v_#valid_112|) (= |v_~#a~0.offset_55| 0) (= (select |v_#valid_113| 3) 1) (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_25| |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_21|) (= |v_ULTIMATE.start_main_~n~0#1_78| (let ((.cse0 (mod |v_ULTIMATE.start_main_#t~nondet3#1_27| 4294967296))) (ite (<= .cse0 2147483647) .cse0 (+ (- 4294967296) .cse0)))) (= v_~x~0_52 0) (= 40 (select |v_#length_85| 3)) (= |v_ULTIMATE.start_main_~i~0#1_139| 0) (= (select |v_#valid_113| 2) 1) (= |v_ULTIMATE.start_#in~argc#1_12| |v_ULTIMATE.start_main_#in~argc#1_15|) (= 9 (select |v_#length_85| 2)) (= (store |v_#length_85| |v_ULTIMATE.start_main_~#t~1#1.base_65| 40) |v_#length_84|) (= |v_ULTIMATE.start_main_#in~argv#1.offset_15| |v_ULTIMATE.start_#in~argv#1.offset_12|) (= (select |v_#valid_113| |v_ULTIMATE.start_main_~#t~1#1.base_65|) 0) (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|) (= (select .cse1 0) 48) (= 0 (select .cse1 1)) (= |v_ULTIMATE.start_main_~argc#1_17| |v_ULTIMATE.start_main_#in~argc#1_15|) (= (select |v_#valid_113| 0) 0) (= (store |v_#memory_int_132| |v_~#a~0.base_58| (store ((as const (Array Int Int)) 0) |v_~#a~0.offset_55| 0)) |v_#memory_int_131|) (= |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_21| (ite (and (<= |v_ULTIMATE.start_main_~n~0#1_78| 10) (<= 5 |v_ULTIMATE.start_main_~n~0#1_78|)) 1 0)) (= |v_#NULL.offset_10| 0) (= (select |v_#valid_113| 1) 1) (= |v_ULTIMATE.start_main_#in~argv#1.base_15| |v_ULTIMATE.start_main_~argv#1.base_17|) (= |v_ULTIMATE.start_main_~#t~1#1.offset_55| 0) (= |v_~#a~0.base_58| 3))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_12|, #StackHeapBarrier=|v_#StackHeapBarrier_19|, #valid=|v_#valid_113|, #memory_int=|v_#memory_int_132|, #length=|v_#length_85|, 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_55|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_34|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_65|, #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_139|, 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_50|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_78|, 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_84|, 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_32|, 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_58|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_31|, #NULL.base=|v_#NULL.base_10|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_33|, 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_112|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_23|, #memory_int=|v_#memory_int_131|, ~#a~0.offset=|v_~#a~0.offset_55|, ~x~0=v_~x~0_52, 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 (= |v_ULTIMATE.start_main_~sum~0#1_20| 0) (= |v_ULTIMATE.start_main_~i~0#1_73| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_74| |v_ULTIMATE.start_main_~n~0#1_32|))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_74|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_32|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_73|, 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_32|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1] 99#[L709-6]don't care [2022-07-22 12:14:13,571 INFO L750 eck$LassoCheckResult]: Loop: 99#[L709-6]don't care [291] L709-6-->L709-6: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_110| 4))) (let ((.cse1 (+ |v_~#a~0.offset_41| .cse0))) (and (<= (+ |v_~#a~0.offset_41| .cse0 4) (select |v_#length_62| |v_~#a~0.base_44|)) (= (+ |v_ULTIMATE.start_main_~i~0#1_110| 1) |v_ULTIMATE.start_main_~i~0#1_109|) (= (select |v_#valid_73| |v_~#a~0.base_44|) 1) (= |v_ULTIMATE.start_main_~sum~0#1_34| (+ (select (select |v_#memory_int_103| |v_~#a~0.base_44|) .cse1) |v_ULTIMATE.start_main_~sum~0#1_35|)) (< |v_ULTIMATE.start_main_~i~0#1_110| |v_ULTIMATE.start_main_~n~0#1_52|) (<= 0 .cse1)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_110|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_35|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_52|, #valid=|v_#valid_73|, #memory_int=|v_#memory_int_103|, ~#a~0.base=|v_~#a~0.base_44|, ~#a~0.offset=|v_~#a~0.offset_41|, #length=|v_#length_62|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_109|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_34|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_52|, #valid=|v_#valid_73|, #memory_int=|v_#memory_int_103|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_21|, ~#a~0.base=|v_~#a~0.base_44|, ~#a~0.offset=|v_~#a~0.offset_41|, #length=|v_#length_62|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_23|} 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-22 12:14:13,577 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:13,577 INFO L85 PathProgramCache]: Analyzing trace with hash 329277, now seen corresponding path program 1 times [2022-07-22 12:14:13,589 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:13,589 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1267573410] [2022-07-22 12:14:13,590 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:13,591 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:13,743 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 12:14:13,841 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-22 12:14:13,842 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-22 12:14:13,842 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1267573410] [2022-07-22 12:14:13,843 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1267573410] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-22 12:14:13,844 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-22 12:14:13,844 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-07-22 12:14:13,846 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [616658637] [2022-07-22 12:14:13,847 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-22 12:14:13,856 INFO L753 eck$LassoCheckResult]: stem already infeasible [2022-07-22 12:14:13,857 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:13,857 INFO L85 PathProgramCache]: Analyzing trace with hash 322, now seen corresponding path program 1 times [2022-07-22 12:14:13,857 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:13,858 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [49212484] [2022-07-22 12:14:13,858 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:13,858 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:13,872 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:13,873 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:14:13,880 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:13,903 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:14:13,956 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-22 12:14:13,996 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-07-22 12:14:13,998 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-07-22 12:14:14,001 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-22 12:14:14,049 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-22 12:14:14,049 INFO L93 Difference]: Finished difference Result 24 states and 35 transitions. [2022-07-22 12:14:14,051 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 24 states and 35 transitions. [2022-07-22 12:14:14,053 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 5 [2022-07-22 12:14:14,058 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 24 states to 20 states and 30 transitions. [2022-07-22 12:14:14,059 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 20 [2022-07-22 12:14:14,059 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 20 [2022-07-22 12:14:14,060 INFO L73 IsDeterministic]: Start isDeterministic. Operand 20 states and 30 transitions. [2022-07-22 12:14:14,061 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-22 12:14:14,061 INFO L220 hiAutomatonCegarLoop]: Abstraction has 20 states and 30 transitions. [2022-07-22 12:14:14,081 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 20 states and 30 transitions. [2022-07-22 12:14:14,092 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 20 to 20. [2022-07-22 12:14:14,093 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-22 12:14:14,094 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 30 transitions. [2022-07-22 12:14:14,096 INFO L242 hiAutomatonCegarLoop]: Abstraction has 20 states and 30 transitions. [2022-07-22 12:14:14,097 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-07-22 12:14:14,101 INFO L425 stractBuchiCegarLoop]: Abstraction has 20 states and 30 transitions. [2022-07-22 12:14:14,102 INFO L332 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2022-07-22 12:14:14,102 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 20 states and 30 transitions. [2022-07-22 12:14:14,103 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 5 [2022-07-22 12:14:14,103 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:14:14,103 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:14:14,104 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [2, 1, 1, 1, 1] [2022-07-22 12:14:14,104 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:14:14,105 INFO L748 eck$LassoCheckResult]: Stem: 175#[ULTIMATE.startENTRY]don't care [303] ULTIMATE.startENTRY-->L702-6: Formula: (let ((.cse1 (select |v_#memory_int_132| 1))) (and (= |v_#NULL.base_10| 0) (< |v_#StackHeapBarrier_19| |v_ULTIMATE.start_main_~#t~1#1.base_65|) (= 2 (select |v_#length_85| 1)) (= |v_ULTIMATE.start_#in~argv#1.base_12| |v_ULTIMATE.start_main_#in~argv#1.base_15|) (= (store |v_#valid_113| |v_ULTIMATE.start_main_~#t~1#1.base_65| 1) |v_#valid_112|) (= |v_~#a~0.offset_55| 0) (= (select |v_#valid_113| 3) 1) (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_25| |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_21|) (= |v_ULTIMATE.start_main_~n~0#1_78| (let ((.cse0 (mod |v_ULTIMATE.start_main_#t~nondet3#1_27| 4294967296))) (ite (<= .cse0 2147483647) .cse0 (+ (- 4294967296) .cse0)))) (= v_~x~0_52 0) (= 40 (select |v_#length_85| 3)) (= |v_ULTIMATE.start_main_~i~0#1_139| 0) (= (select |v_#valid_113| 2) 1) (= |v_ULTIMATE.start_#in~argc#1_12| |v_ULTIMATE.start_main_#in~argc#1_15|) (= 9 (select |v_#length_85| 2)) (= (store |v_#length_85| |v_ULTIMATE.start_main_~#t~1#1.base_65| 40) |v_#length_84|) (= |v_ULTIMATE.start_main_#in~argv#1.offset_15| |v_ULTIMATE.start_#in~argv#1.offset_12|) (= (select |v_#valid_113| |v_ULTIMATE.start_main_~#t~1#1.base_65|) 0) (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|) (= (select .cse1 0) 48) (= 0 (select .cse1 1)) (= |v_ULTIMATE.start_main_~argc#1_17| |v_ULTIMATE.start_main_#in~argc#1_15|) (= (select |v_#valid_113| 0) 0) (= (store |v_#memory_int_132| |v_~#a~0.base_58| (store ((as const (Array Int Int)) 0) |v_~#a~0.offset_55| 0)) |v_#memory_int_131|) (= |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_21| (ite (and (<= |v_ULTIMATE.start_main_~n~0#1_78| 10) (<= 5 |v_ULTIMATE.start_main_~n~0#1_78|)) 1 0)) (= |v_#NULL.offset_10| 0) (= (select |v_#valid_113| 1) 1) (= |v_ULTIMATE.start_main_#in~argv#1.base_15| |v_ULTIMATE.start_main_~argv#1.base_17|) (= |v_ULTIMATE.start_main_~#t~1#1.offset_55| 0) (= |v_~#a~0.base_58| 3))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_12|, #StackHeapBarrier=|v_#StackHeapBarrier_19|, #valid=|v_#valid_113|, #memory_int=|v_#memory_int_132|, #length=|v_#length_85|, 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_55|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_34|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_65|, #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_139|, 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_50|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_78|, 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_84|, 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_32|, 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_58|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_31|, #NULL.base=|v_#NULL.base_10|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_33|, 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_112|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_23|, #memory_int=|v_#memory_int_131|, ~#a~0.offset=|v_~#a~0.offset_55|, ~x~0=v_~x~0_52, 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 ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_99| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~1#1.offset_35| .cse1))) (and (<= 0 .cse0) (< |v_ULTIMATE.start_main_~i~0#1_99| |v_ULTIMATE.start_main_~n~0#1_46|) (= (select |v_#valid_65| |v_ULTIMATE.start_main_~#t~1#1.base_37|) 1) (<= (+ |v_ULTIMATE.start_main_~#t~1#1.offset_35| .cse1 4) (select |v_#length_54| |v_ULTIMATE.start_main_~#t~1#1.base_37|)) (= |v_#memory_int_89| (store |v_#memory_int_90| |v_ULTIMATE.start_main_~#t~1#1.base_37| (store (select |v_#memory_int_90| |v_ULTIMATE.start_main_~#t~1#1.base_37|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_23|))) (= (+ |v_#pthreadsForks_17| 1) |v_#pthreadsForks_16|) (= |v_#pthreadsForks_17| |v_ULTIMATE.start_main_#t~pre5#1_23|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_99|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_35|, #pthreadsForks=|v_#pthreadsForks_17|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_46|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_37|, #valid=|v_#valid_65|, #memory_int=|v_#memory_int_90|, #length=|v_#length_54|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_23|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_99|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_35|, #pthreadsForks=|v_#pthreadsForks_16|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_46|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_37|, #valid=|v_#valid_65|, #memory_int=|v_#memory_int_89|, #length=|v_#length_54|} 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_102| 1) |v_ULTIMATE.start_main_~i~0#1_101|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_102|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_25|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_101|, 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#[L702-6, thrENTRY]don't care [288] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_99| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~1#1.offset_35| .cse1))) (and (<= 0 .cse0) (< |v_ULTIMATE.start_main_~i~0#1_99| |v_ULTIMATE.start_main_~n~0#1_46|) (= (select |v_#valid_65| |v_ULTIMATE.start_main_~#t~1#1.base_37|) 1) (<= (+ |v_ULTIMATE.start_main_~#t~1#1.offset_35| .cse1 4) (select |v_#length_54| |v_ULTIMATE.start_main_~#t~1#1.base_37|)) (= |v_#memory_int_89| (store |v_#memory_int_90| |v_ULTIMATE.start_main_~#t~1#1.base_37| (store (select |v_#memory_int_90| |v_ULTIMATE.start_main_~#t~1#1.base_37|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_23|))) (= (+ |v_#pthreadsForks_17| 1) |v_#pthreadsForks_16|) (= |v_#pthreadsForks_17| |v_ULTIMATE.start_main_#t~pre5#1_23|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_99|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_35|, #pthreadsForks=|v_#pthreadsForks_17|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_46|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_37|, #valid=|v_#valid_65|, #memory_int=|v_#memory_int_90|, #length=|v_#length_54|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_23|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_99|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_35|, #pthreadsForks=|v_#pthreadsForks_16|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_46|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_37|, #valid=|v_#valid_65|, #memory_int=|v_#memory_int_89|, #length=|v_#length_54|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 201#[L703-3, thrENTRY]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-22 12:14:14,106 INFO L750 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-22 12:14:14,106 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:14,107 INFO L85 PathProgramCache]: Analyzing trace with hash 1244927409, now seen corresponding path program 1 times [2022-07-22 12:14:14,107 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:14,107 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [693967262] [2022-07-22 12:14:14,107 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:14,108 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:14,171 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:14,171 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:14:14,227 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:14,241 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:14:14,242 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:14,242 INFO L85 PathProgramCache]: Analyzing trace with hash 247, now seen corresponding path program 1 times [2022-07-22 12:14:14,242 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:14,242 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [96774503] [2022-07-22 12:14:14,243 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:14,243 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:14,250 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:14,250 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:14:14,252 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:14,254 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:14:14,254 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:14,255 INFO L85 PathProgramCache]: Analyzing trace with hash -61955769, now seen corresponding path program 1 times [2022-07-22 12:14:14,255 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:14,255 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1481122701] [2022-07-22 12:14:14,255 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:14,256 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:14,284 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:14,284 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:14:14,314 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:14,330 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:14:15,257 WARN L146 chiAutomizerObserver]: 1 thread instances were not sufficient, I will increase this number and restart the analysis [2022-07-22 12:14:15,271 INFO L144 ThreadInstanceAdder]: Constructed 2 joinOtherThreadTransitions. [2022-07-22 12:14:15,277 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 91 places, 95 transitions, 208 flow [2022-07-22 12:14:15,323 INFO L129 PetriNetUnfolder]: 24/214 cut-off events. [2022-07-22 12:14:15,323 INFO L130 PetriNetUnfolder]: For 6/6 co-relation queries the response was YES. [2022-07-22 12:14:15,328 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-22 12:14:15,328 INFO L82 GeneralOperation]: Start removeDead. Operand has 91 places, 95 transitions, 208 flow [2022-07-22 12:14:15,334 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 91 places, 95 transitions, 208 flow [2022-07-22 12:14:15,336 INFO L115 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-07-22 12:14:15,336 INFO L131 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 91 places, 95 transitions, 208 flow [2022-07-22 12:14:15,341 INFO L110 LiptonReduction]: Starting Lipton reduction on Petri net that has 91 places, 95 transitions, 208 flow [2022-07-22 12:14:15,341 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 91 places, 95 transitions, 208 flow [2022-07-22 12:14:15,414 INFO L129 PetriNetUnfolder]: 24/214 cut-off events. [2022-07-22 12:14:15,417 INFO L130 PetriNetUnfolder]: For 6/6 co-relation queries the response was YES. [2022-07-22 12:14:15,418 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-22 12:14:15,424 INFO L116 LiptonReduction]: Number of co-enabled transitions 1040 [2022-07-22 12:14:18,555 INFO L131 LiptonReduction]: Checked pairs total: 2864 [2022-07-22 12:14:18,555 INFO L133 LiptonReduction]: Total number of compositions: 85 [2022-07-22 12:14:18,557 INFO L300 stractBuchiCegarLoop]: Interprodecural is true [2022-07-22 12:14:18,557 INFO L301 stractBuchiCegarLoop]: Hoare is false [2022-07-22 12:14:18,557 INFO L302 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2022-07-22 12:14:18,558 INFO L303 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2022-07-22 12:14:18,558 INFO L304 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2022-07-22 12:14:18,558 INFO L305 stractBuchiCegarLoop]: Difference is false [2022-07-22 12:14:18,558 INFO L306 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2022-07-22 12:14:18,558 INFO L310 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2022-07-22 12:14:18,559 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 0 states, but on-demand construction may add more states [2022-07-22 12:14:18,622 INFO L131 ngComponentsAnalysis]: Automaton has 41 accepting balls. 41 [2022-07-22 12:14:18,623 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:14:18,623 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:14:18,623 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2022-07-22 12:14:18,623 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:14:18,624 INFO L332 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2022-07-22 12:14:18,624 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 216 states, but on-demand construction may add more states [2022-07-22 12:14:18,640 INFO L131 ngComponentsAnalysis]: Automaton has 41 accepting balls. 41 [2022-07-22 12:14:18,641 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:14:18,641 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:14:18,641 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2022-07-22 12:14:18,641 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:14:18,642 INFO L748 eck$LassoCheckResult]: Stem: 94#[ULTIMATE.startENTRY]don't care [491] ULTIMATE.startENTRY-->L702-6: Formula: (let ((.cse0 (select |v_#memory_int_279| 1))) (and (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_50| 0)) (= (ite (and (<= 5 |v_ULTIMATE.start_main_~n~0#1_166|) (<= |v_ULTIMATE.start_main_~n~0#1_166| 10)) 1 0) |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_42|) (= |v_ULTIMATE.start_main_~argc#1_36| |v_ULTIMATE.start_main_#in~argc#1_34|) (= (store |v_#memory_int_279| |v_~#a~0.base_126| (store ((as const (Array Int Int)) 0) |v_~#a~0.offset_123| 0)) |v_#memory_int_278|) (= |v_ULTIMATE.start_main_#in~argv#1.offset_34| |v_ULTIMATE.start_main_~argv#1.offset_36|) (= 40 (select |v_#length_188| 3)) (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_50| |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_42|) (= (select |v_#length_188| 1) 2) (= |v_ULTIMATE.start_#in~argv#1.base_27| |v_ULTIMATE.start_main_#in~argv#1.base_34|) (= (select |v_#valid_254| |v_ULTIMATE.start_main_~#t~1#1.base_154|) 0) (= 0 |v_ULTIMATE.start_main_~#t~1#1.offset_120|) (= |v_#NULL.base_19| 0) (= |v_#valid_253| (store |v_#valid_254| |v_ULTIMATE.start_main_~#t~1#1.base_154| 1)) (= (select .cse0 1) 0) (= 3 |v_~#a~0.base_126|) (= v_~x~0_101 0) (= 9 (select |v_#length_188| 2)) (= |v_ULTIMATE.start_main_#in~argv#1.base_34| |v_ULTIMATE.start_main_~argv#1.base_36|) (= (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_166|) (= (select |v_#valid_254| 2) 1) (= |v_ULTIMATE.start_main_~i~0#1_265| 0) (= (select .cse0 0) 48) (= (select |v_#valid_254| 0) 0) (= (select |v_#valid_254| 3) 1) (< |v_#StackHeapBarrier_40| |v_ULTIMATE.start_main_~#t~1#1.base_154|) (= |v_~#a~0.offset_123| 0) (= (select |v_#valid_254| 1) 1) (= (store |v_#length_188| |v_ULTIMATE.start_main_~#t~1#1.base_154| 40) |v_#length_187|) (= |v_ULTIMATE.start_main_#in~argv#1.offset_34| |v_ULTIMATE.start_#in~argv#1.offset_27|) (= |v_ULTIMATE.start_#in~argc#1_27| |v_ULTIMATE.start_main_#in~argc#1_34|) (< 0 |v_#StackHeapBarrier_40|) (= |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_254|, #memory_int=|v_#memory_int_279|, #length=|v_#length_188|, 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_120|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_63|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_154|, #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_265|, 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_101|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_166|, 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_187|, 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_67|, 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_126|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_69|, #NULL.base=|v_#NULL.base_19|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_65|, 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_253|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_42|, #memory_int=|v_#memory_int_278|, ~#a~0.offset=|v_~#a~0.offset_123|, ~x~0=v_~x~0_101, 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 (not (< |v_ULTIMATE.start_main_~i~0#1_192| |v_ULTIMATE.start_main_~n~0#1_112|)) (= |v_ULTIMATE.start_main_~sum~0#1_69| 0) (= |v_ULTIMATE.start_main_~i~0#1_191| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_192|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_112|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_191|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_69|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_112|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1] 105#[L709-6]don't care [2022-07-22 12:14:18,642 INFO L750 eck$LassoCheckResult]: Loop: 105#[L709-6]don't care [476] L709-6-->L709-6: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_236| 4))) (let ((.cse0 (+ |v_~#a~0.offset_109| .cse1))) (and (= (+ |v_ULTIMATE.start_main_~i~0#1_236| 1) |v_ULTIMATE.start_main_~i~0#1_235|) (= (select |v_#valid_209| |v_~#a~0.base_112|) 1) (<= 0 .cse0) (< |v_ULTIMATE.start_main_~i~0#1_236| |v_ULTIMATE.start_main_~n~0#1_138|) (= (+ (select (select |v_#memory_int_246| |v_~#a~0.base_112|) .cse0) |v_ULTIMATE.start_main_~sum~0#1_84|) |v_ULTIMATE.start_main_~sum~0#1_83|) (<= (+ |v_~#a~0.offset_109| .cse1 4) (select |v_#length_157| |v_~#a~0.base_112|))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_236|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_84|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_138|, #valid=|v_#valid_209|, #memory_int=|v_#memory_int_246|, ~#a~0.base=|v_~#a~0.base_112|, ~#a~0.offset=|v_~#a~0.offset_109|, #length=|v_#length_157|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_235|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_83|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_138|, #valid=|v_#valid_209|, #memory_int=|v_#memory_int_246|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_43|, ~#a~0.base=|v_~#a~0.base_112|, ~#a~0.offset=|v_~#a~0.offset_109|, #length=|v_#length_157|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_61|} 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-22 12:14:18,643 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:18,643 INFO L85 PathProgramCache]: Analyzing trace with hash 515895, now seen corresponding path program 1 times [2022-07-22 12:14:18,643 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:18,643 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [548843112] [2022-07-22 12:14:18,644 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:18,644 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:18,662 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 12:14:18,685 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-22 12:14:18,686 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-22 12:14:18,686 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [548843112] [2022-07-22 12:14:18,686 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [548843112] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-22 12:14:18,686 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-22 12:14:18,687 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-07-22 12:14:18,687 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [174093085] [2022-07-22 12:14:18,687 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-22 12:14:18,687 INFO L753 eck$LassoCheckResult]: stem already infeasible [2022-07-22 12:14:18,688 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:18,688 INFO L85 PathProgramCache]: Analyzing trace with hash 507, now seen corresponding path program 1 times [2022-07-22 12:14:18,688 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:18,689 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [377785947] [2022-07-22 12:14:18,689 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:18,689 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:18,697 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:18,697 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:14:18,701 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:18,704 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:14:18,750 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-22 12:14:18,751 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-07-22 12:14:18,751 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-07-22 12:14:18,751 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-22 12:14:18,817 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-22 12:14:18,817 INFO L93 Difference]: Finished difference Result 217 states and 511 transitions. [2022-07-22 12:14:18,817 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 217 states and 511 transitions. [2022-07-22 12:14:18,826 INFO L131 ngComponentsAnalysis]: Automaton has 41 accepting balls. 41 [2022-07-22 12:14:18,832 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 217 states to 191 states and 455 transitions. [2022-07-22 12:14:18,833 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 191 [2022-07-22 12:14:18,834 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 191 [2022-07-22 12:14:18,835 INFO L73 IsDeterministic]: Start isDeterministic. Operand 191 states and 455 transitions. [2022-07-22 12:14:18,837 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-22 12:14:18,838 INFO L220 hiAutomatonCegarLoop]: Abstraction has 191 states and 455 transitions. [2022-07-22 12:14:18,839 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 191 states and 455 transitions. [2022-07-22 12:14:18,858 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 191 to 191. [2022-07-22 12:14:18,859 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-22 12:14:18,861 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 191 states to 191 states and 455 transitions. [2022-07-22 12:14:18,861 INFO L242 hiAutomatonCegarLoop]: Abstraction has 191 states and 455 transitions. [2022-07-22 12:14:18,862 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-07-22 12:14:18,863 INFO L425 stractBuchiCegarLoop]: Abstraction has 191 states and 455 transitions. [2022-07-22 12:14:18,863 INFO L332 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2022-07-22 12:14:18,863 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 191 states and 455 transitions. [2022-07-22 12:14:18,867 INFO L131 ngComponentsAnalysis]: Automaton has 41 accepting balls. 41 [2022-07-22 12:14:18,868 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:14:18,868 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:14:18,868 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1] [2022-07-22 12:14:18,868 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:14:18,869 INFO L748 eck$LassoCheckResult]: Stem: 1130#[ULTIMATE.startENTRY]don't care [491] ULTIMATE.startENTRY-->L702-6: Formula: (let ((.cse0 (select |v_#memory_int_279| 1))) (and (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_50| 0)) (= (ite (and (<= 5 |v_ULTIMATE.start_main_~n~0#1_166|) (<= |v_ULTIMATE.start_main_~n~0#1_166| 10)) 1 0) |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_42|) (= |v_ULTIMATE.start_main_~argc#1_36| |v_ULTIMATE.start_main_#in~argc#1_34|) (= (store |v_#memory_int_279| |v_~#a~0.base_126| (store ((as const (Array Int Int)) 0) |v_~#a~0.offset_123| 0)) |v_#memory_int_278|) (= |v_ULTIMATE.start_main_#in~argv#1.offset_34| |v_ULTIMATE.start_main_~argv#1.offset_36|) (= 40 (select |v_#length_188| 3)) (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_50| |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_42|) (= (select |v_#length_188| 1) 2) (= |v_ULTIMATE.start_#in~argv#1.base_27| |v_ULTIMATE.start_main_#in~argv#1.base_34|) (= (select |v_#valid_254| |v_ULTIMATE.start_main_~#t~1#1.base_154|) 0) (= 0 |v_ULTIMATE.start_main_~#t~1#1.offset_120|) (= |v_#NULL.base_19| 0) (= |v_#valid_253| (store |v_#valid_254| |v_ULTIMATE.start_main_~#t~1#1.base_154| 1)) (= (select .cse0 1) 0) (= 3 |v_~#a~0.base_126|) (= v_~x~0_101 0) (= 9 (select |v_#length_188| 2)) (= |v_ULTIMATE.start_main_#in~argv#1.base_34| |v_ULTIMATE.start_main_~argv#1.base_36|) (= (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_166|) (= (select |v_#valid_254| 2) 1) (= |v_ULTIMATE.start_main_~i~0#1_265| 0) (= (select .cse0 0) 48) (= (select |v_#valid_254| 0) 0) (= (select |v_#valid_254| 3) 1) (< |v_#StackHeapBarrier_40| |v_ULTIMATE.start_main_~#t~1#1.base_154|) (= |v_~#a~0.offset_123| 0) (= (select |v_#valid_254| 1) 1) (= (store |v_#length_188| |v_ULTIMATE.start_main_~#t~1#1.base_154| 40) |v_#length_187|) (= |v_ULTIMATE.start_main_#in~argv#1.offset_34| |v_ULTIMATE.start_#in~argv#1.offset_27|) (= |v_ULTIMATE.start_#in~argc#1_27| |v_ULTIMATE.start_main_#in~argc#1_34|) (< 0 |v_#StackHeapBarrier_40|) (= |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_254|, #memory_int=|v_#memory_int_279|, #length=|v_#length_188|, 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_120|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_63|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_154|, #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_265|, 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_101|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_166|, 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_187|, 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_67|, 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_126|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_69|, #NULL.base=|v_#NULL.base_19|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_65|, 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_253|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_42|, #memory_int=|v_#memory_int_278|, ~#a~0.offset=|v_~#a~0.offset_123|, ~x~0=v_~x~0_101, 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_241| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_98|))) (and (= |v_#pthreadsForks_39| (+ |v_#pthreadsForks_40| 1)) (= (store |v_#memory_int_249| |v_ULTIMATE.start_main_~#t~1#1.base_124| (store (select |v_#memory_int_249| |v_ULTIMATE.start_main_~#t~1#1.base_124|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_55|)) |v_#memory_int_248|) (= (select |v_#valid_215| |v_ULTIMATE.start_main_~#t~1#1.base_124|) 1) (<= (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_98| 4) (select |v_#length_163| |v_ULTIMATE.start_main_~#t~1#1.base_124|)) (= |v_#pthreadsForks_40| |v_ULTIMATE.start_main_#t~pre5#1_55|) (< |v_ULTIMATE.start_main_~i~0#1_241| |v_ULTIMATE.start_main_~n~0#1_142|) (<= 0 .cse0)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_241|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_98|, #pthreadsForks=|v_#pthreadsForks_40|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_142|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_124|, #valid=|v_#valid_215|, #memory_int=|v_#memory_int_249|, #length=|v_#length_163|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_55|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_241|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_98|, #pthreadsForks=|v_#pthreadsForks_39|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_142|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_124|, #valid=|v_#valid_215|, #memory_int=|v_#memory_int_248|, #length=|v_#length_163|} 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_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_40|) (= |v_thrThread1of2ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_40|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_40|, 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#[L703-4, thrENTRY]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#[L703-5, thrENTRY]don't care [465] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_210| 1) |v_ULTIMATE.start_main_~i~0#1_209|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_210|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_209|, 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#[L702-6, thrENTRY]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#[L705-5, thrENTRY]don't care [458] L705-5-->L709-6: Formula: (and (not (< |v_ULTIMATE.start_main_~i~0#1_192| |v_ULTIMATE.start_main_~n~0#1_112|)) (= |v_ULTIMATE.start_main_~sum~0#1_69| 0) (= |v_ULTIMATE.start_main_~i~0#1_191| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_192|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_112|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_191|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_69|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_112|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1] 1022#[L709-6, thrENTRY]don't care [2022-07-22 12:14:18,870 INFO L750 eck$LassoCheckResult]: Loop: 1022#[L709-6, thrENTRY]don't care [476] L709-6-->L709-6: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_236| 4))) (let ((.cse0 (+ |v_~#a~0.offset_109| .cse1))) (and (= (+ |v_ULTIMATE.start_main_~i~0#1_236| 1) |v_ULTIMATE.start_main_~i~0#1_235|) (= (select |v_#valid_209| |v_~#a~0.base_112|) 1) (<= 0 .cse0) (< |v_ULTIMATE.start_main_~i~0#1_236| |v_ULTIMATE.start_main_~n~0#1_138|) (= (+ (select (select |v_#memory_int_246| |v_~#a~0.base_112|) .cse0) |v_ULTIMATE.start_main_~sum~0#1_84|) |v_ULTIMATE.start_main_~sum~0#1_83|) (<= (+ |v_~#a~0.offset_109| .cse1 4) (select |v_#length_157| |v_~#a~0.base_112|))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_236|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_84|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_138|, #valid=|v_#valid_209|, #memory_int=|v_#memory_int_246|, ~#a~0.base=|v_~#a~0.base_112|, ~#a~0.offset=|v_~#a~0.offset_109|, #length=|v_#length_157|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_235|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_83|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_138|, #valid=|v_#valid_209|, #memory_int=|v_#memory_int_246|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_43|, ~#a~0.base=|v_~#a~0.base_112|, ~#a~0.offset=|v_~#a~0.offset_109|, #length=|v_#length_157|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_61|} 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#[L709-6, thrENTRY]don't care [2022-07-22 12:14:18,870 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:18,870 INFO L85 PathProgramCache]: Analyzing trace with hash 603471899, now seen corresponding path program 1 times [2022-07-22 12:14:18,870 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:18,871 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [967783340] [2022-07-22 12:14:18,871 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:18,871 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:18,890 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 12:14:18,929 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-22 12:14:18,930 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-22 12:14:18,930 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [967783340] [2022-07-22 12:14:18,930 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [967783340] provided 0 perfect and 1 imperfect interpolant sequences [2022-07-22 12:14:18,931 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1896541174] [2022-07-22 12:14:18,931 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:18,931 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-22 12:14:18,932 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-22 12:14:18,934 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-22 12:14:18,959 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-22 12:14:19,009 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 12:14:19,012 INFO L263 TraceCheckSpWp]: Trace formula consists of 97 conjuncts, 4 conjunts are in the unsatisfiable core [2022-07-22 12:14:19,014 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-22 12:14:19,053 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-22 12:14:19,053 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-22 12:14:19,085 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-22 12:14:19,085 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1896541174] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-22 12:14:19,086 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-07-22 12:14:19,086 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 3, 3] total 6 [2022-07-22 12:14:19,086 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [153029275] [2022-07-22 12:14:19,087 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-07-22 12:14:19,088 INFO L753 eck$LassoCheckResult]: stem already infeasible [2022-07-22 12:14:19,088 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:19,089 INFO L85 PathProgramCache]: Analyzing trace with hash 507, now seen corresponding path program 2 times [2022-07-22 12:14:19,089 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:19,090 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [372605125] [2022-07-22 12:14:19,090 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:19,091 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:19,119 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:19,119 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:14:19,125 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:19,133 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:14:19,174 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-22 12:14:19,175 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-07-22 12:14:19,175 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=35, Unknown=0, NotChecked=0, Total=56 [2022-07-22 12:14:19,175 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-22 12:14:19,311 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-22 12:14:19,311 INFO L93 Difference]: Finished difference Result 194 states and 427 transitions. [2022-07-22 12:14:19,312 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 194 states and 427 transitions. [2022-07-22 12:14:19,315 INFO L131 ngComponentsAnalysis]: Automaton has 25 accepting balls. 25 [2022-07-22 12:14:19,319 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 194 states to 194 states and 427 transitions. [2022-07-22 12:14:19,319 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 194 [2022-07-22 12:14:19,320 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 194 [2022-07-22 12:14:19,320 INFO L73 IsDeterministic]: Start isDeterministic. Operand 194 states and 427 transitions. [2022-07-22 12:14:19,322 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-22 12:14:19,323 INFO L220 hiAutomatonCegarLoop]: Abstraction has 194 states and 427 transitions. [2022-07-22 12:14:19,324 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 194 states and 427 transitions. [2022-07-22 12:14:19,337 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 194 to 179. [2022-07-22 12:14:19,338 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-22 12:14:19,339 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 179 states to 179 states and 406 transitions. [2022-07-22 12:14:19,340 INFO L242 hiAutomatonCegarLoop]: Abstraction has 179 states and 406 transitions. [2022-07-22 12:14:19,340 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-07-22 12:14:19,341 INFO L425 stractBuchiCegarLoop]: Abstraction has 179 states and 406 transitions. [2022-07-22 12:14:19,341 INFO L332 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2022-07-22 12:14:19,341 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 179 states and 406 transitions. [2022-07-22 12:14:19,344 INFO L131 ngComponentsAnalysis]: Automaton has 25 accepting balls. 25 [2022-07-22 12:14:19,344 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:14:19,344 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:14:19,345 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [3, 2, 2, 1, 1, 1, 1] [2022-07-22 12:14:19,345 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:14:19,346 INFO L748 eck$LassoCheckResult]: Stem: 1733#[ULTIMATE.startENTRY]don't care [491] ULTIMATE.startENTRY-->L702-6: Formula: (let ((.cse0 (select |v_#memory_int_279| 1))) (and (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_50| 0)) (= (ite (and (<= 5 |v_ULTIMATE.start_main_~n~0#1_166|) (<= |v_ULTIMATE.start_main_~n~0#1_166| 10)) 1 0) |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_42|) (= |v_ULTIMATE.start_main_~argc#1_36| |v_ULTIMATE.start_main_#in~argc#1_34|) (= (store |v_#memory_int_279| |v_~#a~0.base_126| (store ((as const (Array Int Int)) 0) |v_~#a~0.offset_123| 0)) |v_#memory_int_278|) (= |v_ULTIMATE.start_main_#in~argv#1.offset_34| |v_ULTIMATE.start_main_~argv#1.offset_36|) (= 40 (select |v_#length_188| 3)) (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_50| |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_42|) (= (select |v_#length_188| 1) 2) (= |v_ULTIMATE.start_#in~argv#1.base_27| |v_ULTIMATE.start_main_#in~argv#1.base_34|) (= (select |v_#valid_254| |v_ULTIMATE.start_main_~#t~1#1.base_154|) 0) (= 0 |v_ULTIMATE.start_main_~#t~1#1.offset_120|) (= |v_#NULL.base_19| 0) (= |v_#valid_253| (store |v_#valid_254| |v_ULTIMATE.start_main_~#t~1#1.base_154| 1)) (= (select .cse0 1) 0) (= 3 |v_~#a~0.base_126|) (= v_~x~0_101 0) (= 9 (select |v_#length_188| 2)) (= |v_ULTIMATE.start_main_#in~argv#1.base_34| |v_ULTIMATE.start_main_~argv#1.base_36|) (= (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_166|) (= (select |v_#valid_254| 2) 1) (= |v_ULTIMATE.start_main_~i~0#1_265| 0) (= (select .cse0 0) 48) (= (select |v_#valid_254| 0) 0) (= (select |v_#valid_254| 3) 1) (< |v_#StackHeapBarrier_40| |v_ULTIMATE.start_main_~#t~1#1.base_154|) (= |v_~#a~0.offset_123| 0) (= (select |v_#valid_254| 1) 1) (= (store |v_#length_188| |v_ULTIMATE.start_main_~#t~1#1.base_154| 40) |v_#length_187|) (= |v_ULTIMATE.start_main_#in~argv#1.offset_34| |v_ULTIMATE.start_#in~argv#1.offset_27|) (= |v_ULTIMATE.start_#in~argc#1_27| |v_ULTIMATE.start_main_#in~argc#1_34|) (< 0 |v_#StackHeapBarrier_40|) (= |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_254|, #memory_int=|v_#memory_int_279|, #length=|v_#length_188|, 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_120|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_63|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_154|, #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_265|, 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_101|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_166|, 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_187|, 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_67|, 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_126|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_69|, #NULL.base=|v_#NULL.base_19|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_65|, 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_253|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_42|, #memory_int=|v_#memory_int_278|, ~#a~0.offset=|v_~#a~0.offset_123|, ~x~0=v_~x~0_101, 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_241| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_98|))) (and (= |v_#pthreadsForks_39| (+ |v_#pthreadsForks_40| 1)) (= (store |v_#memory_int_249| |v_ULTIMATE.start_main_~#t~1#1.base_124| (store (select |v_#memory_int_249| |v_ULTIMATE.start_main_~#t~1#1.base_124|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_55|)) |v_#memory_int_248|) (= (select |v_#valid_215| |v_ULTIMATE.start_main_~#t~1#1.base_124|) 1) (<= (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_98| 4) (select |v_#length_163| |v_ULTIMATE.start_main_~#t~1#1.base_124|)) (= |v_#pthreadsForks_40| |v_ULTIMATE.start_main_#t~pre5#1_55|) (< |v_ULTIMATE.start_main_~i~0#1_241| |v_ULTIMATE.start_main_~n~0#1_142|) (<= 0 .cse0)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_241|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_98|, #pthreadsForks=|v_#pthreadsForks_40|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_142|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_124|, #valid=|v_#valid_215|, #memory_int=|v_#memory_int_249|, #length=|v_#length_163|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_55|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_241|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_98|, #pthreadsForks=|v_#pthreadsForks_39|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_142|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_124|, #valid=|v_#valid_215|, #memory_int=|v_#memory_int_248|, #length=|v_#length_163|} 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_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_40|) (= |v_thrThread1of2ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_40|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_40|, 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#[L703-4, thrENTRY]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] 1405#[L703-5, thrENTRY]don't care [465] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_210| 1) |v_ULTIMATE.start_main_~i~0#1_209|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_210|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_209|, 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] 1409#[L702-6, thrENTRY]don't care [478] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_241| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_98|))) (and (= |v_#pthreadsForks_39| (+ |v_#pthreadsForks_40| 1)) (= (store |v_#memory_int_249| |v_ULTIMATE.start_main_~#t~1#1.base_124| (store (select |v_#memory_int_249| |v_ULTIMATE.start_main_~#t~1#1.base_124|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_55|)) |v_#memory_int_248|) (= (select |v_#valid_215| |v_ULTIMATE.start_main_~#t~1#1.base_124|) 1) (<= (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_98| 4) (select |v_#length_163| |v_ULTIMATE.start_main_~#t~1#1.base_124|)) (= |v_#pthreadsForks_40| |v_ULTIMATE.start_main_#t~pre5#1_55|) (< |v_ULTIMATE.start_main_~i~0#1_241| |v_ULTIMATE.start_main_~n~0#1_142|) (<= 0 .cse0)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_241|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_98|, #pthreadsForks=|v_#pthreadsForks_40|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_142|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_124|, #valid=|v_#valid_215|, #memory_int=|v_#memory_int_249|, #length=|v_#length_163|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_55|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_241|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_98|, #pthreadsForks=|v_#pthreadsForks_39|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_142|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_124|, #valid=|v_#valid_215|, #memory_int=|v_#memory_int_248|, #length=|v_#length_163|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 1507#[L703-3, thrENTRY]don't care [404] L703-3-->thrENTRY: Formula: (and (= |v_thrThread2of2ForFork0_#in~arg.base_4| 0) (= |v_thrThread2of2ForFork0_#in~arg.offset_4| 0) (= v_thrThread2of2ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_42|)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_42|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_42|, 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] 1511#[L703-4, thrENTRY, thrENTRY]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_210| 1) |v_ULTIMATE.start_main_~i~0#1_209|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_210|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_209|, 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#[L702-6, thrENTRY, thrENTRY]don't care [478] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_241| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_98|))) (and (= |v_#pthreadsForks_39| (+ |v_#pthreadsForks_40| 1)) (= (store |v_#memory_int_249| |v_ULTIMATE.start_main_~#t~1#1.base_124| (store (select |v_#memory_int_249| |v_ULTIMATE.start_main_~#t~1#1.base_124|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_55|)) |v_#memory_int_248|) (= (select |v_#valid_215| |v_ULTIMATE.start_main_~#t~1#1.base_124|) 1) (<= (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_98| 4) (select |v_#length_163| |v_ULTIMATE.start_main_~#t~1#1.base_124|)) (= |v_#pthreadsForks_40| |v_ULTIMATE.start_main_#t~pre5#1_55|) (< |v_ULTIMATE.start_main_~i~0#1_241| |v_ULTIMATE.start_main_~n~0#1_142|) (<= 0 .cse0)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_241|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_98|, #pthreadsForks=|v_#pthreadsForks_40|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_142|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_124|, #valid=|v_#valid_215|, #memory_int=|v_#memory_int_249|, #length=|v_#length_163|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_55|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_241|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_98|, #pthreadsForks=|v_#pthreadsForks_39|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_142|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_124|, #valid=|v_#valid_215|, #memory_int=|v_#memory_int_248|, #length=|v_#length_163|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 1487#[L703-3, thrENTRY, thrENTRY]don't care [401] L703-3-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 1491#[thrENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, thrENTRY]don't care [2022-07-22 12:14:19,346 INFO L750 eck$LassoCheckResult]: Loop: 1491#[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[] 1491#[thrENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, thrENTRY]don't care [2022-07-22 12:14:19,347 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:19,347 INFO L85 PathProgramCache]: Analyzing trace with hash 626240070, now seen corresponding path program 1 times [2022-07-22 12:14:19,347 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:19,347 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1038354480] [2022-07-22 12:14:19,348 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:19,348 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:19,375 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:19,381 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:14:19,422 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:19,437 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:14:19,438 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:19,438 INFO L85 PathProgramCache]: Analyzing trace with hash 433, now seen corresponding path program 1 times [2022-07-22 12:14:19,438 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:19,439 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [866847877] [2022-07-22 12:14:19,439 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:19,439 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:19,445 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:19,445 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:14:19,447 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:19,448 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:14:19,455 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:19,456 INFO L85 PathProgramCache]: Analyzing trace with hash -2061393908, now seen corresponding path program 1 times [2022-07-22 12:14:19,456 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:19,456 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1136582102] [2022-07-22 12:14:19,456 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:19,457 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:19,518 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:19,518 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:14:19,552 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:19,561 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:14:20,835 WARN L146 chiAutomizerObserver]: 2 thread instances were not sufficient, I will increase this number and restart the analysis [2022-07-22 12:14:20,851 INFO L144 ThreadInstanceAdder]: Constructed 3 joinOtherThreadTransitions. [2022-07-22 12:14:20,855 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 99 places, 102 transitions, 234 flow [2022-07-22 12:14:20,910 INFO L129 PetriNetUnfolder]: 46/376 cut-off events. [2022-07-22 12:14:20,911 INFO L130 PetriNetUnfolder]: For 19/19 co-relation queries the response was YES. [2022-07-22 12:14:20,912 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-22 12:14:20,912 INFO L82 GeneralOperation]: Start removeDead. Operand has 99 places, 102 transitions, 234 flow [2022-07-22 12:14:20,918 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 99 places, 102 transitions, 234 flow [2022-07-22 12:14:20,918 INFO L115 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-07-22 12:14:20,919 INFO L131 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 99 places, 102 transitions, 234 flow [2022-07-22 12:14:20,919 INFO L110 LiptonReduction]: Starting Lipton reduction on Petri net that has 99 places, 102 transitions, 234 flow [2022-07-22 12:14:20,919 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 99 places, 102 transitions, 234 flow [2022-07-22 12:14:20,973 INFO L129 PetriNetUnfolder]: 46/376 cut-off events. [2022-07-22 12:14:20,973 INFO L130 PetriNetUnfolder]: For 19/19 co-relation queries the response was YES. [2022-07-22 12:14:20,975 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-22 12:14:20,981 INFO L116 LiptonReduction]: Number of co-enabled transitions 1680 [2022-07-22 12:14:23,455 INFO L131 LiptonReduction]: Checked pairs total: 5141 [2022-07-22 12:14:23,456 INFO L133 LiptonReduction]: Total number of compositions: 85 [2022-07-22 12:14:23,458 INFO L300 stractBuchiCegarLoop]: Interprodecural is true [2022-07-22 12:14:23,458 INFO L301 stractBuchiCegarLoop]: Hoare is false [2022-07-22 12:14:23,458 INFO L302 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2022-07-22 12:14:23,458 INFO L303 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2022-07-22 12:14:23,458 INFO L304 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2022-07-22 12:14:23,458 INFO L305 stractBuchiCegarLoop]: Difference is false [2022-07-22 12:14:23,458 INFO L306 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2022-07-22 12:14:23,459 INFO L310 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2022-07-22 12:14:23,459 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 0 states, but on-demand construction may add more states [2022-07-22 12:14:23,638 INFO L131 ngComponentsAnalysis]: Automaton has 189 accepting balls. 189 [2022-07-22 12:14:23,638 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:14:23,639 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:14:23,639 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2022-07-22 12:14:23,639 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:14:23,639 INFO L332 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2022-07-22 12:14:23,640 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 1024 states, but on-demand construction may add more states [2022-07-22 12:14:23,662 INFO L131 ngComponentsAnalysis]: Automaton has 189 accepting balls. 189 [2022-07-22 12:14:23,662 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:14:23,663 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:14:23,663 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2022-07-22 12:14:23,663 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:14:23,664 INFO L748 eck$LassoCheckResult]: Stem: 102#[ULTIMATE.startENTRY]don't care [685] ULTIMATE.startENTRY-->L702-6: Formula: (let ((.cse0 (select |v_#memory_int_535| 1))) (and (= |v_ULTIMATE.start_main_#in~argv#1.offset_53| |v_ULTIMATE.start_main_~argv#1.offset_53|) (= 1 (select |v_#valid_419| 1)) (= (select .cse0 0) 48) (= (select .cse0 1) 0) (= |v_ULTIMATE.start_#in~argv#1.base_40| |v_ULTIMATE.start_main_#in~argv#1.base_53|) (= |v_~#a~0.offset_222| 0) (= |v_ULTIMATE.start_main_#in~argv#1.base_53| |v_ULTIMATE.start_main_~argv#1.base_53|) (= 40 (select |v_#length_312| 3)) (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_69| 0)) (= 3 |v_~#a~0.base_227|) (= (store |v_#valid_419| |v_ULTIMATE.start_main_~#t~1#1.base_253| 1) |v_#valid_418|) (= v_~x~0_170 0) (= |v_ULTIMATE.start_#in~argc#1_40| |v_ULTIMATE.start_main_#in~argc#1_51|) (< |v_#StackHeapBarrier_61| |v_ULTIMATE.start_main_~#t~1#1.base_253|) (= |v_#NULL.base_32| 0) (= |v_ULTIMATE.start_main_~argc#1_49| |v_ULTIMATE.start_main_#in~argc#1_51|) (= (select |v_#valid_419| 0) 0) (= |v_#NULL.offset_32| 0) (= 9 (select |v_#length_312| 2)) (= (ite (and (<= 5 |v_ULTIMATE.start_main_~n~0#1_245|) (<= |v_ULTIMATE.start_main_~n~0#1_245| 10)) 1 0) |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_53|) (= |v_ULTIMATE.start_main_~n~0#1_245| (let ((.cse1 (mod |v_ULTIMATE.start_main_#t~nondet3#1_95| 4294967296))) (ite (<= .cse1 2147483647) .cse1 (+ .cse1 (- 4294967296))))) (= |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_~i~0#1_408| 0) (= 0 |v_ULTIMATE.start_main_~#t~1#1.offset_199|) (= |v_ULTIMATE.start_main_#in~argv#1.offset_53| |v_ULTIMATE.start_#in~argv#1.offset_40|) (= 2 (select |v_#length_312| 1)) (= (select |v_#valid_419| 2) 1) (= (store |v_#length_312| |v_ULTIMATE.start_main_~#t~1#1.base_253| 40) |v_#length_311|) (= (select |v_#valid_419| |v_ULTIMATE.start_main_~#t~1#1.base_253|) 0) (< 0 |v_#StackHeapBarrier_61|) (= (store |v_#memory_int_535| |v_~#a~0.base_227| (store ((as const (Array Int Int)) 0) |v_~#a~0.offset_222| 0)) |v_#memory_int_534|) (= 1 (select |v_#valid_419| 3)))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_40|, #StackHeapBarrier=|v_#StackHeapBarrier_61|, #valid=|v_#valid_419|, #memory_int=|v_#memory_int_535|, #length=|v_#length_312|, 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_199|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_86|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_253|, #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_408|, 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_173|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_245|, 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_311|, 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_98|, 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_227|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_108|, #NULL.base=|v_#NULL.base_32|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_127|, 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_418|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_61|, #memory_int=|v_#memory_int_534|, ~#a~0.offset=|v_~#a~0.offset_222|, ~x~0=v_~x~0_170, 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_125| 0) (= |v_ULTIMATE.start_main_~i~0#1_330| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_331| |v_ULTIMATE.start_main_~n~0#1_189|))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_331|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_189|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_330|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_125|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_189|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1] 113#[L709-6]don't care [2022-07-22 12:14:23,664 INFO L750 eck$LassoCheckResult]: Loop: 113#[L709-6]don't care [673] L709-6-->L709-6: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_381| 4))) (let ((.cse0 (+ .cse1 |v_~#a~0.offset_200|))) (and (= (+ (select (select |v_#memory_int_480| |v_~#a~0.base_205|) .cse0) |v_ULTIMATE.start_main_~sum~0#1_160|) |v_ULTIMATE.start_main_~sum~0#1_159|) (<= (+ .cse1 |v_~#a~0.offset_200| 4) (select |v_#length_281| |v_~#a~0.base_205|)) (<= 0 .cse0) (= (select |v_#valid_373| |v_~#a~0.base_205|) 1) (< |v_ULTIMATE.start_main_~i~0#1_381| |v_ULTIMATE.start_main_~n~0#1_219|) (= (+ |v_ULTIMATE.start_main_~i~0#1_381| 1) |v_ULTIMATE.start_main_~i~0#1_380|)))) InVars {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_160|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_219|, #valid=|v_#valid_373|, #memory_int=|v_#memory_int_480|, ~#a~0.base=|v_~#a~0.base_205|, ~#a~0.offset=|v_~#a~0.offset_200|, #length=|v_#length_281|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_380|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_159|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_219|, #valid=|v_#valid_373|, #memory_int=|v_#memory_int_480|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_68|, ~#a~0.base=|v_~#a~0.base_205|, ~#a~0.offset=|v_~#a~0.offset_200|, #length=|v_#length_281|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_98|} 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-22 12:14:23,665 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:23,665 INFO L85 PathProgramCache]: Analyzing trace with hash 708661, now seen corresponding path program 1 times [2022-07-22 12:14:23,665 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:23,666 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2052639540] [2022-07-22 12:14:23,666 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:23,666 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:23,678 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 12:14:23,695 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-22 12:14:23,695 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-22 12:14:23,696 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2052639540] [2022-07-22 12:14:23,696 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2052639540] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-22 12:14:23,696 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-22 12:14:23,696 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-07-22 12:14:23,697 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [567281329] [2022-07-22 12:14:23,697 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-22 12:14:23,697 INFO L753 eck$LassoCheckResult]: stem already infeasible [2022-07-22 12:14:23,698 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:23,698 INFO L85 PathProgramCache]: Analyzing trace with hash 704, now seen corresponding path program 1 times [2022-07-22 12:14:23,698 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:23,698 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [297502051] [2022-07-22 12:14:23,698 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:23,699 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:23,704 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:23,704 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:14:23,707 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:23,710 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:14:23,747 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-22 12:14:23,749 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-07-22 12:14:23,749 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-07-22 12:14:23,749 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-22 12:14:23,803 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-22 12:14:23,804 INFO L93 Difference]: Finished difference Result 1025 states and 3074 transitions. [2022-07-22 12:14:23,804 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1025 states and 3074 transitions. [2022-07-22 12:14:23,820 INFO L131 ngComponentsAnalysis]: Automaton has 189 accepting balls. 189 [2022-07-22 12:14:23,836 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1025 states to 899 states and 2723 transitions. [2022-07-22 12:14:23,836 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 899 [2022-07-22 12:14:23,839 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 899 [2022-07-22 12:14:23,840 INFO L73 IsDeterministic]: Start isDeterministic. Operand 899 states and 2723 transitions. [2022-07-22 12:14:23,847 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-22 12:14:23,847 INFO L220 hiAutomatonCegarLoop]: Abstraction has 899 states and 2723 transitions. [2022-07-22 12:14:23,852 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 899 states and 2723 transitions. [2022-07-22 12:14:23,895 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 899 to 899. [2022-07-22 12:14:23,901 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-22 12:14:23,908 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 899 states to 899 states and 2723 transitions. [2022-07-22 12:14:23,908 INFO L242 hiAutomatonCegarLoop]: Abstraction has 899 states and 2723 transitions. [2022-07-22 12:14:23,909 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-07-22 12:14:23,910 INFO L425 stractBuchiCegarLoop]: Abstraction has 899 states and 2723 transitions. [2022-07-22 12:14:23,910 INFO L332 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2022-07-22 12:14:23,910 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 899 states and 2723 transitions. [2022-07-22 12:14:23,922 INFO L131 ngComponentsAnalysis]: Automaton has 189 accepting balls. 189 [2022-07-22 12:14:23,922 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:14:23,922 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:14:23,923 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1] [2022-07-22 12:14:23,923 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:14:23,923 INFO L748 eck$LassoCheckResult]: Stem: 4780#[ULTIMATE.startENTRY]don't care [685] ULTIMATE.startENTRY-->L702-6: Formula: (let ((.cse0 (select |v_#memory_int_535| 1))) (and (= |v_ULTIMATE.start_main_#in~argv#1.offset_53| |v_ULTIMATE.start_main_~argv#1.offset_53|) (= 1 (select |v_#valid_419| 1)) (= (select .cse0 0) 48) (= (select .cse0 1) 0) (= |v_ULTIMATE.start_#in~argv#1.base_40| |v_ULTIMATE.start_main_#in~argv#1.base_53|) (= |v_~#a~0.offset_222| 0) (= |v_ULTIMATE.start_main_#in~argv#1.base_53| |v_ULTIMATE.start_main_~argv#1.base_53|) (= 40 (select |v_#length_312| 3)) (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_69| 0)) (= 3 |v_~#a~0.base_227|) (= (store |v_#valid_419| |v_ULTIMATE.start_main_~#t~1#1.base_253| 1) |v_#valid_418|) (= v_~x~0_170 0) (= |v_ULTIMATE.start_#in~argc#1_40| |v_ULTIMATE.start_main_#in~argc#1_51|) (< |v_#StackHeapBarrier_61| |v_ULTIMATE.start_main_~#t~1#1.base_253|) (= |v_#NULL.base_32| 0) (= |v_ULTIMATE.start_main_~argc#1_49| |v_ULTIMATE.start_main_#in~argc#1_51|) (= (select |v_#valid_419| 0) 0) (= |v_#NULL.offset_32| 0) (= 9 (select |v_#length_312| 2)) (= (ite (and (<= 5 |v_ULTIMATE.start_main_~n~0#1_245|) (<= |v_ULTIMATE.start_main_~n~0#1_245| 10)) 1 0) |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_53|) (= |v_ULTIMATE.start_main_~n~0#1_245| (let ((.cse1 (mod |v_ULTIMATE.start_main_#t~nondet3#1_95| 4294967296))) (ite (<= .cse1 2147483647) .cse1 (+ .cse1 (- 4294967296))))) (= |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_~i~0#1_408| 0) (= 0 |v_ULTIMATE.start_main_~#t~1#1.offset_199|) (= |v_ULTIMATE.start_main_#in~argv#1.offset_53| |v_ULTIMATE.start_#in~argv#1.offset_40|) (= 2 (select |v_#length_312| 1)) (= (select |v_#valid_419| 2) 1) (= (store |v_#length_312| |v_ULTIMATE.start_main_~#t~1#1.base_253| 40) |v_#length_311|) (= (select |v_#valid_419| |v_ULTIMATE.start_main_~#t~1#1.base_253|) 0) (< 0 |v_#StackHeapBarrier_61|) (= (store |v_#memory_int_535| |v_~#a~0.base_227| (store ((as const (Array Int Int)) 0) |v_~#a~0.offset_222| 0)) |v_#memory_int_534|) (= 1 (select |v_#valid_419| 3)))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_40|, #StackHeapBarrier=|v_#StackHeapBarrier_61|, #valid=|v_#valid_419|, #memory_int=|v_#memory_int_535|, #length=|v_#length_312|, 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_199|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_86|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_253|, #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_408|, 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_173|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_245|, 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_311|, 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_98|, 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_227|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_108|, #NULL.base=|v_#NULL.base_32|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_127|, 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_418|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_61|, #memory_int=|v_#memory_int_534|, ~#a~0.offset=|v_~#a~0.offset_222|, ~x~0=v_~x~0_170, 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 ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_354| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_161|))) (and (= (store |v_#memory_int_437| |v_ULTIMATE.start_main_~#t~1#1.base_205| (store (select |v_#memory_int_437| |v_ULTIMATE.start_main_~#t~1#1.base_205|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_107|)) |v_#memory_int_436|) (= (select |v_#valid_345| |v_ULTIMATE.start_main_~#t~1#1.base_205|) 1) (<= 0 .cse0) (< |v_ULTIMATE.start_main_~i~0#1_354| |v_ULTIMATE.start_main_~n~0#1_197|) (= |v_#pthreadsForks_83| |v_ULTIMATE.start_main_#t~pre5#1_107|) (= (+ |v_#pthreadsForks_83| 1) |v_#pthreadsForks_82|) (<= (+ .cse1 4 |v_ULTIMATE.start_main_~#t~1#1.offset_161|) (select |v_#length_261| |v_ULTIMATE.start_main_~#t~1#1.base_205|))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_354|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_161|, #pthreadsForks=|v_#pthreadsForks_83|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_197|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_205|, #valid=|v_#valid_345|, #memory_int=|v_#memory_int_437|, #length=|v_#length_261|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_107|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_354|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_161|, #pthreadsForks=|v_#pthreadsForks_82|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_197|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_205|, #valid=|v_#valid_345|, #memory_int=|v_#memory_int_436|, #length=|v_#length_261|} 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_76|) (= |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_76|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_76|, 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#[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] 4212#[L703-5, thrENTRY]don't care [662] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_357| 1) |v_ULTIMATE.start_main_~i~0#1_356|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_357|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_356|, 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#[thrENTRY, 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] 3756#[thrENTRY, L705-5]don't care [652] L705-5-->L709-6: Formula: (and (= |v_ULTIMATE.start_main_~sum~0#1_125| 0) (= |v_ULTIMATE.start_main_~i~0#1_330| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_331| |v_ULTIMATE.start_main_~n~0#1_189|))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_331|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_189|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_330|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_125|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_189|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1] 4968#[L709-6, thrENTRY]don't care [2022-07-22 12:14:23,924 INFO L750 eck$LassoCheckResult]: Loop: 4968#[L709-6, thrENTRY]don't care [673] L709-6-->L709-6: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_381| 4))) (let ((.cse0 (+ .cse1 |v_~#a~0.offset_200|))) (and (= (+ (select (select |v_#memory_int_480| |v_~#a~0.base_205|) .cse0) |v_ULTIMATE.start_main_~sum~0#1_160|) |v_ULTIMATE.start_main_~sum~0#1_159|) (<= (+ .cse1 |v_~#a~0.offset_200| 4) (select |v_#length_281| |v_~#a~0.base_205|)) (<= 0 .cse0) (= (select |v_#valid_373| |v_~#a~0.base_205|) 1) (< |v_ULTIMATE.start_main_~i~0#1_381| |v_ULTIMATE.start_main_~n~0#1_219|) (= (+ |v_ULTIMATE.start_main_~i~0#1_381| 1) |v_ULTIMATE.start_main_~i~0#1_380|)))) InVars {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_160|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_219|, #valid=|v_#valid_373|, #memory_int=|v_#memory_int_480|, ~#a~0.base=|v_~#a~0.base_205|, ~#a~0.offset=|v_~#a~0.offset_200|, #length=|v_#length_281|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_380|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_159|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_219|, #valid=|v_#valid_373|, #memory_int=|v_#memory_int_480|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_68|, ~#a~0.base=|v_~#a~0.base_205|, ~#a~0.offset=|v_~#a~0.offset_200|, #length=|v_#length_281|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_98|} 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#[L709-6, thrENTRY]don't care [2022-07-22 12:14:23,924 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:23,924 INFO L85 PathProgramCache]: Analyzing trace with hash 2107744108, now seen corresponding path program 1 times [2022-07-22 12:14:23,925 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:23,925 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [811138292] [2022-07-22 12:14:23,925 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:23,925 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:23,937 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 12:14:23,967 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-22 12:14:23,967 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-22 12:14:23,968 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [811138292] [2022-07-22 12:14:23,968 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [811138292] provided 0 perfect and 1 imperfect interpolant sequences [2022-07-22 12:14:23,968 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [735181291] [2022-07-22 12:14:23,968 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:23,968 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-22 12:14:23,969 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-22 12:14:23,973 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-22 12:14:23,991 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-22 12:14:24,033 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 12:14:24,034 INFO L263 TraceCheckSpWp]: Trace formula consists of 97 conjuncts, 4 conjunts are in the unsatisfiable core [2022-07-22 12:14:24,035 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-22 12:14:24,061 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-22 12:14:24,062 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-22 12:14:24,087 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-22 12:14:24,088 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [735181291] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-22 12:14:24,088 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-07-22 12:14:24,088 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 3, 3] total 6 [2022-07-22 12:14:24,090 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [457944119] [2022-07-22 12:14:24,091 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-07-22 12:14:24,091 INFO L753 eck$LassoCheckResult]: stem already infeasible [2022-07-22 12:14:24,092 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:24,092 INFO L85 PathProgramCache]: Analyzing trace with hash 704, now seen corresponding path program 2 times [2022-07-22 12:14:24,092 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:24,095 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [731645107] [2022-07-22 12:14:24,095 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:24,099 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:24,112 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:24,112 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:14:24,119 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:24,122 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:14:24,156 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-22 12:14:24,157 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-07-22 12:14:24,157 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=35, Unknown=0, NotChecked=0, Total=56 [2022-07-22 12:14:24,157 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-22 12:14:24,273 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-22 12:14:24,273 INFO L93 Difference]: Finished difference Result 954 states and 2706 transitions. [2022-07-22 12:14:24,274 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 954 states and 2706 transitions. [2022-07-22 12:14:24,287 INFO L131 ngComponentsAnalysis]: Automaton has 125 accepting balls. 125 [2022-07-22 12:14:24,300 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 954 states to 954 states and 2706 transitions. [2022-07-22 12:14:24,301 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 954 [2022-07-22 12:14:24,302 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 954 [2022-07-22 12:14:24,303 INFO L73 IsDeterministic]: Start isDeterministic. Operand 954 states and 2706 transitions. [2022-07-22 12:14:24,306 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-22 12:14:24,306 INFO L220 hiAutomatonCegarLoop]: Abstraction has 954 states and 2706 transitions. [2022-07-22 12:14:24,310 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 954 states and 2706 transitions. [2022-07-22 12:14:24,334 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 954 to 855. [2022-07-22 12:14:24,338 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-22 12:14:24,343 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 855 states to 855 states and 2498 transitions. [2022-07-22 12:14:24,343 INFO L242 hiAutomatonCegarLoop]: Abstraction has 855 states and 2498 transitions. [2022-07-22 12:14:24,344 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-07-22 12:14:24,345 INFO L425 stractBuchiCegarLoop]: Abstraction has 855 states and 2498 transitions. [2022-07-22 12:14:24,345 INFO L332 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2022-07-22 12:14:24,345 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 855 states and 2498 transitions. [2022-07-22 12:14:24,353 INFO L131 ngComponentsAnalysis]: Automaton has 125 accepting balls. 125 [2022-07-22 12:14:24,354 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:14:24,354 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:14:24,354 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-22 12:14:24,354 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:14:24,355 INFO L748 eck$LassoCheckResult]: Stem: 7481#[ULTIMATE.startENTRY]don't care [685] ULTIMATE.startENTRY-->L702-6: Formula: (let ((.cse0 (select |v_#memory_int_535| 1))) (and (= |v_ULTIMATE.start_main_#in~argv#1.offset_53| |v_ULTIMATE.start_main_~argv#1.offset_53|) (= 1 (select |v_#valid_419| 1)) (= (select .cse0 0) 48) (= (select .cse0 1) 0) (= |v_ULTIMATE.start_#in~argv#1.base_40| |v_ULTIMATE.start_main_#in~argv#1.base_53|) (= |v_~#a~0.offset_222| 0) (= |v_ULTIMATE.start_main_#in~argv#1.base_53| |v_ULTIMATE.start_main_~argv#1.base_53|) (= 40 (select |v_#length_312| 3)) (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_69| 0)) (= 3 |v_~#a~0.base_227|) (= (store |v_#valid_419| |v_ULTIMATE.start_main_~#t~1#1.base_253| 1) |v_#valid_418|) (= v_~x~0_170 0) (= |v_ULTIMATE.start_#in~argc#1_40| |v_ULTIMATE.start_main_#in~argc#1_51|) (< |v_#StackHeapBarrier_61| |v_ULTIMATE.start_main_~#t~1#1.base_253|) (= |v_#NULL.base_32| 0) (= |v_ULTIMATE.start_main_~argc#1_49| |v_ULTIMATE.start_main_#in~argc#1_51|) (= (select |v_#valid_419| 0) 0) (= |v_#NULL.offset_32| 0) (= 9 (select |v_#length_312| 2)) (= (ite (and (<= 5 |v_ULTIMATE.start_main_~n~0#1_245|) (<= |v_ULTIMATE.start_main_~n~0#1_245| 10)) 1 0) |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_53|) (= |v_ULTIMATE.start_main_~n~0#1_245| (let ((.cse1 (mod |v_ULTIMATE.start_main_#t~nondet3#1_95| 4294967296))) (ite (<= .cse1 2147483647) .cse1 (+ .cse1 (- 4294967296))))) (= |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_~i~0#1_408| 0) (= 0 |v_ULTIMATE.start_main_~#t~1#1.offset_199|) (= |v_ULTIMATE.start_main_#in~argv#1.offset_53| |v_ULTIMATE.start_#in~argv#1.offset_40|) (= 2 (select |v_#length_312| 1)) (= (select |v_#valid_419| 2) 1) (= (store |v_#length_312| |v_ULTIMATE.start_main_~#t~1#1.base_253| 40) |v_#length_311|) (= (select |v_#valid_419| |v_ULTIMATE.start_main_~#t~1#1.base_253|) 0) (< 0 |v_#StackHeapBarrier_61|) (= (store |v_#memory_int_535| |v_~#a~0.base_227| (store ((as const (Array Int Int)) 0) |v_~#a~0.offset_222| 0)) |v_#memory_int_534|) (= 1 (select |v_#valid_419| 3)))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_40|, #StackHeapBarrier=|v_#StackHeapBarrier_61|, #valid=|v_#valid_419|, #memory_int=|v_#memory_int_535|, #length=|v_#length_312|, 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_199|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_86|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_253|, #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_408|, 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_173|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_245|, 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_311|, 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_98|, 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_227|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_108|, #NULL.base=|v_#NULL.base_32|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_127|, 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_418|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_61|, #memory_int=|v_#memory_int_534|, ~#a~0.offset=|v_~#a~0.offset_222|, ~x~0=v_~x~0_170, 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] 7357#[L702-6]don't care [661] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_354| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_161|))) (and (= (store |v_#memory_int_437| |v_ULTIMATE.start_main_~#t~1#1.base_205| (store (select |v_#memory_int_437| |v_ULTIMATE.start_main_~#t~1#1.base_205|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_107|)) |v_#memory_int_436|) (= (select |v_#valid_345| |v_ULTIMATE.start_main_~#t~1#1.base_205|) 1) (<= 0 .cse0) (< |v_ULTIMATE.start_main_~i~0#1_354| |v_ULTIMATE.start_main_~n~0#1_197|) (= |v_#pthreadsForks_83| |v_ULTIMATE.start_main_#t~pre5#1_107|) (= (+ |v_#pthreadsForks_83| 1) |v_#pthreadsForks_82|) (<= (+ .cse1 4 |v_ULTIMATE.start_main_~#t~1#1.offset_161|) (select |v_#length_261| |v_ULTIMATE.start_main_~#t~1#1.base_205|))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_354|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_161|, #pthreadsForks=|v_#pthreadsForks_83|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_197|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_205|, #valid=|v_#valid_345|, #memory_int=|v_#memory_int_437|, #length=|v_#length_261|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_107|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_354|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_161|, #pthreadsForks=|v_#pthreadsForks_82|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_197|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_205|, #valid=|v_#valid_345|, #memory_int=|v_#memory_int_436|, #length=|v_#length_261|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 7359#[L703-3]don't care [595] L703-3-->thrENTRY: Formula: (and (= v_thrThread1of3ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_76|) (= |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_76|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_76|, 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] 6939#[thrENTRY, L703-4]don't care [618] thrENTRY-->L694: Formula: (and (= |v_thrThread1of3ForFork0_#in~arg.base_5| v_thrThread1of3ForFork0_~arg.base_5) (= v_thrThread1of3ForFork0_~arg.offset_5 |v_thrThread1of3ForFork0_#in~arg.offset_5|) (= v_thrThread1of3ForFork0_~t~0_17 v_~x~0_117)) 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_117} OutVars{thrThread1of3ForFork0_#in~arg.offset=|v_thrThread1of3ForFork0_#in~arg.offset_5|, thrThread1of3ForFork0_~t~0=v_thrThread1of3ForFork0_~t~0_17, thrThread1of3ForFork0_#in~arg.base=|v_thrThread1of3ForFork0_#in~arg.base_5|, thrThread1of3ForFork0_~arg.base=v_thrThread1of3ForFork0_~arg.base_5, ~x~0=v_~x~0_117, thrThread1of3ForFork0_~arg.offset=v_thrThread1of3ForFork0_~arg.offset_5} AuxVars[] AssignedVars[thrThread1of3ForFork0_~t~0, thrThread1of3ForFork0_~arg.base, thrThread1of3ForFork0_~arg.offset] 6941#[L694, L703-4]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] 7389#[L694-1, L703-4]don't care [637] L694-1-->thrEXIT: Formula: (= (+ v_thrThread1of3ForFork0_~t~0_31 1) v_~x~0_132) InVars {thrThread1of3ForFork0_~t~0=v_thrThread1of3ForFork0_~t~0_31} OutVars{thrThread1of3ForFork0_~t~0=v_thrThread1of3ForFork0_~t~0_31, ~x~0=v_~x~0_132} AuxVars[] AssignedVars[~x~0] 7391#[thrEXIT, 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] 7503#[L703-5, thrEXIT]don't care [662] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_357| 1) |v_ULTIMATE.start_main_~i~0#1_356|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_357|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_356|, 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] 7461#[thrEXIT, 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] 7587#[thrEXIT, L705-5]don't care [632] L705-5-->L706-1: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_314| 4))) (let ((.cse1 (+ .cse0 |v_ULTIMATE.start_main_~#t~1#1.offset_139|))) (and (< |v_ULTIMATE.start_main_~i~0#1_314| |v_ULTIMATE.start_main_~n~0#1_181|) (<= (+ .cse0 4 |v_ULTIMATE.start_main_~#t~1#1.offset_139|) (select |v_#length_223| |v_ULTIMATE.start_main_~#t~1#1.base_181|)) (= (select |v_#valid_301| |v_ULTIMATE.start_main_~#t~1#1.base_181|) 1) (= (select (select |v_#memory_int_344| |v_ULTIMATE.start_main_~#t~1#1.base_181|) .cse1) |v_ULTIMATE.start_main_#t~mem8#1_76|) (<= 0 .cse1)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_314|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_139|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_181|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_181|, #valid=|v_#valid_301|, #memory_int=|v_#memory_int_344|, #length=|v_#length_223|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_314|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_76|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_139|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_181|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_181|, #valid=|v_#valid_301|, #memory_int=|v_#memory_int_344|, #length=|v_#length_223|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~mem8#1] 6729#[thrEXIT, L706-1]don't care [598] thrEXIT-->L706-2: Formula: (= v_thrThread1of3ForFork0_thidvar0_4 (let ((.cse0 (mod |v_ULTIMATE.start_main_#t~mem8#1_67| 4294967296))) (ite (<= .cse0 2147483647) .cse0 (+ .cse0 (- 4294967296))))) InVars {ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_67|, thrThread1of3ForFork0_thidvar0=v_thrThread1of3ForFork0_thidvar0_4} OutVars{ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_67|, 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_338| (+ |v_ULTIMATE.start_main_~i~0#1_339| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_339|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_338|, 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_125| 0) (= |v_ULTIMATE.start_main_~i~0#1_330| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_331| |v_ULTIMATE.start_main_~n~0#1_189|))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_331|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_189|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_330|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_125|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_189|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1] 7019#[L709-6]don't care [2022-07-22 12:14:24,356 INFO L750 eck$LassoCheckResult]: Loop: 7019#[L709-6]don't care [673] L709-6-->L709-6: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_381| 4))) (let ((.cse0 (+ .cse1 |v_~#a~0.offset_200|))) (and (= (+ (select (select |v_#memory_int_480| |v_~#a~0.base_205|) .cse0) |v_ULTIMATE.start_main_~sum~0#1_160|) |v_ULTIMATE.start_main_~sum~0#1_159|) (<= (+ .cse1 |v_~#a~0.offset_200| 4) (select |v_#length_281| |v_~#a~0.base_205|)) (<= 0 .cse0) (= (select |v_#valid_373| |v_~#a~0.base_205|) 1) (< |v_ULTIMATE.start_main_~i~0#1_381| |v_ULTIMATE.start_main_~n~0#1_219|) (= (+ |v_ULTIMATE.start_main_~i~0#1_381| 1) |v_ULTIMATE.start_main_~i~0#1_380|)))) InVars {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_160|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_219|, #valid=|v_#valid_373|, #memory_int=|v_#memory_int_480|, ~#a~0.base=|v_~#a~0.base_205|, ~#a~0.offset=|v_~#a~0.offset_200|, #length=|v_#length_281|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_380|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_159|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_219|, #valid=|v_#valid_373|, #memory_int=|v_#memory_int_480|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_68|, ~#a~0.base=|v_~#a~0.base_205|, ~#a~0.offset=|v_~#a~0.offset_200|, #length=|v_#length_281|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_98|} 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] 7019#[L709-6]don't care [2022-07-22 12:14:24,356 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:24,356 INFO L85 PathProgramCache]: Analyzing trace with hash 111023899, now seen corresponding path program 1 times [2022-07-22 12:14:24,356 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:24,357 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [919030000] [2022-07-22 12:14:24,357 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:24,357 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:24,379 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 12:14:24,406 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-22 12:14:24,406 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-22 12:14:24,406 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [919030000] [2022-07-22 12:14:24,409 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [919030000] provided 0 perfect and 1 imperfect interpolant sequences [2022-07-22 12:14:24,409 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2033915668] [2022-07-22 12:14:24,409 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:24,409 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-22 12:14:24,410 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-22 12:14:24,415 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-22 12:14:24,433 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-22 12:14:24,485 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 12:14:24,486 INFO L263 TraceCheckSpWp]: Trace formula consists of 125 conjuncts, 8 conjunts are in the unsatisfiable core [2022-07-22 12:14:24,487 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-22 12:14:24,583 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-22 12:14:24,583 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-22 12:14:24,608 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-22 12:14:24,608 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2033915668] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-22 12:14:24,608 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-07-22 12:14:24,608 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 3, 3] total 7 [2022-07-22 12:14:24,609 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [291893784] [2022-07-22 12:14:24,610 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-07-22 12:14:24,611 INFO L753 eck$LassoCheckResult]: stem already infeasible [2022-07-22 12:14:24,611 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:24,611 INFO L85 PathProgramCache]: Analyzing trace with hash 704, now seen corresponding path program 3 times [2022-07-22 12:14:24,611 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:24,612 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1654053806] [2022-07-22 12:14:24,612 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:24,613 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:24,619 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:24,619 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:14:24,622 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:24,625 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:14:24,666 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-22 12:14:24,667 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-07-22 12:14:24,667 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=30, Unknown=0, NotChecked=0, Total=56 [2022-07-22 12:14:24,667 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 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-22 12:14:24,785 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-22 12:14:24,785 INFO L93 Difference]: Finished difference Result 403 states and 1231 transitions. [2022-07-22 12:14:24,785 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 403 states and 1231 transitions. [2022-07-22 12:14:24,791 INFO L131 ngComponentsAnalysis]: Automaton has 64 accepting balls. 64 [2022-07-22 12:14:24,797 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 403 states to 403 states and 1231 transitions. [2022-07-22 12:14:24,797 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 403 [2022-07-22 12:14:24,798 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 403 [2022-07-22 12:14:24,798 INFO L73 IsDeterministic]: Start isDeterministic. Operand 403 states and 1231 transitions. [2022-07-22 12:14:24,799 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-22 12:14:24,800 INFO L220 hiAutomatonCegarLoop]: Abstraction has 403 states and 1231 transitions. [2022-07-22 12:14:24,801 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 403 states and 1231 transitions. [2022-07-22 12:14:24,811 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 403 to 403. [2022-07-22 12:14:24,812 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-22 12:14:24,815 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 403 states to 403 states and 1231 transitions. [2022-07-22 12:14:24,815 INFO L242 hiAutomatonCegarLoop]: Abstraction has 403 states and 1231 transitions. [2022-07-22 12:14:24,816 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-07-22 12:14:24,817 INFO L425 stractBuchiCegarLoop]: Abstraction has 403 states and 1231 transitions. [2022-07-22 12:14:24,817 INFO L332 stractBuchiCegarLoop]: ======== Iteration 4 ============ [2022-07-22 12:14:24,817 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 403 states and 1231 transitions. [2022-07-22 12:14:24,821 INFO L131 ngComponentsAnalysis]: Automaton has 64 accepting balls. 64 [2022-07-22 12:14:24,821 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:14:24,821 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:14:24,822 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [4, 3, 3, 1, 1, 1, 1, 1] [2022-07-22 12:14:24,822 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:14:24,823 INFO L748 eck$LassoCheckResult]: Stem: 8995#[ULTIMATE.startENTRY]don't care [685] ULTIMATE.startENTRY-->L702-6: Formula: (let ((.cse0 (select |v_#memory_int_535| 1))) (and (= |v_ULTIMATE.start_main_#in~argv#1.offset_53| |v_ULTIMATE.start_main_~argv#1.offset_53|) (= 1 (select |v_#valid_419| 1)) (= (select .cse0 0) 48) (= (select .cse0 1) 0) (= |v_ULTIMATE.start_#in~argv#1.base_40| |v_ULTIMATE.start_main_#in~argv#1.base_53|) (= |v_~#a~0.offset_222| 0) (= |v_ULTIMATE.start_main_#in~argv#1.base_53| |v_ULTIMATE.start_main_~argv#1.base_53|) (= 40 (select |v_#length_312| 3)) (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_69| 0)) (= 3 |v_~#a~0.base_227|) (= (store |v_#valid_419| |v_ULTIMATE.start_main_~#t~1#1.base_253| 1) |v_#valid_418|) (= v_~x~0_170 0) (= |v_ULTIMATE.start_#in~argc#1_40| |v_ULTIMATE.start_main_#in~argc#1_51|) (< |v_#StackHeapBarrier_61| |v_ULTIMATE.start_main_~#t~1#1.base_253|) (= |v_#NULL.base_32| 0) (= |v_ULTIMATE.start_main_~argc#1_49| |v_ULTIMATE.start_main_#in~argc#1_51|) (= (select |v_#valid_419| 0) 0) (= |v_#NULL.offset_32| 0) (= 9 (select |v_#length_312| 2)) (= (ite (and (<= 5 |v_ULTIMATE.start_main_~n~0#1_245|) (<= |v_ULTIMATE.start_main_~n~0#1_245| 10)) 1 0) |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_53|) (= |v_ULTIMATE.start_main_~n~0#1_245| (let ((.cse1 (mod |v_ULTIMATE.start_main_#t~nondet3#1_95| 4294967296))) (ite (<= .cse1 2147483647) .cse1 (+ .cse1 (- 4294967296))))) (= |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_~i~0#1_408| 0) (= 0 |v_ULTIMATE.start_main_~#t~1#1.offset_199|) (= |v_ULTIMATE.start_main_#in~argv#1.offset_53| |v_ULTIMATE.start_#in~argv#1.offset_40|) (= 2 (select |v_#length_312| 1)) (= (select |v_#valid_419| 2) 1) (= (store |v_#length_312| |v_ULTIMATE.start_main_~#t~1#1.base_253| 40) |v_#length_311|) (= (select |v_#valid_419| |v_ULTIMATE.start_main_~#t~1#1.base_253|) 0) (< 0 |v_#StackHeapBarrier_61|) (= (store |v_#memory_int_535| |v_~#a~0.base_227| (store ((as const (Array Int Int)) 0) |v_~#a~0.offset_222| 0)) |v_#memory_int_534|) (= 1 (select |v_#valid_419| 3)))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_40|, #StackHeapBarrier=|v_#StackHeapBarrier_61|, #valid=|v_#valid_419|, #memory_int=|v_#memory_int_535|, #length=|v_#length_312|, 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_199|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_86|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_253|, #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_408|, 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_173|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_245|, 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_311|, 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_98|, 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_227|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_108|, #NULL.base=|v_#NULL.base_32|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_127|, 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_418|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_61|, #memory_int=|v_#memory_int_534|, ~#a~0.offset=|v_~#a~0.offset_222|, ~x~0=v_~x~0_170, 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 ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_354| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_161|))) (and (= (store |v_#memory_int_437| |v_ULTIMATE.start_main_~#t~1#1.base_205| (store (select |v_#memory_int_437| |v_ULTIMATE.start_main_~#t~1#1.base_205|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_107|)) |v_#memory_int_436|) (= (select |v_#valid_345| |v_ULTIMATE.start_main_~#t~1#1.base_205|) 1) (<= 0 .cse0) (< |v_ULTIMATE.start_main_~i~0#1_354| |v_ULTIMATE.start_main_~n~0#1_197|) (= |v_#pthreadsForks_83| |v_ULTIMATE.start_main_#t~pre5#1_107|) (= (+ |v_#pthreadsForks_83| 1) |v_#pthreadsForks_82|) (<= (+ .cse1 4 |v_ULTIMATE.start_main_~#t~1#1.offset_161|) (select |v_#length_261| |v_ULTIMATE.start_main_~#t~1#1.base_205|))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_354|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_161|, #pthreadsForks=|v_#pthreadsForks_83|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_197|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_205|, #valid=|v_#valid_345|, #memory_int=|v_#memory_int_437|, #length=|v_#length_261|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_107|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_354|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_161|, #pthreadsForks=|v_#pthreadsForks_82|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_197|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_205|, #valid=|v_#valid_345|, #memory_int=|v_#memory_int_436|, #length=|v_#length_261|} 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_76|) (= |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_76|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_76|, 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#[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] 8907#[L703-5, thrENTRY]don't care [662] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_357| 1) |v_ULTIMATE.start_main_~i~0#1_356|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_357|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_356|, 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#[thrENTRY, L702-6]don't care [661] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_354| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_161|))) (and (= (store |v_#memory_int_437| |v_ULTIMATE.start_main_~#t~1#1.base_205| (store (select |v_#memory_int_437| |v_ULTIMATE.start_main_~#t~1#1.base_205|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_107|)) |v_#memory_int_436|) (= (select |v_#valid_345| |v_ULTIMATE.start_main_~#t~1#1.base_205|) 1) (<= 0 .cse0) (< |v_ULTIMATE.start_main_~i~0#1_354| |v_ULTIMATE.start_main_~n~0#1_197|) (= |v_#pthreadsForks_83| |v_ULTIMATE.start_main_#t~pre5#1_107|) (= (+ |v_#pthreadsForks_83| 1) |v_#pthreadsForks_82|) (<= (+ .cse1 4 |v_ULTIMATE.start_main_~#t~1#1.offset_161|) (select |v_#length_261| |v_ULTIMATE.start_main_~#t~1#1.base_205|))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_354|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_161|, #pthreadsForks=|v_#pthreadsForks_83|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_197|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_205|, #valid=|v_#valid_345|, #memory_int=|v_#memory_int_437|, #length=|v_#length_261|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_107|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_354|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_161|, #pthreadsForks=|v_#pthreadsForks_82|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_197|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_205|, #valid=|v_#valid_345|, #memory_int=|v_#memory_int_436|, #length=|v_#length_261|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 8755#[thrENTRY, L703-3]don't care [596] L703-3-->thrENTRY: Formula: (and (= v_thrThread2of3ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_78|) (= |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_78|} OutVars{thrThread2of3ForFork0_#res.offset=|v_thrThread2of3ForFork0_#res.offset_2|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_78|, 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_357| 1) |v_ULTIMATE.start_main_~i~0#1_356|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_357|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_356|, 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#[L702-6, thrENTRY, thrENTRY]don't care [661] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_354| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_161|))) (and (= (store |v_#memory_int_437| |v_ULTIMATE.start_main_~#t~1#1.base_205| (store (select |v_#memory_int_437| |v_ULTIMATE.start_main_~#t~1#1.base_205|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_107|)) |v_#memory_int_436|) (= (select |v_#valid_345| |v_ULTIMATE.start_main_~#t~1#1.base_205|) 1) (<= 0 .cse0) (< |v_ULTIMATE.start_main_~i~0#1_354| |v_ULTIMATE.start_main_~n~0#1_197|) (= |v_#pthreadsForks_83| |v_ULTIMATE.start_main_#t~pre5#1_107|) (= (+ |v_#pthreadsForks_83| 1) |v_#pthreadsForks_82|) (<= (+ .cse1 4 |v_ULTIMATE.start_main_~#t~1#1.offset_161|) (select |v_#length_261| |v_ULTIMATE.start_main_~#t~1#1.base_205|))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_354|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_161|, #pthreadsForks=|v_#pthreadsForks_83|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_197|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_205|, #valid=|v_#valid_345|, #memory_int=|v_#memory_int_437|, #length=|v_#length_261|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_107|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_354|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_161|, #pthreadsForks=|v_#pthreadsForks_82|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_197|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_205|, #valid=|v_#valid_345|, #memory_int=|v_#memory_int_436|, #length=|v_#length_261|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 8621#[thrENTRY, thrENTRY, L703-3]don't care [597] L703-3-->thrENTRY: Formula: (and (= v_thrThread3of3ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_80|) (= |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_80|} OutVars{thrThread3of3ForFork0_#res.base=|v_thrThread3of3ForFork0_#res.base_2|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_80|, 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_357| 1) |v_ULTIMATE.start_main_~i~0#1_356|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_357|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_356|, 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 ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_354| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_161|))) (and (= (store |v_#memory_int_437| |v_ULTIMATE.start_main_~#t~1#1.base_205| (store (select |v_#memory_int_437| |v_ULTIMATE.start_main_~#t~1#1.base_205|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_107|)) |v_#memory_int_436|) (= (select |v_#valid_345| |v_ULTIMATE.start_main_~#t~1#1.base_205|) 1) (<= 0 .cse0) (< |v_ULTIMATE.start_main_~i~0#1_354| |v_ULTIMATE.start_main_~n~0#1_197|) (= |v_#pthreadsForks_83| |v_ULTIMATE.start_main_#t~pre5#1_107|) (= (+ |v_#pthreadsForks_83| 1) |v_#pthreadsForks_82|) (<= (+ .cse1 4 |v_ULTIMATE.start_main_~#t~1#1.offset_161|) (select |v_#length_261| |v_ULTIMATE.start_main_~#t~1#1.base_205|))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_354|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_161|, #pthreadsForks=|v_#pthreadsForks_83|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_197|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_205|, #valid=|v_#valid_345|, #memory_int=|v_#memory_int_437|, #length=|v_#length_261|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_107|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_354|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_161|, #pthreadsForks=|v_#pthreadsForks_82|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_197|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_205|, #valid=|v_#valid_345|, #memory_int=|v_#memory_int_436|, #length=|v_#length_261|} 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-22 12:14:24,823 INFO L750 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-22 12:14:24,824 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:24,824 INFO L85 PathProgramCache]: Analyzing trace with hash -190037168, now seen corresponding path program 1 times [2022-07-22 12:14:24,824 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:24,824 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1961458457] [2022-07-22 12:14:24,824 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:24,825 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:24,848 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:24,848 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:14:24,866 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:24,873 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:14:24,874 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:24,874 INFO L85 PathProgramCache]: Analyzing trace with hash 625, now seen corresponding path program 1 times [2022-07-22 12:14:24,875 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:24,875 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [166578950] [2022-07-22 12:14:24,875 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:24,875 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:24,879 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:24,879 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:14:24,880 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:24,882 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:14:24,883 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:24,883 INFO L85 PathProgramCache]: Analyzing trace with hash -1596184318, now seen corresponding path program 1 times [2022-07-22 12:14:24,883 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:24,883 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [880581069] [2022-07-22 12:14:24,884 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:24,884 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:24,905 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:24,905 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:14:24,919 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:24,925 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:14:26,522 WARN L146 chiAutomizerObserver]: 3 thread instances were not sufficient, I will increase this number and restart the analysis [2022-07-22 12:14:26,548 INFO L144 ThreadInstanceAdder]: Constructed 4 joinOtherThreadTransitions. [2022-07-22 12:14:26,552 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 107 places, 109 transitions, 262 flow [2022-07-22 12:14:26,669 INFO L129 PetriNetUnfolder]: 92/686 cut-off events. [2022-07-22 12:14:26,669 INFO L130 PetriNetUnfolder]: For 48/48 co-relation queries the response was YES. [2022-07-22 12:14:26,672 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-22 12:14:26,673 INFO L82 GeneralOperation]: Start removeDead. Operand has 107 places, 109 transitions, 262 flow [2022-07-22 12:14:26,686 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 107 places, 109 transitions, 262 flow [2022-07-22 12:14:26,686 INFO L115 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-07-22 12:14:26,686 INFO L131 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 107 places, 109 transitions, 262 flow [2022-07-22 12:14:26,687 INFO L110 LiptonReduction]: Starting Lipton reduction on Petri net that has 107 places, 109 transitions, 262 flow [2022-07-22 12:14:26,687 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 107 places, 109 transitions, 262 flow [2022-07-22 12:14:26,782 INFO L129 PetriNetUnfolder]: 92/686 cut-off events. [2022-07-22 12:14:26,783 INFO L130 PetriNetUnfolder]: For 48/48 co-relation queries the response was YES. [2022-07-22 12:14:26,785 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-22 12:14:26,797 INFO L116 LiptonReduction]: Number of co-enabled transitions 2400 [2022-07-22 12:14:29,496 INFO L131 LiptonReduction]: Checked pairs total: 8421 [2022-07-22 12:14:29,496 INFO L133 LiptonReduction]: Total number of compositions: 89 [2022-07-22 12:14:29,498 INFO L300 stractBuchiCegarLoop]: Interprodecural is true [2022-07-22 12:14:29,498 INFO L301 stractBuchiCegarLoop]: Hoare is false [2022-07-22 12:14:29,498 INFO L302 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2022-07-22 12:14:29,498 INFO L303 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2022-07-22 12:14:29,498 INFO L304 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2022-07-22 12:14:29,498 INFO L305 stractBuchiCegarLoop]: Difference is false [2022-07-22 12:14:29,498 INFO L306 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2022-07-22 12:14:29,499 INFO L310 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2022-07-22 12:14:29,499 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 0 states, but on-demand construction may add more states [2022-07-22 12:14:30,036 INFO L131 ngComponentsAnalysis]: Automaton has 881 accepting balls. 881 [2022-07-22 12:14:30,036 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:14:30,036 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:14:30,037 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2022-07-22 12:14:30,037 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:14:30,037 INFO L332 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2022-07-22 12:14:30,037 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 4856 states, but on-demand construction may add more states [2022-07-22 12:14:30,141 INFO L131 ngComponentsAnalysis]: Automaton has 881 accepting balls. 881 [2022-07-22 12:14:30,142 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:14:30,142 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:14:30,143 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2022-07-22 12:14:30,143 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:14:30,144 INFO L748 eck$LassoCheckResult]: Stem: 110#[ULTIMATE.startENTRY]don't care [890] ULTIMATE.startENTRY-->L702-6: Formula: (let ((.cse1 (select |v_#memory_int_827| 1))) (and (= |v_ULTIMATE.start_main_#in~argv#1.base_76| |v_ULTIMATE.start_main_~argv#1.base_74|) (= v_~x~0_259 0) (= (select |v_#valid_642| |v_ULTIMATE.start_main_~#t~1#1.base_356|) 0) (= |v_#NULL.offset_37| 0) (= 40 (select |v_#length_479| 3)) (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_98| |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_76|) (= 2 (select |v_#length_479| 1)) (= (select |v_#valid_642| 1) 1) (= |v_ULTIMATE.start_main_#in~argv#1.offset_76| |v_ULTIMATE.start_main_~argv#1.offset_74|) (= 3 |v_~#a~0.base_353|) (= |v_#NULL.base_37| 0) (= (select |v_#valid_642| 3) 1) (= |v_ULTIMATE.start_main_~argc#1_70| |v_ULTIMATE.start_main_#in~argc#1_74|) (= |v_ULTIMATE.start_#in~argv#1.base_51| |v_ULTIMATE.start_main_#in~argv#1.base_76|) (= (select |v_#valid_642| 2) 1) (= 9 (select |v_#length_479| 2)) (= |v_ULTIMATE.start_main_~n~0#1_349| (let ((.cse0 (mod |v_ULTIMATE.start_main_#t~nondet3#1_142| 4294967296))) (ite (<= .cse0 2147483647) .cse0 (+ .cse0 (- 4294967296))))) (= (select |v_#valid_642| 0) 0) (= (store |v_#memory_int_827| |v_~#a~0.base_353| (store ((as const (Array Int Int)) 0) |v_~#a~0.offset_348| 0)) |v_#memory_int_826|) (< 0 |v_#StackHeapBarrier_88|) (= |v_ULTIMATE.start_main_#in~argv#1.offset_76| |v_ULTIMATE.start_#in~argv#1.offset_51|) (= |v_ULTIMATE.start_#in~argc#1_51| |v_ULTIMATE.start_main_#in~argc#1_74|) (< |v_#StackHeapBarrier_88| |v_ULTIMATE.start_main_~#t~1#1.base_356|) (= 0 |v_ULTIMATE.start_main_~#t~1#1.offset_274|) (= (select .cse1 0) 48) (= (ite (and (<= 5 |v_ULTIMATE.start_main_~n~0#1_349|) (<= |v_ULTIMATE.start_main_~n~0#1_349| 10)) 1 0) |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_76|) (= (store |v_#length_479| |v_ULTIMATE.start_main_~#t~1#1.base_356| 40) |v_#length_478|) (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_98| 0)) (= (select .cse1 1) 0) (= |v_ULTIMATE.start_main_~i~0#1_571| 0) (= |v_#valid_641| (store |v_#valid_642| |v_ULTIMATE.start_main_~#t~1#1.base_356| 1)) (= |v_~#a~0.offset_348| 0))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_51|, #StackHeapBarrier=|v_#StackHeapBarrier_88|, #valid=|v_#valid_642|, #memory_int=|v_#memory_int_827|, #length=|v_#length_479|, 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_274|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_131|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_356|, #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_571|, 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_234|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_349|, 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_478|, 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_169|, 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_353|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_166|, #NULL.base=|v_#NULL.base_37|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_171|, 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_641|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_87|, #memory_int=|v_#memory_int_826|, ~#a~0.offset=|v_~#a~0.offset_348|, ~x~0=v_~x~0_259, 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_192| 0) (= |v_ULTIMATE.start_main_~i~0#1_489| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_490| |v_ULTIMATE.start_main_~n~0#1_285|))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_490|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_285|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_489|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_192|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_285|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1] 121#[L709-6]don't care [2022-07-22 12:14:30,144 INFO L750 eck$LassoCheckResult]: Loop: 121#[L709-6]don't care [869] L709-6-->L709-6: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_524| 4))) (let ((.cse1 (+ |v_~#a~0.offset_300| .cse0))) (and (= (select |v_#valid_529| |v_~#a~0.base_305|) 1) (= (+ |v_ULTIMATE.start_main_~i~0#1_524| 1) |v_ULTIMATE.start_main_~i~0#1_523|) (<= (+ |v_~#a~0.offset_300| .cse0 4) (select |v_#length_412| |v_~#a~0.base_305|)) (= (+ |v_ULTIMATE.start_main_~sum~0#1_205| (select (select |v_#memory_int_732| |v_~#a~0.base_305|) .cse1)) |v_ULTIMATE.start_main_~sum~0#1_204|) (< |v_ULTIMATE.start_main_~i~0#1_524| |v_ULTIMATE.start_main_~n~0#1_307|) (<= 0 .cse1)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_524|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_205|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_307|, #valid=|v_#valid_529|, #memory_int=|v_#memory_int_732|, ~#a~0.base=|v_~#a~0.base_305|, ~#a~0.offset=|v_~#a~0.offset_300|, #length=|v_#length_412|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_523|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_204|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_307|, #valid=|v_#valid_529|, #memory_int=|v_#memory_int_732|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_96|, ~#a~0.base=|v_~#a~0.base_305|, ~#a~0.offset=|v_~#a~0.offset_300|, #length=|v_#length_412|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_152|} 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-22 12:14:30,145 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:30,145 INFO L85 PathProgramCache]: Analyzing trace with hash 912227, now seen corresponding path program 1 times [2022-07-22 12:14:30,145 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:30,145 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2008511822] [2022-07-22 12:14:30,146 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:30,147 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:30,165 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 12:14:30,181 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-22 12:14:30,182 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-22 12:14:30,182 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2008511822] [2022-07-22 12:14:30,182 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2008511822] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-22 12:14:30,182 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-22 12:14:30,182 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-07-22 12:14:30,184 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [856102762] [2022-07-22 12:14:30,184 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-22 12:14:30,184 INFO L753 eck$LassoCheckResult]: stem already infeasible [2022-07-22 12:14:30,185 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:30,185 INFO L85 PathProgramCache]: Analyzing trace with hash 900, now seen corresponding path program 1 times [2022-07-22 12:14:30,185 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:30,185 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [260712616] [2022-07-22 12:14:30,185 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:30,185 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:30,193 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:30,194 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:14:30,196 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:30,198 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:14:30,234 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-22 12:14:30,235 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-07-22 12:14:30,235 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-07-22 12:14:30,235 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-22 12:14:30,349 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-22 12:14:30,349 INFO L93 Difference]: Finished difference Result 4857 states and 17685 transitions. [2022-07-22 12:14:30,350 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 4857 states and 17685 transitions. [2022-07-22 12:14:30,435 INFO L131 ngComponentsAnalysis]: Automaton has 881 accepting balls. 881 [2022-07-22 12:14:30,576 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 4857 states to 4231 states and 15559 transitions. [2022-07-22 12:14:30,577 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 4231 [2022-07-22 12:14:30,591 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 4231 [2022-07-22 12:14:30,591 INFO L73 IsDeterministic]: Start isDeterministic. Operand 4231 states and 15559 transitions. [2022-07-22 12:14:30,605 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-22 12:14:30,606 INFO L220 hiAutomatonCegarLoop]: Abstraction has 4231 states and 15559 transitions. [2022-07-22 12:14:30,626 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 4231 states and 15559 transitions. [2022-07-22 12:14:30,754 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 4231 to 4231. [2022-07-22 12:14:30,774 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-22 12:14:30,800 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4231 states to 4231 states and 15559 transitions. [2022-07-22 12:14:30,800 INFO L242 hiAutomatonCegarLoop]: Abstraction has 4231 states and 15559 transitions. [2022-07-22 12:14:30,800 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-07-22 12:14:30,802 INFO L425 stractBuchiCegarLoop]: Abstraction has 4231 states and 15559 transitions. [2022-07-22 12:14:30,803 INFO L332 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2022-07-22 12:14:30,803 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 4231 states and 15559 transitions. [2022-07-22 12:14:30,849 INFO L131 ngComponentsAnalysis]: Automaton has 881 accepting balls. 881 [2022-07-22 12:14:30,850 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:14:30,850 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:14:30,851 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1] [2022-07-22 12:14:30,851 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:14:30,851 INFO L748 eck$LassoCheckResult]: Stem: 22974#[ULTIMATE.startENTRY]don't care [890] ULTIMATE.startENTRY-->L702-6: Formula: (let ((.cse1 (select |v_#memory_int_827| 1))) (and (= |v_ULTIMATE.start_main_#in~argv#1.base_76| |v_ULTIMATE.start_main_~argv#1.base_74|) (= v_~x~0_259 0) (= (select |v_#valid_642| |v_ULTIMATE.start_main_~#t~1#1.base_356|) 0) (= |v_#NULL.offset_37| 0) (= 40 (select |v_#length_479| 3)) (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_98| |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_76|) (= 2 (select |v_#length_479| 1)) (= (select |v_#valid_642| 1) 1) (= |v_ULTIMATE.start_main_#in~argv#1.offset_76| |v_ULTIMATE.start_main_~argv#1.offset_74|) (= 3 |v_~#a~0.base_353|) (= |v_#NULL.base_37| 0) (= (select |v_#valid_642| 3) 1) (= |v_ULTIMATE.start_main_~argc#1_70| |v_ULTIMATE.start_main_#in~argc#1_74|) (= |v_ULTIMATE.start_#in~argv#1.base_51| |v_ULTIMATE.start_main_#in~argv#1.base_76|) (= (select |v_#valid_642| 2) 1) (= 9 (select |v_#length_479| 2)) (= |v_ULTIMATE.start_main_~n~0#1_349| (let ((.cse0 (mod |v_ULTIMATE.start_main_#t~nondet3#1_142| 4294967296))) (ite (<= .cse0 2147483647) .cse0 (+ .cse0 (- 4294967296))))) (= (select |v_#valid_642| 0) 0) (= (store |v_#memory_int_827| |v_~#a~0.base_353| (store ((as const (Array Int Int)) 0) |v_~#a~0.offset_348| 0)) |v_#memory_int_826|) (< 0 |v_#StackHeapBarrier_88|) (= |v_ULTIMATE.start_main_#in~argv#1.offset_76| |v_ULTIMATE.start_#in~argv#1.offset_51|) (= |v_ULTIMATE.start_#in~argc#1_51| |v_ULTIMATE.start_main_#in~argc#1_74|) (< |v_#StackHeapBarrier_88| |v_ULTIMATE.start_main_~#t~1#1.base_356|) (= 0 |v_ULTIMATE.start_main_~#t~1#1.offset_274|) (= (select .cse1 0) 48) (= (ite (and (<= 5 |v_ULTIMATE.start_main_~n~0#1_349|) (<= |v_ULTIMATE.start_main_~n~0#1_349| 10)) 1 0) |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_76|) (= (store |v_#length_479| |v_ULTIMATE.start_main_~#t~1#1.base_356| 40) |v_#length_478|) (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_98| 0)) (= (select .cse1 1) 0) (= |v_ULTIMATE.start_main_~i~0#1_571| 0) (= |v_#valid_641| (store |v_#valid_642| |v_ULTIMATE.start_main_~#t~1#1.base_356| 1)) (= |v_~#a~0.offset_348| 0))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_51|, #StackHeapBarrier=|v_#StackHeapBarrier_88|, #valid=|v_#valid_642|, #memory_int=|v_#memory_int_827|, #length=|v_#length_479|, 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_274|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_131|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_356|, #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_571|, 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_234|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_349|, 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_478|, 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_169|, 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_353|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_166|, #NULL.base=|v_#NULL.base_37|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_171|, 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_641|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_87|, #memory_int=|v_#memory_int_826|, ~#a~0.offset=|v_~#a~0.offset_348|, ~x~0=v_~x~0_259, 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 ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_475| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_214|))) (and (= (store |v_#memory_int_647| |v_ULTIMATE.start_main_~#t~1#1.base_270| (store (select |v_#memory_int_647| |v_ULTIMATE.start_main_~#t~1#1.base_270|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_157|)) |v_#memory_int_646|) (<= 0 .cse0) (< |v_ULTIMATE.start_main_~i~0#1_475| |v_ULTIMATE.start_main_~n~0#1_275|) (= (select |v_#valid_483| |v_ULTIMATE.start_main_~#t~1#1.base_270|) 1) (<= (+ .cse1 4 |v_ULTIMATE.start_main_~#t~1#1.offset_214|) (select |v_#length_370| |v_ULTIMATE.start_main_~#t~1#1.base_270|)) (= (+ |v_#pthreadsForks_124| 1) |v_#pthreadsForks_123|) (= |v_ULTIMATE.start_main_#t~pre5#1_157| |v_#pthreadsForks_124|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_475|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_214|, #pthreadsForks=|v_#pthreadsForks_124|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_275|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_270|, #valid=|v_#valid_483|, #memory_int=|v_#memory_int_647|, #length=|v_#length_370|} 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_475|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_214|, #pthreadsForks=|v_#pthreadsForks_123|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_275|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_270|, #valid=|v_#valid_483|, #memory_int=|v_#memory_int_646|, #length=|v_#length_370|} 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_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_142|) (= |v_thrThread1of4ForFork0_#in~arg.base_4| 0) (= |v_thrThread1of4ForFork0_#in~arg.offset_4| 0)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_142|} OutVars{thrThread1of4ForFork0_~arg.base=v_thrThread1of4ForFork0_~arg.base_4, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_142|, 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#[thrENTRY, L703-4]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#[thrENTRY, L703-5]don't care [857] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_486| 1) |v_ULTIMATE.start_main_~i~0#1_485|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_486|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_485|, 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#[thrENTRY, 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] 22906#[thrENTRY, L705-5]don't care [858] L705-5-->L709-6: Formula: (and (= |v_ULTIMATE.start_main_~sum~0#1_192| 0) (= |v_ULTIMATE.start_main_~i~0#1_489| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_490| |v_ULTIMATE.start_main_~n~0#1_285|))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_490|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_285|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_489|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_192|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_285|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1] 15314#[thrENTRY, L709-6]don't care [2022-07-22 12:14:30,852 INFO L750 eck$LassoCheckResult]: Loop: 15314#[thrENTRY, L709-6]don't care [869] L709-6-->L709-6: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_524| 4))) (let ((.cse1 (+ |v_~#a~0.offset_300| .cse0))) (and (= (select |v_#valid_529| |v_~#a~0.base_305|) 1) (= (+ |v_ULTIMATE.start_main_~i~0#1_524| 1) |v_ULTIMATE.start_main_~i~0#1_523|) (<= (+ |v_~#a~0.offset_300| .cse0 4) (select |v_#length_412| |v_~#a~0.base_305|)) (= (+ |v_ULTIMATE.start_main_~sum~0#1_205| (select (select |v_#memory_int_732| |v_~#a~0.base_305|) .cse1)) |v_ULTIMATE.start_main_~sum~0#1_204|) (< |v_ULTIMATE.start_main_~i~0#1_524| |v_ULTIMATE.start_main_~n~0#1_307|) (<= 0 .cse1)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_524|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_205|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_307|, #valid=|v_#valid_529|, #memory_int=|v_#memory_int_732|, ~#a~0.base=|v_~#a~0.base_305|, ~#a~0.offset=|v_~#a~0.offset_300|, #length=|v_#length_412|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_523|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_204|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_307|, #valid=|v_#valid_529|, #memory_int=|v_#memory_int_732|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_96|, ~#a~0.base=|v_~#a~0.base_305|, ~#a~0.offset=|v_~#a~0.offset_300|, #length=|v_#length_412|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_152|} 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#[thrENTRY, L709-6]don't care [2022-07-22 12:14:30,852 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:30,852 INFO L85 PathProgramCache]: Analyzing trace with hash 782617921, now seen corresponding path program 1 times [2022-07-22 12:14:30,852 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:30,853 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1709127477] [2022-07-22 12:14:30,853 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:30,853 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:30,864 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 12:14:30,893 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-22 12:14:30,893 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-22 12:14:30,896 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1709127477] [2022-07-22 12:14:30,897 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1709127477] provided 0 perfect and 1 imperfect interpolant sequences [2022-07-22 12:14:30,897 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [463806680] [2022-07-22 12:14:30,897 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:30,897 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-22 12:14:30,897 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-22 12:14:30,905 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-22 12:14:30,906 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-22 12:14:30,968 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 12:14:30,969 INFO L263 TraceCheckSpWp]: Trace formula consists of 97 conjuncts, 4 conjunts are in the unsatisfiable core [2022-07-22 12:14:30,970 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-22 12:14:30,990 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-22 12:14:30,990 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-22 12:14:31,006 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-22 12:14:31,007 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [463806680] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-22 12:14:31,007 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-07-22 12:14:31,007 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 3, 3] total 5 [2022-07-22 12:14:31,007 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1427207815] [2022-07-22 12:14:31,008 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-07-22 12:14:31,008 INFO L753 eck$LassoCheckResult]: stem already infeasible [2022-07-22 12:14:31,011 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:31,011 INFO L85 PathProgramCache]: Analyzing trace with hash 900, now seen corresponding path program 2 times [2022-07-22 12:14:31,011 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:31,012 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [301244414] [2022-07-22 12:14:31,012 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:31,012 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:31,017 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:31,017 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:14:31,020 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:31,022 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:14:31,054 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-22 12:14:31,055 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-07-22 12:14:31,055 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=25, Unknown=0, NotChecked=0, Total=42 [2022-07-22 12:14:31,056 INFO L87 Difference]: Start difference. First operand 4231 states and 15559 transitions. cyclomatic complexity: 12209 Second operand has 7 states, 6 states have (on average 1.8333333333333333) internal successors, (11), 6 states have internal predecessors, (11), 0 states have call successors, (0), 0 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-22 12:14:31,220 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-22 12:14:31,220 INFO L93 Difference]: Finished difference Result 4626 states and 16133 transitions. [2022-07-22 12:14:31,220 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 4626 states and 16133 transitions. [2022-07-22 12:14:31,391 INFO L131 ngComponentsAnalysis]: Automaton has 625 accepting balls. 625 [2022-07-22 12:14:31,473 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 4626 states to 4626 states and 16133 transitions. [2022-07-22 12:14:31,473 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 4626 [2022-07-22 12:14:31,486 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 4626 [2022-07-22 12:14:31,487 INFO L73 IsDeterministic]: Start isDeterministic. Operand 4626 states and 16133 transitions. [2022-07-22 12:14:31,502 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-22 12:14:31,502 INFO L220 hiAutomatonCegarLoop]: Abstraction has 4626 states and 16133 transitions. [2022-07-22 12:14:31,519 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 4626 states and 16133 transitions. [2022-07-22 12:14:31,641 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 4626 to 4059. [2022-07-22 12:14:31,659 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-22 12:14:31,684 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4059 states to 4059 states and 14534 transitions. [2022-07-22 12:14:31,684 INFO L242 hiAutomatonCegarLoop]: Abstraction has 4059 states and 14534 transitions. [2022-07-22 12:14:31,685 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-07-22 12:14:31,685 INFO L425 stractBuchiCegarLoop]: Abstraction has 4059 states and 14534 transitions. [2022-07-22 12:14:31,686 INFO L332 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2022-07-22 12:14:31,686 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 4059 states and 14534 transitions. [2022-07-22 12:14:31,802 INFO L131 ngComponentsAnalysis]: Automaton has 625 accepting balls. 625 [2022-07-22 12:14:31,802 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:14:31,802 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:14:31,804 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-22 12:14:31,804 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:14:31,805 INFO L748 eck$LassoCheckResult]: Stem: 35702#[ULTIMATE.startENTRY]don't care [890] ULTIMATE.startENTRY-->L702-6: Formula: (let ((.cse1 (select |v_#memory_int_827| 1))) (and (= |v_ULTIMATE.start_main_#in~argv#1.base_76| |v_ULTIMATE.start_main_~argv#1.base_74|) (= v_~x~0_259 0) (= (select |v_#valid_642| |v_ULTIMATE.start_main_~#t~1#1.base_356|) 0) (= |v_#NULL.offset_37| 0) (= 40 (select |v_#length_479| 3)) (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_98| |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_76|) (= 2 (select |v_#length_479| 1)) (= (select |v_#valid_642| 1) 1) (= |v_ULTIMATE.start_main_#in~argv#1.offset_76| |v_ULTIMATE.start_main_~argv#1.offset_74|) (= 3 |v_~#a~0.base_353|) (= |v_#NULL.base_37| 0) (= (select |v_#valid_642| 3) 1) (= |v_ULTIMATE.start_main_~argc#1_70| |v_ULTIMATE.start_main_#in~argc#1_74|) (= |v_ULTIMATE.start_#in~argv#1.base_51| |v_ULTIMATE.start_main_#in~argv#1.base_76|) (= (select |v_#valid_642| 2) 1) (= 9 (select |v_#length_479| 2)) (= |v_ULTIMATE.start_main_~n~0#1_349| (let ((.cse0 (mod |v_ULTIMATE.start_main_#t~nondet3#1_142| 4294967296))) (ite (<= .cse0 2147483647) .cse0 (+ .cse0 (- 4294967296))))) (= (select |v_#valid_642| 0) 0) (= (store |v_#memory_int_827| |v_~#a~0.base_353| (store ((as const (Array Int Int)) 0) |v_~#a~0.offset_348| 0)) |v_#memory_int_826|) (< 0 |v_#StackHeapBarrier_88|) (= |v_ULTIMATE.start_main_#in~argv#1.offset_76| |v_ULTIMATE.start_#in~argv#1.offset_51|) (= |v_ULTIMATE.start_#in~argc#1_51| |v_ULTIMATE.start_main_#in~argc#1_74|) (< |v_#StackHeapBarrier_88| |v_ULTIMATE.start_main_~#t~1#1.base_356|) (= 0 |v_ULTIMATE.start_main_~#t~1#1.offset_274|) (= (select .cse1 0) 48) (= (ite (and (<= 5 |v_ULTIMATE.start_main_~n~0#1_349|) (<= |v_ULTIMATE.start_main_~n~0#1_349| 10)) 1 0) |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_76|) (= (store |v_#length_479| |v_ULTIMATE.start_main_~#t~1#1.base_356| 40) |v_#length_478|) (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_98| 0)) (= (select .cse1 1) 0) (= |v_ULTIMATE.start_main_~i~0#1_571| 0) (= |v_#valid_641| (store |v_#valid_642| |v_ULTIMATE.start_main_~#t~1#1.base_356| 1)) (= |v_~#a~0.offset_348| 0))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_51|, #StackHeapBarrier=|v_#StackHeapBarrier_88|, #valid=|v_#valid_642|, #memory_int=|v_#memory_int_827|, #length=|v_#length_479|, 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_274|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_131|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_356|, #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_571|, 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_234|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_349|, 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_478|, 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_169|, 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_353|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_166|, #NULL.base=|v_#NULL.base_37|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_171|, 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_641|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_87|, #memory_int=|v_#memory_int_826|, ~#a~0.offset=|v_~#a~0.offset_348|, ~x~0=v_~x~0_259, 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] 35704#[L702-6]don't care [854] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_475| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_214|))) (and (= (store |v_#memory_int_647| |v_ULTIMATE.start_main_~#t~1#1.base_270| (store (select |v_#memory_int_647| |v_ULTIMATE.start_main_~#t~1#1.base_270|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_157|)) |v_#memory_int_646|) (<= 0 .cse0) (< |v_ULTIMATE.start_main_~i~0#1_475| |v_ULTIMATE.start_main_~n~0#1_275|) (= (select |v_#valid_483| |v_ULTIMATE.start_main_~#t~1#1.base_270|) 1) (<= (+ .cse1 4 |v_ULTIMATE.start_main_~#t~1#1.offset_214|) (select |v_#length_370| |v_ULTIMATE.start_main_~#t~1#1.base_270|)) (= (+ |v_#pthreadsForks_124| 1) |v_#pthreadsForks_123|) (= |v_ULTIMATE.start_main_#t~pre5#1_157| |v_#pthreadsForks_124|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_475|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_214|, #pthreadsForks=|v_#pthreadsForks_124|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_275|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_270|, #valid=|v_#valid_483|, #memory_int=|v_#memory_int_647|, #length=|v_#length_370|} 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_475|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_214|, #pthreadsForks=|v_#pthreadsForks_123|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_275|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_270|, #valid=|v_#valid_483|, #memory_int=|v_#memory_int_646|, #length=|v_#length_370|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 35916#[L703-3]don't care [794] L703-3-->thrENTRY: Formula: (and (= v_thrThread1of4ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_142|) (= |v_thrThread1of4ForFork0_#in~arg.base_4| 0) (= |v_thrThread1of4ForFork0_#in~arg.offset_4| 0)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_142|} OutVars{thrThread1of4ForFork0_~arg.base=v_thrThread1of4ForFork0_~arg.base_4, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_142|, 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] 35464#[thrENTRY, L703-4]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_thrThread1of4ForFork0_~t~0_25 v_~x~0_196)) InVars {thrThread1of4ForFork0_#in~arg.offset=|v_thrThread1of4ForFork0_#in~arg.offset_5|, ~x~0=v_~x~0_196, 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_25, thrThread1of4ForFork0_~arg.offset=v_thrThread1of4ForFork0_~arg.offset_5, ~x~0=v_~x~0_196, thrThread1of4ForFork0_#in~arg.base=|v_thrThread1of4ForFork0_#in~arg.base_5|} AuxVars[] AssignedVars[thrThread1of4ForFork0_~arg.base, thrThread1of4ForFork0_~t~0, thrThread1of4ForFork0_~arg.offset] 35466#[L694, L703-4]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] 35918#[L694-1, L703-4]don't care [811] L694-1-->thrEXIT: Formula: (= (+ v_thrThread1of4ForFork0_~t~0_19 1) v_~x~0_185) InVars {thrThread1of4ForFork0_~t~0=v_thrThread1of4ForFork0_~t~0_19} OutVars{thrThread1of4ForFork0_~t~0=v_thrThread1of4ForFork0_~t~0_19, ~x~0=v_~x~0_185} AuxVars[] AssignedVars[~x~0] 34112#[thrEXIT, L703-4]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] 31800#[thrEXIT, L703-5]don't care [857] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_486| 1) |v_ULTIMATE.start_main_~i~0#1_485|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_486|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_485|, 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] 31774#[thrEXIT, 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] 31776#[thrEXIT, L705-5]don't care [818] L705-5-->L706-1: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_443| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_204|))) (and (= (select |v_#valid_457| |v_ULTIMATE.start_main_~#t~1#1.base_258|) 1) (< |v_ULTIMATE.start_main_~i~0#1_443| |v_ULTIMATE.start_main_~n~0#1_261|) (<= 0 .cse0) (= |v_ULTIMATE.start_main_#t~mem8#1_99| (select (select |v_#memory_int_620| |v_ULTIMATE.start_main_~#t~1#1.base_258|) .cse0)) (<= (+ .cse1 4 |v_ULTIMATE.start_main_~#t~1#1.offset_204|) (select |v_#length_350| |v_ULTIMATE.start_main_~#t~1#1.base_258|))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_443|, 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_261|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_258|, #valid=|v_#valid_457|, #memory_int=|v_#memory_int_620|, #length=|v_#length_350|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_443|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_99|, 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_261|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_258|, #valid=|v_#valid_457|, #memory_int=|v_#memory_int_620|, #length=|v_#length_350|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~mem8#1] 28664#[L706-1, thrEXIT]don't care [798] thrEXIT-->L706-2: Formula: (= (let ((.cse0 (mod |v_ULTIMATE.start_main_#t~mem8#1_92| 4294967296))) (ite (<= .cse0 2147483647) .cse0 (+ .cse0 (- 4294967296)))) v_thrThread1of4ForFork0_thidvar0_4) InVars {ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_92|, thrThread1of4ForFork0_thidvar0=v_thrThread1of4ForFork0_thidvar0_4} OutVars{ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_92|, thrThread1of4ForFork0_thidvar0=v_thrThread1of4ForFork0_thidvar0_4} AuxVars[] AssignedVars[] 32434#[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] 28824#[L705-2]don't care [862] L705-2-->L705-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_502| 1) |v_ULTIMATE.start_main_~i~0#1_501|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_502|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_501|, 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] 28826#[L705-5]don't care [858] L705-5-->L709-6: Formula: (and (= |v_ULTIMATE.start_main_~sum~0#1_192| 0) (= |v_ULTIMATE.start_main_~i~0#1_489| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_490| |v_ULTIMATE.start_main_~n~0#1_285|))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_490|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_285|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_489|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_192|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_285|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1] 35126#[L709-6]don't care [2022-07-22 12:14:31,805 INFO L750 eck$LassoCheckResult]: Loop: 35126#[L709-6]don't care [869] L709-6-->L709-6: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_524| 4))) (let ((.cse1 (+ |v_~#a~0.offset_300| .cse0))) (and (= (select |v_#valid_529| |v_~#a~0.base_305|) 1) (= (+ |v_ULTIMATE.start_main_~i~0#1_524| 1) |v_ULTIMATE.start_main_~i~0#1_523|) (<= (+ |v_~#a~0.offset_300| .cse0 4) (select |v_#length_412| |v_~#a~0.base_305|)) (= (+ |v_ULTIMATE.start_main_~sum~0#1_205| (select (select |v_#memory_int_732| |v_~#a~0.base_305|) .cse1)) |v_ULTIMATE.start_main_~sum~0#1_204|) (< |v_ULTIMATE.start_main_~i~0#1_524| |v_ULTIMATE.start_main_~n~0#1_307|) (<= 0 .cse1)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_524|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_205|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_307|, #valid=|v_#valid_529|, #memory_int=|v_#memory_int_732|, ~#a~0.base=|v_~#a~0.base_305|, ~#a~0.offset=|v_~#a~0.offset_300|, #length=|v_#length_412|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_523|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_204|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_307|, #valid=|v_#valid_529|, #memory_int=|v_#memory_int_732|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_96|, ~#a~0.base=|v_~#a~0.base_305|, ~#a~0.offset=|v_~#a~0.offset_300|, #length=|v_#length_412|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_152|} 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] 35126#[L709-6]don't care [2022-07-22 12:14:31,806 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:31,806 INFO L85 PathProgramCache]: Analyzing trace with hash 1755267273, now seen corresponding path program 1 times [2022-07-22 12:14:31,806 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:31,806 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1643006363] [2022-07-22 12:14:31,807 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:31,807 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:31,831 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 12:14:31,866 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-22 12:14:31,866 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-22 12:14:31,867 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1643006363] [2022-07-22 12:14:31,867 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1643006363] provided 0 perfect and 1 imperfect interpolant sequences [2022-07-22 12:14:31,867 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [911461287] [2022-07-22 12:14:31,867 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:31,868 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-22 12:14:31,868 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-22 12:14:31,871 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-22 12:14:31,878 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-22 12:14:31,955 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 12:14:31,957 INFO L263 TraceCheckSpWp]: Trace formula consists of 125 conjuncts, 8 conjunts are in the unsatisfiable core [2022-07-22 12:14:31,958 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-22 12:14:32,022 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-22 12:14:32,022 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-22 12:14:32,044 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-22 12:14:32,044 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [911461287] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-22 12:14:32,044 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-07-22 12:14:32,044 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 3, 3] total 7 [2022-07-22 12:14:32,045 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [189590991] [2022-07-22 12:14:32,045 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-07-22 12:14:32,045 INFO L753 eck$LassoCheckResult]: stem already infeasible [2022-07-22 12:14:32,046 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:32,046 INFO L85 PathProgramCache]: Analyzing trace with hash 900, now seen corresponding path program 3 times [2022-07-22 12:14:32,046 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:32,046 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1271810902] [2022-07-22 12:14:32,046 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:32,047 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:32,052 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:32,052 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:14:32,055 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:32,057 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:14:32,094 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-22 12:14:32,094 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-07-22 12:14:32,095 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=27, Invalid=29, Unknown=0, NotChecked=0, Total=56 [2022-07-22 12:14:32,096 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-22 12:14:32,240 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-22 12:14:32,241 INFO L93 Difference]: Finished difference Result 3975 states and 14195 transitions. [2022-07-22 12:14:32,241 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 3975 states and 14195 transitions. [2022-07-22 12:14:32,295 INFO L131 ngComponentsAnalysis]: Automaton has 625 accepting balls. 625 [2022-07-22 12:14:32,358 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 3975 states to 3975 states and 14195 transitions. [2022-07-22 12:14:32,358 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 3975 [2022-07-22 12:14:32,369 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 3975 [2022-07-22 12:14:32,369 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3975 states and 14195 transitions. [2022-07-22 12:14:32,382 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-22 12:14:32,382 INFO L220 hiAutomatonCegarLoop]: Abstraction has 3975 states and 14195 transitions. [2022-07-22 12:14:32,396 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3975 states and 14195 transitions. [2022-07-22 12:14:32,592 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3975 to 3975. [2022-07-22 12:14:32,610 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-22 12:14:32,633 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3975 states to 3975 states and 14195 transitions. [2022-07-22 12:14:32,634 INFO L242 hiAutomatonCegarLoop]: Abstraction has 3975 states and 14195 transitions. [2022-07-22 12:14:32,634 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-07-22 12:14:32,635 INFO L425 stractBuchiCegarLoop]: Abstraction has 3975 states and 14195 transitions. [2022-07-22 12:14:32,635 INFO L332 stractBuchiCegarLoop]: ======== Iteration 4 ============ [2022-07-22 12:14:32,635 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 3975 states and 14195 transitions. [2022-07-22 12:14:32,676 INFO L131 ngComponentsAnalysis]: Automaton has 625 accepting balls. 625 [2022-07-22 12:14:32,676 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:14:32,676 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:14:32,677 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [5, 4, 4, 1, 1, 1, 1, 1, 1] [2022-07-22 12:14:32,677 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:14:32,679 INFO L748 eck$LassoCheckResult]: Stem: 47784#[ULTIMATE.startENTRY]don't care [890] ULTIMATE.startENTRY-->L702-6: Formula: (let ((.cse1 (select |v_#memory_int_827| 1))) (and (= |v_ULTIMATE.start_main_#in~argv#1.base_76| |v_ULTIMATE.start_main_~argv#1.base_74|) (= v_~x~0_259 0) (= (select |v_#valid_642| |v_ULTIMATE.start_main_~#t~1#1.base_356|) 0) (= |v_#NULL.offset_37| 0) (= 40 (select |v_#length_479| 3)) (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_98| |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_76|) (= 2 (select |v_#length_479| 1)) (= (select |v_#valid_642| 1) 1) (= |v_ULTIMATE.start_main_#in~argv#1.offset_76| |v_ULTIMATE.start_main_~argv#1.offset_74|) (= 3 |v_~#a~0.base_353|) (= |v_#NULL.base_37| 0) (= (select |v_#valid_642| 3) 1) (= |v_ULTIMATE.start_main_~argc#1_70| |v_ULTIMATE.start_main_#in~argc#1_74|) (= |v_ULTIMATE.start_#in~argv#1.base_51| |v_ULTIMATE.start_main_#in~argv#1.base_76|) (= (select |v_#valid_642| 2) 1) (= 9 (select |v_#length_479| 2)) (= |v_ULTIMATE.start_main_~n~0#1_349| (let ((.cse0 (mod |v_ULTIMATE.start_main_#t~nondet3#1_142| 4294967296))) (ite (<= .cse0 2147483647) .cse0 (+ .cse0 (- 4294967296))))) (= (select |v_#valid_642| 0) 0) (= (store |v_#memory_int_827| |v_~#a~0.base_353| (store ((as const (Array Int Int)) 0) |v_~#a~0.offset_348| 0)) |v_#memory_int_826|) (< 0 |v_#StackHeapBarrier_88|) (= |v_ULTIMATE.start_main_#in~argv#1.offset_76| |v_ULTIMATE.start_#in~argv#1.offset_51|) (= |v_ULTIMATE.start_#in~argc#1_51| |v_ULTIMATE.start_main_#in~argc#1_74|) (< |v_#StackHeapBarrier_88| |v_ULTIMATE.start_main_~#t~1#1.base_356|) (= 0 |v_ULTIMATE.start_main_~#t~1#1.offset_274|) (= (select .cse1 0) 48) (= (ite (and (<= 5 |v_ULTIMATE.start_main_~n~0#1_349|) (<= |v_ULTIMATE.start_main_~n~0#1_349| 10)) 1 0) |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_76|) (= (store |v_#length_479| |v_ULTIMATE.start_main_~#t~1#1.base_356| 40) |v_#length_478|) (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_98| 0)) (= (select .cse1 1) 0) (= |v_ULTIMATE.start_main_~i~0#1_571| 0) (= |v_#valid_641| (store |v_#valid_642| |v_ULTIMATE.start_main_~#t~1#1.base_356| 1)) (= |v_~#a~0.offset_348| 0))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_51|, #StackHeapBarrier=|v_#StackHeapBarrier_88|, #valid=|v_#valid_642|, #memory_int=|v_#memory_int_827|, #length=|v_#length_479|, 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_274|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_131|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_356|, #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_571|, 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_234|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_349|, 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_478|, 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_169|, 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_353|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_166|, #NULL.base=|v_#NULL.base_37|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_171|, 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_641|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_87|, #memory_int=|v_#memory_int_826|, ~#a~0.offset=|v_~#a~0.offset_348|, ~x~0=v_~x~0_259, 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] 47786#[L702-6]don't care [854] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_475| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_214|))) (and (= (store |v_#memory_int_647| |v_ULTIMATE.start_main_~#t~1#1.base_270| (store (select |v_#memory_int_647| |v_ULTIMATE.start_main_~#t~1#1.base_270|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_157|)) |v_#memory_int_646|) (<= 0 .cse0) (< |v_ULTIMATE.start_main_~i~0#1_475| |v_ULTIMATE.start_main_~n~0#1_275|) (= (select |v_#valid_483| |v_ULTIMATE.start_main_~#t~1#1.base_270|) 1) (<= (+ .cse1 4 |v_ULTIMATE.start_main_~#t~1#1.offset_214|) (select |v_#length_370| |v_ULTIMATE.start_main_~#t~1#1.base_270|)) (= (+ |v_#pthreadsForks_124| 1) |v_#pthreadsForks_123|) (= |v_ULTIMATE.start_main_#t~pre5#1_157| |v_#pthreadsForks_124|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_475|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_214|, #pthreadsForks=|v_#pthreadsForks_124|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_275|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_270|, #valid=|v_#valid_483|, #memory_int=|v_#memory_int_647|, #length=|v_#length_370|} 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_475|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_214|, #pthreadsForks=|v_#pthreadsForks_123|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_275|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_270|, #valid=|v_#valid_483|, #memory_int=|v_#memory_int_646|, #length=|v_#length_370|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 47948#[L703-3]don't care [794] L703-3-->thrENTRY: Formula: (and (= v_thrThread1of4ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_142|) (= |v_thrThread1of4ForFork0_#in~arg.base_4| 0) (= |v_thrThread1of4ForFork0_#in~arg.offset_4| 0)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_142|} OutVars{thrThread1of4ForFork0_~arg.base=v_thrThread1of4ForFork0_~arg.base_4, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_142|, 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] 47560#[thrENTRY, L703-4]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] 47564#[thrENTRY, L703-5]don't care [857] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_486| 1) |v_ULTIMATE.start_main_~i~0#1_485|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_486|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_485|, 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] 47684#[thrENTRY, L702-6]don't care [854] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_475| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_214|))) (and (= (store |v_#memory_int_647| |v_ULTIMATE.start_main_~#t~1#1.base_270| (store (select |v_#memory_int_647| |v_ULTIMATE.start_main_~#t~1#1.base_270|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_157|)) |v_#memory_int_646|) (<= 0 .cse0) (< |v_ULTIMATE.start_main_~i~0#1_475| |v_ULTIMATE.start_main_~n~0#1_275|) (= (select |v_#valid_483| |v_ULTIMATE.start_main_~#t~1#1.base_270|) 1) (<= (+ .cse1 4 |v_ULTIMATE.start_main_~#t~1#1.offset_214|) (select |v_#length_370| |v_ULTIMATE.start_main_~#t~1#1.base_270|)) (= (+ |v_#pthreadsForks_124| 1) |v_#pthreadsForks_123|) (= |v_ULTIMATE.start_main_#t~pre5#1_157| |v_#pthreadsForks_124|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_475|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_214|, #pthreadsForks=|v_#pthreadsForks_124|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_275|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_270|, #valid=|v_#valid_483|, #memory_int=|v_#memory_int_647|, #length=|v_#length_370|} 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_475|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_214|, #pthreadsForks=|v_#pthreadsForks_123|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_275|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_270|, #valid=|v_#valid_483|, #memory_int=|v_#memory_int_646|, #length=|v_#length_370|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 44626#[thrENTRY, L703-3]don't care [795] L703-3-->thrENTRY: Formula: (and (= |v_ULTIMATE.start_main_#t~pre5#1_144| 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_144|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_144|, 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] 43090#[thrENTRY, thrENTRY, L703-4]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] 43094#[thrENTRY, thrENTRY, L703-5]don't care [857] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_486| 1) |v_ULTIMATE.start_main_~i~0#1_485|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_486|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_485|, 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] 42066#[L702-6, thrENTRY, thrENTRY]don't care [854] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_475| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_214|))) (and (= (store |v_#memory_int_647| |v_ULTIMATE.start_main_~#t~1#1.base_270| (store (select |v_#memory_int_647| |v_ULTIMATE.start_main_~#t~1#1.base_270|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_157|)) |v_#memory_int_646|) (<= 0 .cse0) (< |v_ULTIMATE.start_main_~i~0#1_475| |v_ULTIMATE.start_main_~n~0#1_275|) (= (select |v_#valid_483| |v_ULTIMATE.start_main_~#t~1#1.base_270|) 1) (<= (+ .cse1 4 |v_ULTIMATE.start_main_~#t~1#1.offset_214|) (select |v_#length_370| |v_ULTIMATE.start_main_~#t~1#1.base_270|)) (= (+ |v_#pthreadsForks_124| 1) |v_#pthreadsForks_123|) (= |v_ULTIMATE.start_main_#t~pre5#1_157| |v_#pthreadsForks_124|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_475|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_214|, #pthreadsForks=|v_#pthreadsForks_124|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_275|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_270|, #valid=|v_#valid_483|, #memory_int=|v_#memory_int_647|, #length=|v_#length_370|} 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_475|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_214|, #pthreadsForks=|v_#pthreadsForks_123|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_275|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_270|, #valid=|v_#valid_483|, #memory_int=|v_#memory_int_646|, #length=|v_#length_370|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 42068#[thrENTRY, L703-3, thrENTRY]don't care [796] L703-3-->thrENTRY: Formula: (and (= v_thrThread3of4ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_146|) (= |v_thrThread3of4ForFork0_#in~arg.base_4| 0) (= |v_thrThread3of4ForFork0_#in~arg.offset_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|, 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] 47488#[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] 47492#[thrENTRY, thrENTRY, L703-5, thrENTRY]don't care [857] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_486| 1) |v_ULTIMATE.start_main_~i~0#1_485|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_486|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_485|, 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] 47104#[thrENTRY, thrENTRY, L702-6, thrENTRY]don't care [854] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_475| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_214|))) (and (= (store |v_#memory_int_647| |v_ULTIMATE.start_main_~#t~1#1.base_270| (store (select |v_#memory_int_647| |v_ULTIMATE.start_main_~#t~1#1.base_270|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_157|)) |v_#memory_int_646|) (<= 0 .cse0) (< |v_ULTIMATE.start_main_~i~0#1_475| |v_ULTIMATE.start_main_~n~0#1_275|) (= (select |v_#valid_483| |v_ULTIMATE.start_main_~#t~1#1.base_270|) 1) (<= (+ .cse1 4 |v_ULTIMATE.start_main_~#t~1#1.offset_214|) (select |v_#length_370| |v_ULTIMATE.start_main_~#t~1#1.base_270|)) (= (+ |v_#pthreadsForks_124| 1) |v_#pthreadsForks_123|) (= |v_ULTIMATE.start_main_#t~pre5#1_157| |v_#pthreadsForks_124|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_475|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_214|, #pthreadsForks=|v_#pthreadsForks_124|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_275|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_270|, #valid=|v_#valid_483|, #memory_int=|v_#memory_int_647|, #length=|v_#length_370|} 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_475|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_214|, #pthreadsForks=|v_#pthreadsForks_123|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_275|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_270|, #valid=|v_#valid_483|, #memory_int=|v_#memory_int_646|, #length=|v_#length_370|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 46942#[thrENTRY, L703-3, thrENTRY, thrENTRY]don't care [797] L703-3-->thrENTRY: Formula: (and (= |v_thrThread4of4ForFork0_#in~arg.offset_4| 0) (= |v_thrThread4of4ForFork0_#in~arg.base_4| 0) (= v_thrThread4of4ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_148|)) 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|, 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] 44892#[thrENTRY, 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] 44896#[thrENTRY, thrENTRY, thrENTRY, L703-5, thrENTRY]don't care [857] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_486| 1) |v_ULTIMATE.start_main_~i~0#1_485|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_486|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_485|, 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] 45374#[thrENTRY, thrENTRY, thrENTRY, L702-6, thrENTRY]don't care [854] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_475| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_214|))) (and (= (store |v_#memory_int_647| |v_ULTIMATE.start_main_~#t~1#1.base_270| (store (select |v_#memory_int_647| |v_ULTIMATE.start_main_~#t~1#1.base_270|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_157|)) |v_#memory_int_646|) (<= 0 .cse0) (< |v_ULTIMATE.start_main_~i~0#1_475| |v_ULTIMATE.start_main_~n~0#1_275|) (= (select |v_#valid_483| |v_ULTIMATE.start_main_~#t~1#1.base_270|) 1) (<= (+ .cse1 4 |v_ULTIMATE.start_main_~#t~1#1.offset_214|) (select |v_#length_370| |v_ULTIMATE.start_main_~#t~1#1.base_270|)) (= (+ |v_#pthreadsForks_124| 1) |v_#pthreadsForks_123|) (= |v_ULTIMATE.start_main_#t~pre5#1_157| |v_#pthreadsForks_124|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_475|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_214|, #pthreadsForks=|v_#pthreadsForks_124|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_275|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_270|, #valid=|v_#valid_483|, #memory_int=|v_#memory_int_647|, #length=|v_#length_370|} 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_475|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_214|, #pthreadsForks=|v_#pthreadsForks_123|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_275|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_270|, #valid=|v_#valid_483|, #memory_int=|v_#memory_int_646|, #length=|v_#length_370|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 45380#[thrENTRY, thrENTRY, thrENTRY, thrENTRY, L703-3]don't care [792] L703-3-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 45430#[thrENTRY, thrENTRY, thrENTRY, thrENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES]don't care [2022-07-22 12:14:32,679 INFO L750 eck$LassoCheckResult]: Loop: 45430#[thrENTRY, thrENTRY, thrENTRY, thrENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES]don't care [793] ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 45430#[thrENTRY, thrENTRY, thrENTRY, thrENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES]don't care [2022-07-22 12:14:32,679 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:32,680 INFO L85 PathProgramCache]: Analyzing trace with hash 583066713, now seen corresponding path program 1 times [2022-07-22 12:14:32,680 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:32,680 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [985094951] [2022-07-22 12:14:32,680 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:32,680 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:32,704 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:32,704 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:14:32,717 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:32,724 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:14:32,725 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:32,725 INFO L85 PathProgramCache]: Analyzing trace with hash 824, now seen corresponding path program 1 times [2022-07-22 12:14:32,725 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:32,726 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1852314765] [2022-07-22 12:14:32,726 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:32,726 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:32,730 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:32,730 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:14:32,731 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:32,733 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:14:32,733 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:32,733 INFO L85 PathProgramCache]: Analyzing trace with hash 895199712, now seen corresponding path program 1 times [2022-07-22 12:14:32,733 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:32,733 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1171482746] [2022-07-22 12:14:32,734 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:32,734 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:32,760 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:32,760 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:14:32,776 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:32,783 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:14:35,173 WARN L146 chiAutomizerObserver]: 4 thread instances were not sufficient, I will increase this number and restart the analysis [2022-07-22 12:14:35,191 INFO L144 ThreadInstanceAdder]: Constructed 5 joinOtherThreadTransitions. [2022-07-22 12:14:35,194 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 115 places, 116 transitions, 292 flow [2022-07-22 12:14:35,458 INFO L129 PetriNetUnfolder]: 190/1296 cut-off events. [2022-07-22 12:14:35,458 INFO L130 PetriNetUnfolder]: For 110/110 co-relation queries the response was YES. [2022-07-22 12:14:35,463 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-22 12:14:35,463 INFO L82 GeneralOperation]: Start removeDead. Operand has 115 places, 116 transitions, 292 flow [2022-07-22 12:14:35,484 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 115 places, 116 transitions, 292 flow [2022-07-22 12:14:35,484 INFO L115 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-07-22 12:14:35,484 INFO L131 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 115 places, 116 transitions, 292 flow [2022-07-22 12:14:35,485 INFO L110 LiptonReduction]: Starting Lipton reduction on Petri net that has 115 places, 116 transitions, 292 flow [2022-07-22 12:14:35,485 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 115 places, 116 transitions, 292 flow [2022-07-22 12:14:35,700 INFO L129 PetriNetUnfolder]: 190/1296 cut-off events. [2022-07-22 12:14:35,701 INFO L130 PetriNetUnfolder]: For 110/110 co-relation queries the response was YES. [2022-07-22 12:14:35,707 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-22 12:14:35,737 INFO L116 LiptonReduction]: Number of co-enabled transitions 3200 [2022-07-22 12:14:38,399 INFO L131 LiptonReduction]: Checked pairs total: 10879 [2022-07-22 12:14:38,399 INFO L133 LiptonReduction]: Total number of compositions: 89 [2022-07-22 12:14:38,401 INFO L300 stractBuchiCegarLoop]: Interprodecural is true [2022-07-22 12:14:38,401 INFO L301 stractBuchiCegarLoop]: Hoare is false [2022-07-22 12:14:38,401 INFO L302 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2022-07-22 12:14:38,401 INFO L303 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2022-07-22 12:14:38,401 INFO L304 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2022-07-22 12:14:38,401 INFO L305 stractBuchiCegarLoop]: Difference is false [2022-07-22 12:14:38,401 INFO L306 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2022-07-22 12:14:38,401 INFO L310 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2022-07-22 12:14:38,402 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 0 states, but on-demand construction may add more states [2022-07-22 12:14:40,672 INFO L131 ngComponentsAnalysis]: Automaton has 4149 accepting balls. 4149 [2022-07-22 12:14:40,672 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:14:40,672 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:14:40,674 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2022-07-22 12:14:40,675 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:14:40,675 INFO L332 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2022-07-22 12:14:40,675 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 23184 states, but on-demand construction may add more states [2022-07-22 12:14:41,278 INFO L131 ngComponentsAnalysis]: Automaton has 4149 accepting balls. 4149 [2022-07-22 12:14:41,278 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:14:41,278 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:14:41,280 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2022-07-22 12:14:41,280 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:14:41,281 INFO L748 eck$LassoCheckResult]: Stem: 118#[ULTIMATE.startENTRY]don't care [1102] ULTIMATE.startENTRY-->L702-6: Formula: (let ((.cse0 (select |v_#memory_int_1090| 1))) (and (= |v_ULTIMATE.start_main_#in~argv#1.offset_97| |v_ULTIMATE.start_main_~argv#1.offset_91|) (= (ite (and (<= |v_ULTIMATE.start_main_~n~0#1_431| 10) (<= 5 |v_ULTIMATE.start_main_~n~0#1_431|)) 1 0) |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_97|) (= (select |v_#valid_832| |v_ULTIMATE.start_main_~#t~1#1.base_471|) 0) (= |v_~#a~0.offset_458| 0) (= |v_#NULL.base_48| 0) (= |v_#NULL.offset_48| 0) (= 3 |v_~#a~0.base_463|) (< |v_#StackHeapBarrier_111| |v_ULTIMATE.start_main_~#t~1#1.base_471|) (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_127| 0)) (< 0 |v_#StackHeapBarrier_111|) (= |v_#valid_831| (store |v_#valid_832| |v_ULTIMATE.start_main_~#t~1#1.base_471| 1)) (= (store |v_#length_622| |v_ULTIMATE.start_main_~#t~1#1.base_471| 40) |v_#length_621|) (= v_~x~0_362 0) (= (select |v_#valid_832| 0) 0) (= |v_ULTIMATE.start_main_#in~argv#1.offset_97| |v_ULTIMATE.start_#in~argv#1.offset_62|) (= |v_ULTIMATE.start_#in~argv#1.base_62| |v_ULTIMATE.start_main_#in~argv#1.base_97|) (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_127| |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_97|) (= (select .cse0 1) 0) (= 0 |v_ULTIMATE.start_main_~#t~1#1.offset_361|) (= (select .cse0 0) 48) (= 1 (select |v_#valid_832| 2)) (= (select |v_#valid_832| 3) 1) (= (let ((.cse1 (mod |v_ULTIMATE.start_main_#t~nondet3#1_181| 4294967296))) (ite (<= .cse1 2147483647) .cse1 (+ (- 4294967296) .cse1))) |v_ULTIMATE.start_main_~n~0#1_431|) (= 2 (select |v_#length_622| 1)) (= 40 (select |v_#length_622| 3)) (= |v_ULTIMATE.start_main_#in~argv#1.base_97| |v_ULTIMATE.start_main_~argv#1.base_91|) (= |v_ULTIMATE.start_main_~argc#1_85| |v_ULTIMATE.start_main_#in~argc#1_95|) (= |v_ULTIMATE.start_#in~argc#1_62| |v_ULTIMATE.start_main_#in~argc#1_95|) (= |v_#memory_int_1089| (store |v_#memory_int_1090| |v_~#a~0.base_463| (store ((as const (Array Int Int)) 0) |v_~#a~0.offset_458| 0))) (= (select |v_#valid_832| 1) 1) (= (select |v_#length_622| 2) 9) (= |v_ULTIMATE.start_main_~i~0#1_729| 0))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_62|, #StackHeapBarrier=|v_#StackHeapBarrier_111|, #valid=|v_#valid_832|, #memory_int=|v_#memory_int_1090|, #length=|v_#length_622|, 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_361|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_178|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_471|, #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_729|, 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_287|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_431|, 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_621|, 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_224|, 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_463|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_198|, #NULL.base=|v_#NULL.base_48|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_245|, 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_831|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_109|, #memory_int=|v_#memory_int_1089|, ~#a~0.offset=|v_~#a~0.offset_458|, ~x~0=v_~x~0_362, 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_~i~0#1_649| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_650| |v_ULTIMATE.start_main_~n~0#1_385|)) (= |v_ULTIMATE.start_main_~sum~0#1_265| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_650|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_385|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_649|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_265|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_385|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1] 127#[L709-6]don't care [2022-07-22 12:14:41,281 INFO L750 eck$LassoCheckResult]: Loop: 127#[L709-6]don't care [1091] L709-6-->L709-6: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_700| 4))) (let ((.cse0 (+ |v_~#a~0.offset_432| .cse1))) (and (<= 0 .cse0) (= |v_ULTIMATE.start_main_~sum~0#1_277| (+ |v_ULTIMATE.start_main_~sum~0#1_278| (select (select |v_#memory_int_1041| |v_~#a~0.base_437|) .cse0))) (= (+ |v_ULTIMATE.start_main_~i~0#1_700| 1) |v_ULTIMATE.start_main_~i~0#1_699|) (< |v_ULTIMATE.start_main_~i~0#1_700| |v_ULTIMATE.start_main_~n~0#1_409|) (<= (+ |v_~#a~0.offset_432| 4 .cse1) (select |v_#length_587| |v_~#a~0.base_437|)) (= (select |v_#valid_783| |v_~#a~0.base_437|) 1)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_700|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_278|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_409|, #valid=|v_#valid_783|, #memory_int=|v_#memory_int_1041|, ~#a~0.base=|v_~#a~0.base_437|, ~#a~0.offset=|v_~#a~0.offset_432|, #length=|v_#length_587|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_699|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_277|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_409|, #valid=|v_#valid_783|, #memory_int=|v_#memory_int_1041|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_126|, ~#a~0.base=|v_~#a~0.base_437|, ~#a~0.offset=|v_~#a~0.offset_432|, #length=|v_#length_587|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_192|} 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-22 12:14:41,281 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:41,282 INFO L85 PathProgramCache]: Analyzing trace with hash 1122748, now seen corresponding path program 1 times [2022-07-22 12:14:41,282 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:41,282 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2076460546] [2022-07-22 12:14:41,282 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:41,282 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:41,296 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 12:14:41,307 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-22 12:14:41,307 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-22 12:14:41,308 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2076460546] [2022-07-22 12:14:41,308 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2076460546] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-22 12:14:41,308 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-22 12:14:41,308 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-07-22 12:14:41,308 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1613065281] [2022-07-22 12:14:41,308 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-22 12:14:41,312 INFO L753 eck$LassoCheckResult]: stem already infeasible [2022-07-22 12:14:41,312 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:41,312 INFO L85 PathProgramCache]: Analyzing trace with hash 1122, now seen corresponding path program 1 times [2022-07-22 12:14:41,312 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:41,313 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1747413403] [2022-07-22 12:14:41,313 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:41,313 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:41,318 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:41,318 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:14:41,320 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:41,322 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:14:41,351 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-22 12:14:41,352 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-07-22 12:14:41,354 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-07-22 12:14:41,355 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-22 12:14:41,773 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-22 12:14:41,773 INFO L93 Difference]: Finished difference Result 23185 states and 99200 transitions. [2022-07-22 12:14:41,773 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 23185 states and 99200 transitions. [2022-07-22 12:14:42,371 INFO L131 ngComponentsAnalysis]: Automaton has 4149 accepting balls. 4149 [2022-07-22 12:14:42,960 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 23185 states to 20059 states and 86699 transitions. [2022-07-22 12:14:42,960 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 20059 [2022-07-22 12:14:43,034 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 20059 [2022-07-22 12:14:43,035 INFO L73 IsDeterministic]: Start isDeterministic. Operand 20059 states and 86699 transitions. [2022-07-22 12:14:43,101 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-22 12:14:43,101 INFO L220 hiAutomatonCegarLoop]: Abstraction has 20059 states and 86699 transitions. [2022-07-22 12:14:43,279 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 20059 states and 86699 transitions. [2022-07-22 12:14:44,026 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 20059 to 20059. [2022-07-22 12:14:44,104 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-22 12:14:44,488 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20059 states to 20059 states and 86699 transitions. [2022-07-22 12:14:44,488 INFO L242 hiAutomatonCegarLoop]: Abstraction has 20059 states and 86699 transitions. [2022-07-22 12:14:44,489 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-07-22 12:14:44,490 INFO L425 stractBuchiCegarLoop]: Abstraction has 20059 states and 86699 transitions. [2022-07-22 12:14:44,490 INFO L332 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2022-07-22 12:14:44,490 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 20059 states and 86699 transitions. [2022-07-22 12:14:44,975 INFO L131 ngComponentsAnalysis]: Automaton has 4149 accepting balls. 4149 [2022-07-22 12:14:44,975 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:14:44,975 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:14:44,977 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1] [2022-07-22 12:14:44,977 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:14:44,978 INFO L748 eck$LassoCheckResult]: Stem: 106374#[ULTIMATE.startENTRY]don't care [1102] ULTIMATE.startENTRY-->L702-6: Formula: (let ((.cse0 (select |v_#memory_int_1090| 1))) (and (= |v_ULTIMATE.start_main_#in~argv#1.offset_97| |v_ULTIMATE.start_main_~argv#1.offset_91|) (= (ite (and (<= |v_ULTIMATE.start_main_~n~0#1_431| 10) (<= 5 |v_ULTIMATE.start_main_~n~0#1_431|)) 1 0) |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_97|) (= (select |v_#valid_832| |v_ULTIMATE.start_main_~#t~1#1.base_471|) 0) (= |v_~#a~0.offset_458| 0) (= |v_#NULL.base_48| 0) (= |v_#NULL.offset_48| 0) (= 3 |v_~#a~0.base_463|) (< |v_#StackHeapBarrier_111| |v_ULTIMATE.start_main_~#t~1#1.base_471|) (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_127| 0)) (< 0 |v_#StackHeapBarrier_111|) (= |v_#valid_831| (store |v_#valid_832| |v_ULTIMATE.start_main_~#t~1#1.base_471| 1)) (= (store |v_#length_622| |v_ULTIMATE.start_main_~#t~1#1.base_471| 40) |v_#length_621|) (= v_~x~0_362 0) (= (select |v_#valid_832| 0) 0) (= |v_ULTIMATE.start_main_#in~argv#1.offset_97| |v_ULTIMATE.start_#in~argv#1.offset_62|) (= |v_ULTIMATE.start_#in~argv#1.base_62| |v_ULTIMATE.start_main_#in~argv#1.base_97|) (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_127| |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_97|) (= (select .cse0 1) 0) (= 0 |v_ULTIMATE.start_main_~#t~1#1.offset_361|) (= (select .cse0 0) 48) (= 1 (select |v_#valid_832| 2)) (= (select |v_#valid_832| 3) 1) (= (let ((.cse1 (mod |v_ULTIMATE.start_main_#t~nondet3#1_181| 4294967296))) (ite (<= .cse1 2147483647) .cse1 (+ (- 4294967296) .cse1))) |v_ULTIMATE.start_main_~n~0#1_431|) (= 2 (select |v_#length_622| 1)) (= 40 (select |v_#length_622| 3)) (= |v_ULTIMATE.start_main_#in~argv#1.base_97| |v_ULTIMATE.start_main_~argv#1.base_91|) (= |v_ULTIMATE.start_main_~argc#1_85| |v_ULTIMATE.start_main_#in~argc#1_95|) (= |v_ULTIMATE.start_#in~argc#1_62| |v_ULTIMATE.start_main_#in~argc#1_95|) (= |v_#memory_int_1089| (store |v_#memory_int_1090| |v_~#a~0.base_463| (store ((as const (Array Int Int)) 0) |v_~#a~0.offset_458| 0))) (= (select |v_#valid_832| 1) 1) (= (select |v_#length_622| 2) 9) (= |v_ULTIMATE.start_main_~i~0#1_729| 0))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_62|, #StackHeapBarrier=|v_#StackHeapBarrier_111|, #valid=|v_#valid_832|, #memory_int=|v_#memory_int_1090|, #length=|v_#length_622|, 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_361|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_178|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_471|, #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_729|, 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_287|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_431|, 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_621|, 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_224|, 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_463|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_198|, #NULL.base=|v_#NULL.base_48|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_245|, 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_831|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_109|, #memory_int=|v_#memory_int_1089|, ~#a~0.offset=|v_~#a~0.offset_458|, ~x~0=v_~x~0_362, 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_643| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_301|))) (and (= |v_ULTIMATE.start_main_#t~pre5#1_217| |v_#pthreadsForks_154|) (= |v_#memory_int_911| (store |v_#memory_int_912| |v_ULTIMATE.start_main_~#t~1#1.base_385| (store (select |v_#memory_int_912| |v_ULTIMATE.start_main_~#t~1#1.base_385|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_217|))) (= (select |v_#valid_692| |v_ULTIMATE.start_main_~#t~1#1.base_385|) 1) (< |v_ULTIMATE.start_main_~i~0#1_643| |v_ULTIMATE.start_main_~n~0#1_381|) (= (+ |v_#pthreadsForks_154| 1) |v_#pthreadsForks_153|) (<= 0 .cse0) (<= (+ .cse1 4 |v_ULTIMATE.start_main_~#t~1#1.offset_301|) (select |v_#length_523| |v_ULTIMATE.start_main_~#t~1#1.base_385|))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_643|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_301|, #pthreadsForks=|v_#pthreadsForks_154|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_381|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_385|, #valid=|v_#valid_692|, #memory_int=|v_#memory_int_912|, #length=|v_#length_523|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_217|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_643|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_301|, #pthreadsForks=|v_#pthreadsForks_153|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_381|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_385|, #valid=|v_#valid_692|, #memory_int=|v_#memory_int_911|, #length=|v_#length_523|} 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_#in~arg.offset_4| 0) (= v_thrThread1of5ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_188|) (= |v_thrThread1of5ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_188|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_188|, 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#[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] 93912#[L703-5, thrENTRY]don't care [1078] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_668| 1) |v_ULTIMATE.start_main_~i~0#1_667|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_668|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_667|, 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#[L705-5, thrENTRY]don't care [1075] L705-5-->L709-6: Formula: (and (= |v_ULTIMATE.start_main_~i~0#1_649| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_650| |v_ULTIMATE.start_main_~n~0#1_385|)) (= |v_ULTIMATE.start_main_~sum~0#1_265| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_650|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_385|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_649|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_265|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_385|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1] 102070#[L709-6, thrENTRY]don't care [2022-07-22 12:14:44,978 INFO L750 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_700| 4))) (let ((.cse0 (+ |v_~#a~0.offset_432| .cse1))) (and (<= 0 .cse0) (= |v_ULTIMATE.start_main_~sum~0#1_277| (+ |v_ULTIMATE.start_main_~sum~0#1_278| (select (select |v_#memory_int_1041| |v_~#a~0.base_437|) .cse0))) (= (+ |v_ULTIMATE.start_main_~i~0#1_700| 1) |v_ULTIMATE.start_main_~i~0#1_699|) (< |v_ULTIMATE.start_main_~i~0#1_700| |v_ULTIMATE.start_main_~n~0#1_409|) (<= (+ |v_~#a~0.offset_432| 4 .cse1) (select |v_#length_587| |v_~#a~0.base_437|)) (= (select |v_#valid_783| |v_~#a~0.base_437|) 1)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_700|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_278|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_409|, #valid=|v_#valid_783|, #memory_int=|v_#memory_int_1041|, ~#a~0.base=|v_~#a~0.base_437|, ~#a~0.offset=|v_~#a~0.offset_432|, #length=|v_#length_587|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_699|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_277|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_409|, #valid=|v_#valid_783|, #memory_int=|v_#memory_int_1041|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_126|, ~#a~0.base=|v_~#a~0.base_437|, ~#a~0.offset=|v_~#a~0.offset_432|, #length=|v_#length_587|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_192|} 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-22 12:14:44,979 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:44,979 INFO L85 PathProgramCache]: Analyzing trace with hash 1986774022, now seen corresponding path program 1 times [2022-07-22 12:14:44,979 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:44,979 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [403037038] [2022-07-22 12:14:44,979 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:44,979 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:44,991 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 12:14:45,021 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-22 12:14:45,021 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-22 12:14:45,021 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [403037038] [2022-07-22 12:14:45,022 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [403037038] provided 0 perfect and 1 imperfect interpolant sequences [2022-07-22 12:14:45,022 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [607466935] [2022-07-22 12:14:45,022 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:45,022 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-22 12:14:45,022 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-22 12:14:45,038 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-22 12:14:45,046 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-22 12:14:45,115 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 12:14:45,116 INFO L263 TraceCheckSpWp]: Trace formula consists of 97 conjuncts, 4 conjunts are in the unsatisfiable core [2022-07-22 12:14:45,117 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-22 12:14:45,137 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-22 12:14:45,137 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-22 12:14:45,154 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-22 12:14:45,155 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [607466935] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-22 12:14:45,155 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-07-22 12:14:45,155 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 3, 3] total 5 [2022-07-22 12:14:45,155 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [553004925] [2022-07-22 12:14:45,155 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-07-22 12:14:45,156 INFO L753 eck$LassoCheckResult]: stem already infeasible [2022-07-22 12:14:45,156 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:45,156 INFO L85 PathProgramCache]: Analyzing trace with hash 1122, now seen corresponding path program 2 times [2022-07-22 12:14:45,156 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:45,157 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1157798242] [2022-07-22 12:14:45,157 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:45,157 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:45,164 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:45,164 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:14:45,166 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:45,169 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:14:45,209 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-22 12:14:45,209 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-07-22 12:14:45,210 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=25, Unknown=0, NotChecked=0, Total=42 [2022-07-22 12:14:45,211 INFO L87 Difference]: Start difference. First operand 20059 states and 86699 transitions. cyclomatic complexity: 70789 Second operand has 7 states, 6 states have (on average 1.8333333333333333) internal successors, (11), 6 states have internal predecessors, (11), 0 states have call successors, (0), 0 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-22 12:14:45,722 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-22 12:14:45,722 INFO L93 Difference]: Finished difference Result 22442 states and 92912 transitions. [2022-07-22 12:14:45,723 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 22442 states and 92912 transitions. [2022-07-22 12:14:46,241 INFO L131 ngComponentsAnalysis]: Automaton has 3125 accepting balls. 3125 [2022-07-22 12:14:46,634 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 22442 states to 22442 states and 92912 transitions. [2022-07-22 12:14:46,634 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 22442 [2022-07-22 12:14:46,709 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 22442 [2022-07-22 12:14:46,710 INFO L73 IsDeterministic]: Start isDeterministic. Operand 22442 states and 92912 transitions. [2022-07-22 12:14:46,765 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-22 12:14:46,766 INFO L220 hiAutomatonCegarLoop]: Abstraction has 22442 states and 92912 transitions. [2022-07-22 12:14:47,042 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 22442 states and 92912 transitions. [2022-07-22 12:14:47,801 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 22442 to 19375. [2022-07-22 12:14:47,901 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-22 12:14:48,066 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19375 states to 19375 states and 82090 transitions. [2022-07-22 12:14:48,067 INFO L242 hiAutomatonCegarLoop]: Abstraction has 19375 states and 82090 transitions. [2022-07-22 12:14:48,067 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-07-22 12:14:48,068 INFO L425 stractBuchiCegarLoop]: Abstraction has 19375 states and 82090 transitions. [2022-07-22 12:14:48,068 INFO L332 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2022-07-22 12:14:48,068 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 19375 states and 82090 transitions. [2022-07-22 12:14:48,267 INFO L131 ngComponentsAnalysis]: Automaton has 3125 accepting balls. 3125 [2022-07-22 12:14:48,267 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:14:48,267 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:14:48,269 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-22 12:14:48,269 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:14:48,270 INFO L748 eck$LassoCheckResult]: Stem: 167318#[ULTIMATE.startENTRY]don't care [1102] ULTIMATE.startENTRY-->L702-6: Formula: (let ((.cse0 (select |v_#memory_int_1090| 1))) (and (= |v_ULTIMATE.start_main_#in~argv#1.offset_97| |v_ULTIMATE.start_main_~argv#1.offset_91|) (= (ite (and (<= |v_ULTIMATE.start_main_~n~0#1_431| 10) (<= 5 |v_ULTIMATE.start_main_~n~0#1_431|)) 1 0) |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_97|) (= (select |v_#valid_832| |v_ULTIMATE.start_main_~#t~1#1.base_471|) 0) (= |v_~#a~0.offset_458| 0) (= |v_#NULL.base_48| 0) (= |v_#NULL.offset_48| 0) (= 3 |v_~#a~0.base_463|) (< |v_#StackHeapBarrier_111| |v_ULTIMATE.start_main_~#t~1#1.base_471|) (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_127| 0)) (< 0 |v_#StackHeapBarrier_111|) (= |v_#valid_831| (store |v_#valid_832| |v_ULTIMATE.start_main_~#t~1#1.base_471| 1)) (= (store |v_#length_622| |v_ULTIMATE.start_main_~#t~1#1.base_471| 40) |v_#length_621|) (= v_~x~0_362 0) (= (select |v_#valid_832| 0) 0) (= |v_ULTIMATE.start_main_#in~argv#1.offset_97| |v_ULTIMATE.start_#in~argv#1.offset_62|) (= |v_ULTIMATE.start_#in~argv#1.base_62| |v_ULTIMATE.start_main_#in~argv#1.base_97|) (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_127| |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_97|) (= (select .cse0 1) 0) (= 0 |v_ULTIMATE.start_main_~#t~1#1.offset_361|) (= (select .cse0 0) 48) (= 1 (select |v_#valid_832| 2)) (= (select |v_#valid_832| 3) 1) (= (let ((.cse1 (mod |v_ULTIMATE.start_main_#t~nondet3#1_181| 4294967296))) (ite (<= .cse1 2147483647) .cse1 (+ (- 4294967296) .cse1))) |v_ULTIMATE.start_main_~n~0#1_431|) (= 2 (select |v_#length_622| 1)) (= 40 (select |v_#length_622| 3)) (= |v_ULTIMATE.start_main_#in~argv#1.base_97| |v_ULTIMATE.start_main_~argv#1.base_91|) (= |v_ULTIMATE.start_main_~argc#1_85| |v_ULTIMATE.start_main_#in~argc#1_95|) (= |v_ULTIMATE.start_#in~argc#1_62| |v_ULTIMATE.start_main_#in~argc#1_95|) (= |v_#memory_int_1089| (store |v_#memory_int_1090| |v_~#a~0.base_463| (store ((as const (Array Int Int)) 0) |v_~#a~0.offset_458| 0))) (= (select |v_#valid_832| 1) 1) (= (select |v_#length_622| 2) 9) (= |v_ULTIMATE.start_main_~i~0#1_729| 0))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_62|, #StackHeapBarrier=|v_#StackHeapBarrier_111|, #valid=|v_#valid_832|, #memory_int=|v_#memory_int_1090|, #length=|v_#length_622|, 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_361|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_178|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_471|, #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_729|, 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_287|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_431|, 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_621|, 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_224|, 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_463|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_198|, #NULL.base=|v_#NULL.base_48|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_245|, 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_831|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_109|, #memory_int=|v_#memory_int_1089|, ~#a~0.offset=|v_~#a~0.offset_458|, ~x~0=v_~x~0_362, 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] 167320#[L702-6]don't care [1068] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_643| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_301|))) (and (= |v_ULTIMATE.start_main_#t~pre5#1_217| |v_#pthreadsForks_154|) (= |v_#memory_int_911| (store |v_#memory_int_912| |v_ULTIMATE.start_main_~#t~1#1.base_385| (store (select |v_#memory_int_912| |v_ULTIMATE.start_main_~#t~1#1.base_385|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_217|))) (= (select |v_#valid_692| |v_ULTIMATE.start_main_~#t~1#1.base_385|) 1) (< |v_ULTIMATE.start_main_~i~0#1_643| |v_ULTIMATE.start_main_~n~0#1_381|) (= (+ |v_#pthreadsForks_154| 1) |v_#pthreadsForks_153|) (<= 0 .cse0) (<= (+ .cse1 4 |v_ULTIMATE.start_main_~#t~1#1.offset_301|) (select |v_#length_523| |v_ULTIMATE.start_main_~#t~1#1.base_385|))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_643|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_301|, #pthreadsForks=|v_#pthreadsForks_154|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_381|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_385|, #valid=|v_#valid_692|, #memory_int=|v_#memory_int_912|, #length=|v_#length_523|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_217|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_643|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_301|, #pthreadsForks=|v_#pthreadsForks_153|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_381|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_385|, #valid=|v_#valid_692|, #memory_int=|v_#memory_int_911|, #length=|v_#length_523|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 170690#[L703-3]don't care [1004] L703-3-->thrENTRY: Formula: (and (= |v_thrThread1of5ForFork0_#in~arg.offset_4| 0) (= v_thrThread1of5ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_188|) (= |v_thrThread1of5ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_188|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_188|, 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] 168676#[L703-4, thrENTRY]don't care [1042] thrENTRY-->L694: Formula: (and (= v_thrThread1of5ForFork0_~arg.offset_5 |v_thrThread1of5ForFork0_#in~arg.offset_5|) (= |v_thrThread1of5ForFork0_#in~arg.base_5| v_thrThread1of5ForFork0_~arg.base_5) (= v_thrThread1of5ForFork0_~t~0_13 v_~x~0_286)) 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_286} 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_286, thrThread1of5ForFork0_~t~0=v_thrThread1of5ForFork0_~t~0_13} AuxVars[] AssignedVars[thrThread1of5ForFork0_~arg.offset, thrThread1of5ForFork0_~arg.base, thrThread1of5ForFork0_~t~0] 168678#[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] 155268#[L703-5, L694]don't care [1078] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_668| 1) |v_ULTIMATE.start_main_~i~0#1_667|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_668|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_667|, 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] 170886#[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] 170798#[L705-5, L694]don't care [1049] L705-5-->L706-1: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_623| 4))) (let ((.cse1 (+ .cse0 |v_ULTIMATE.start_main_~#t~1#1.offset_295|))) (and (<= (+ .cse0 4 |v_ULTIMATE.start_main_~#t~1#1.offset_295|) (select |v_#length_509| |v_ULTIMATE.start_main_~#t~1#1.base_379|)) (= 1 (select |v_#valid_678| |v_ULTIMATE.start_main_~#t~1#1.base_379|)) (= |v_ULTIMATE.start_main_#t~mem8#1_148| (select (select |v_#memory_int_887| |v_ULTIMATE.start_main_~#t~1#1.base_379|) .cse1)) (< |v_ULTIMATE.start_main_~i~0#1_623| |v_ULTIMATE.start_main_~n~0#1_371|) (<= 0 .cse1)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_623|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_295|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_371|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_379|, #valid=|v_#valid_678|, #memory_int=|v_#memory_int_887|, #length=|v_#length_509|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_623|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_148|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_295|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_371|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_379|, #valid=|v_#valid_678|, #memory_int=|v_#memory_int_887|, #length=|v_#length_509|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~mem8#1] 144718#[L694, L706-1]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] 144720#[L694-1, L706-1]don't care [1052] L694-1-->thrEXIT: Formula: (= (+ v_thrThread1of5ForFork0_~t~0_17 1) v_~x~0_301) InVars {thrThread1of5ForFork0_~t~0=v_thrThread1of5ForFork0_~t~0_17} OutVars{~x~0=v_~x~0_301, thrThread1of5ForFork0_~t~0=v_thrThread1of5ForFork0_~t~0_17} AuxVars[] AssignedVars[~x~0] 169888#[thrEXIT, L706-1]don't care [1009] thrEXIT-->L706-2: Formula: (= (let ((.cse0 (mod |v_ULTIMATE.start_main_#t~mem8#1_137| 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_137|, thrThread1of5ForFork0_thidvar0=v_thrThread1of5ForFork0_thidvar0_4} OutVars{ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_137|, thrThread1of5ForFork0_thidvar0=v_thrThread1of5ForFork0_thidvar0_4} AuxVars[] AssignedVars[] 147538#[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] 133612#[L705-2]don't care [1077] L705-2-->L705-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_663| (+ |v_ULTIMATE.start_main_~i~0#1_664| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_664|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_663|, 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] 133614#[L705-5]don't care [1075] L705-5-->L709-6: Formula: (and (= |v_ULTIMATE.start_main_~i~0#1_649| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_650| |v_ULTIMATE.start_main_~n~0#1_385|)) (= |v_ULTIMATE.start_main_~sum~0#1_265| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_650|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_385|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_649|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_265|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_385|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1] 148600#[L709-6]don't care [2022-07-22 12:14:48,270 INFO L750 eck$LassoCheckResult]: Loop: 148600#[L709-6]don't care [1091] L709-6-->L709-6: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_700| 4))) (let ((.cse0 (+ |v_~#a~0.offset_432| .cse1))) (and (<= 0 .cse0) (= |v_ULTIMATE.start_main_~sum~0#1_277| (+ |v_ULTIMATE.start_main_~sum~0#1_278| (select (select |v_#memory_int_1041| |v_~#a~0.base_437|) .cse0))) (= (+ |v_ULTIMATE.start_main_~i~0#1_700| 1) |v_ULTIMATE.start_main_~i~0#1_699|) (< |v_ULTIMATE.start_main_~i~0#1_700| |v_ULTIMATE.start_main_~n~0#1_409|) (<= (+ |v_~#a~0.offset_432| 4 .cse1) (select |v_#length_587| |v_~#a~0.base_437|)) (= (select |v_#valid_783| |v_~#a~0.base_437|) 1)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_700|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_278|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_409|, #valid=|v_#valid_783|, #memory_int=|v_#memory_int_1041|, ~#a~0.base=|v_~#a~0.base_437|, ~#a~0.offset=|v_~#a~0.offset_432|, #length=|v_#length_587|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_699|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_277|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_409|, #valid=|v_#valid_783|, #memory_int=|v_#memory_int_1041|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_126|, ~#a~0.base=|v_~#a~0.base_437|, ~#a~0.offset=|v_~#a~0.offset_432|, #length=|v_#length_587|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_192|} 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] 148600#[L709-6]don't care [2022-07-22 12:14:48,271 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:48,271 INFO L85 PathProgramCache]: Analyzing trace with hash -238014453, now seen corresponding path program 1 times [2022-07-22 12:14:48,271 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:48,271 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1479880010] [2022-07-22 12:14:48,271 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:48,271 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:48,305 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 12:14:48,331 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-22 12:14:48,331 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-22 12:14:48,332 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1479880010] [2022-07-22 12:14:48,332 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1479880010] provided 0 perfect and 1 imperfect interpolant sequences [2022-07-22 12:14:48,332 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [923214305] [2022-07-22 12:14:48,332 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:48,332 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-22 12:14:48,333 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-22 12:14:48,335 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-22 12:14:48,351 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-22 12:14:48,429 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 12:14:48,430 INFO L263 TraceCheckSpWp]: Trace formula consists of 125 conjuncts, 8 conjunts are in the unsatisfiable core [2022-07-22 12:14:48,432 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-22 12:14:48,482 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-22 12:14:48,482 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-22 12:14:48,502 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-22 12:14:48,503 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [923214305] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-22 12:14:48,503 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-07-22 12:14:48,503 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 3, 3] total 7 [2022-07-22 12:14:48,503 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [154613162] [2022-07-22 12:14:48,503 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-07-22 12:14:48,504 INFO L753 eck$LassoCheckResult]: stem already infeasible [2022-07-22 12:14:48,504 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:48,504 INFO L85 PathProgramCache]: Analyzing trace with hash 1122, now seen corresponding path program 3 times [2022-07-22 12:14:48,505 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:48,505 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [447089085] [2022-07-22 12:14:48,505 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:48,505 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:48,511 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:48,511 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:14:48,521 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:48,526 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:14:48,558 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-22 12:14:48,559 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-07-22 12:14:48,559 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=27, Invalid=29, Unknown=0, NotChecked=0, Total=56 [2022-07-22 12:14:48,559 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-22 12:14:49,120 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-22 12:14:49,121 INFO L93 Difference]: Finished difference Result 19291 states and 81751 transitions. [2022-07-22 12:14:49,121 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 19291 states and 81751 transitions. [2022-07-22 12:14:49,382 INFO L131 ngComponentsAnalysis]: Automaton has 3125 accepting balls. 3125 [2022-07-22 12:14:49,992 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 19291 states to 19291 states and 81751 transitions. [2022-07-22 12:14:49,993 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 19291 [2022-07-22 12:14:50,044 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 19291 [2022-07-22 12:14:50,044 INFO L73 IsDeterministic]: Start isDeterministic. Operand 19291 states and 81751 transitions. [2022-07-22 12:14:50,093 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-22 12:14:50,093 INFO L220 hiAutomatonCegarLoop]: Abstraction has 19291 states and 81751 transitions. [2022-07-22 12:14:50,150 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 19291 states and 81751 transitions. [2022-07-22 12:14:50,886 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 19291 to 19291. [2022-07-22 12:14:50,932 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-22 12:14:51,069 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19291 states to 19291 states and 81751 transitions. [2022-07-22 12:14:51,069 INFO L242 hiAutomatonCegarLoop]: Abstraction has 19291 states and 81751 transitions. [2022-07-22 12:14:51,070 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-07-22 12:14:51,072 INFO L425 stractBuchiCegarLoop]: Abstraction has 19291 states and 81751 transitions. [2022-07-22 12:14:51,073 INFO L332 stractBuchiCegarLoop]: ======== Iteration 4 ============ [2022-07-22 12:14:51,073 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 19291 states and 81751 transitions. [2022-07-22 12:14:51,309 INFO L131 ngComponentsAnalysis]: Automaton has 3125 accepting balls. 3125 [2022-07-22 12:14:51,310 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:14:51,310 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:14:51,312 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [6, 5, 5, 1, 1, 1, 1, 1, 1, 1] [2022-07-22 12:14:51,312 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:14:51,314 INFO L748 eck$LassoCheckResult]: Stem: 225336#[ULTIMATE.startENTRY]don't care [1102] ULTIMATE.startENTRY-->L702-6: Formula: (let ((.cse0 (select |v_#memory_int_1090| 1))) (and (= |v_ULTIMATE.start_main_#in~argv#1.offset_97| |v_ULTIMATE.start_main_~argv#1.offset_91|) (= (ite (and (<= |v_ULTIMATE.start_main_~n~0#1_431| 10) (<= 5 |v_ULTIMATE.start_main_~n~0#1_431|)) 1 0) |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_97|) (= (select |v_#valid_832| |v_ULTIMATE.start_main_~#t~1#1.base_471|) 0) (= |v_~#a~0.offset_458| 0) (= |v_#NULL.base_48| 0) (= |v_#NULL.offset_48| 0) (= 3 |v_~#a~0.base_463|) (< |v_#StackHeapBarrier_111| |v_ULTIMATE.start_main_~#t~1#1.base_471|) (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_127| 0)) (< 0 |v_#StackHeapBarrier_111|) (= |v_#valid_831| (store |v_#valid_832| |v_ULTIMATE.start_main_~#t~1#1.base_471| 1)) (= (store |v_#length_622| |v_ULTIMATE.start_main_~#t~1#1.base_471| 40) |v_#length_621|) (= v_~x~0_362 0) (= (select |v_#valid_832| 0) 0) (= |v_ULTIMATE.start_main_#in~argv#1.offset_97| |v_ULTIMATE.start_#in~argv#1.offset_62|) (= |v_ULTIMATE.start_#in~argv#1.base_62| |v_ULTIMATE.start_main_#in~argv#1.base_97|) (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_127| |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_97|) (= (select .cse0 1) 0) (= 0 |v_ULTIMATE.start_main_~#t~1#1.offset_361|) (= (select .cse0 0) 48) (= 1 (select |v_#valid_832| 2)) (= (select |v_#valid_832| 3) 1) (= (let ((.cse1 (mod |v_ULTIMATE.start_main_#t~nondet3#1_181| 4294967296))) (ite (<= .cse1 2147483647) .cse1 (+ (- 4294967296) .cse1))) |v_ULTIMATE.start_main_~n~0#1_431|) (= 2 (select |v_#length_622| 1)) (= 40 (select |v_#length_622| 3)) (= |v_ULTIMATE.start_main_#in~argv#1.base_97| |v_ULTIMATE.start_main_~argv#1.base_91|) (= |v_ULTIMATE.start_main_~argc#1_85| |v_ULTIMATE.start_main_#in~argc#1_95|) (= |v_ULTIMATE.start_#in~argc#1_62| |v_ULTIMATE.start_main_#in~argc#1_95|) (= |v_#memory_int_1089| (store |v_#memory_int_1090| |v_~#a~0.base_463| (store ((as const (Array Int Int)) 0) |v_~#a~0.offset_458| 0))) (= (select |v_#valid_832| 1) 1) (= (select |v_#length_622| 2) 9) (= |v_ULTIMATE.start_main_~i~0#1_729| 0))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_62|, #StackHeapBarrier=|v_#StackHeapBarrier_111|, #valid=|v_#valid_832|, #memory_int=|v_#memory_int_1090|, #length=|v_#length_622|, 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_361|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_178|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_471|, #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_729|, 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_287|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_431|, 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_621|, 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_224|, 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_463|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_198|, #NULL.base=|v_#NULL.base_48|, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_245|, 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_831|, ULTIMATE.start_main_#t~post7#1=|v_ULTIMATE.start_main_#t~post7#1_109|, #memory_int=|v_#memory_int_1089|, ~#a~0.offset=|v_~#a~0.offset_458|, ~x~0=v_~x~0_362, 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] 225338#[L702-6]don't care [1068] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_643| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_301|))) (and (= |v_ULTIMATE.start_main_#t~pre5#1_217| |v_#pthreadsForks_154|) (= |v_#memory_int_911| (store |v_#memory_int_912| |v_ULTIMATE.start_main_~#t~1#1.base_385| (store (select |v_#memory_int_912| |v_ULTIMATE.start_main_~#t~1#1.base_385|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_217|))) (= (select |v_#valid_692| |v_ULTIMATE.start_main_~#t~1#1.base_385|) 1) (< |v_ULTIMATE.start_main_~i~0#1_643| |v_ULTIMATE.start_main_~n~0#1_381|) (= (+ |v_#pthreadsForks_154| 1) |v_#pthreadsForks_153|) (<= 0 .cse0) (<= (+ .cse1 4 |v_ULTIMATE.start_main_~#t~1#1.offset_301|) (select |v_#length_523| |v_ULTIMATE.start_main_~#t~1#1.base_385|))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_643|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_301|, #pthreadsForks=|v_#pthreadsForks_154|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_381|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_385|, #valid=|v_#valid_692|, #memory_int=|v_#memory_int_912|, #length=|v_#length_523|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_217|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_643|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_301|, #pthreadsForks=|v_#pthreadsForks_153|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_381|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_385|, #valid=|v_#valid_692|, #memory_int=|v_#memory_int_911|, #length=|v_#length_523|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 228668#[L703-3]don't care [1004] L703-3-->thrENTRY: Formula: (and (= |v_thrThread1of5ForFork0_#in~arg.offset_4| 0) (= v_thrThread1of5ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_188|) (= |v_thrThread1of5ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_188|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_188|, 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] 226690#[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] 213346#[L703-5, thrENTRY]don't care [1078] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_668| 1) |v_ULTIMATE.start_main_~i~0#1_667|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_668|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_667|, 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] 213350#[L702-6, thrENTRY]don't care [1068] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_643| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_301|))) (and (= |v_ULTIMATE.start_main_#t~pre5#1_217| |v_#pthreadsForks_154|) (= |v_#memory_int_911| (store |v_#memory_int_912| |v_ULTIMATE.start_main_~#t~1#1.base_385| (store (select |v_#memory_int_912| |v_ULTIMATE.start_main_~#t~1#1.base_385|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_217|))) (= (select |v_#valid_692| |v_ULTIMATE.start_main_~#t~1#1.base_385|) 1) (< |v_ULTIMATE.start_main_~i~0#1_643| |v_ULTIMATE.start_main_~n~0#1_381|) (= (+ |v_#pthreadsForks_154| 1) |v_#pthreadsForks_153|) (<= 0 .cse0) (<= (+ .cse1 4 |v_ULTIMATE.start_main_~#t~1#1.offset_301|) (select |v_#length_523| |v_ULTIMATE.start_main_~#t~1#1.base_385|))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_643|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_301|, #pthreadsForks=|v_#pthreadsForks_154|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_381|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_385|, #valid=|v_#valid_692|, #memory_int=|v_#memory_int_912|, #length=|v_#length_523|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_217|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_643|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_301|, #pthreadsForks=|v_#pthreadsForks_153|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_381|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_385|, #valid=|v_#valid_692|, #memory_int=|v_#memory_int_911|, #length=|v_#length_523|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 215406#[L703-3, thrENTRY]don't care [1005] L703-3-->thrENTRY: Formula: (and (= |v_ULTIMATE.start_main_#t~pre5#1_190| 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_190|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_190|, 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] 215410#[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] 194024#[L703-5, thrENTRY, thrENTRY]don't care [1078] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_668| 1) |v_ULTIMATE.start_main_~i~0#1_667|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_668|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_667|, 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] 194030#[thrENTRY, L702-6, thrENTRY]don't care [1068] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_643| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_301|))) (and (= |v_ULTIMATE.start_main_#t~pre5#1_217| |v_#pthreadsForks_154|) (= |v_#memory_int_911| (store |v_#memory_int_912| |v_ULTIMATE.start_main_~#t~1#1.base_385| (store (select |v_#memory_int_912| |v_ULTIMATE.start_main_~#t~1#1.base_385|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_217|))) (= (select |v_#valid_692| |v_ULTIMATE.start_main_~#t~1#1.base_385|) 1) (< |v_ULTIMATE.start_main_~i~0#1_643| |v_ULTIMATE.start_main_~n~0#1_381|) (= (+ |v_#pthreadsForks_154| 1) |v_#pthreadsForks_153|) (<= 0 .cse0) (<= (+ .cse1 4 |v_ULTIMATE.start_main_~#t~1#1.offset_301|) (select |v_#length_523| |v_ULTIMATE.start_main_~#t~1#1.base_385|))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_643|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_301|, #pthreadsForks=|v_#pthreadsForks_154|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_381|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_385|, #valid=|v_#valid_692|, #memory_int=|v_#memory_int_912|, #length=|v_#length_523|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_217|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_643|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_301|, #pthreadsForks=|v_#pthreadsForks_153|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_381|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_385|, #valid=|v_#valid_692|, #memory_int=|v_#memory_int_911|, #length=|v_#length_523|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 212700#[thrENTRY, thrENTRY, L703-3]don't care [1006] L703-3-->thrENTRY: Formula: (and (= v_thrThread3of5ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_192|) (= |v_thrThread3of5ForFork0_#in~arg.offset_4| 0) (= |v_thrThread3of5ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_192|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_192|, 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] 212706#[thrENTRY, 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] 228788#[thrENTRY, thrENTRY, L703-5, thrENTRY]don't care [1078] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_668| 1) |v_ULTIMATE.start_main_~i~0#1_667|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_668|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_667|, 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] 215248#[L702-6, thrENTRY, thrENTRY, thrENTRY]don't care [1068] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_643| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_301|))) (and (= |v_ULTIMATE.start_main_#t~pre5#1_217| |v_#pthreadsForks_154|) (= |v_#memory_int_911| (store |v_#memory_int_912| |v_ULTIMATE.start_main_~#t~1#1.base_385| (store (select |v_#memory_int_912| |v_ULTIMATE.start_main_~#t~1#1.base_385|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_217|))) (= (select |v_#valid_692| |v_ULTIMATE.start_main_~#t~1#1.base_385|) 1) (< |v_ULTIMATE.start_main_~i~0#1_643| |v_ULTIMATE.start_main_~n~0#1_381|) (= (+ |v_#pthreadsForks_154| 1) |v_#pthreadsForks_153|) (<= 0 .cse0) (<= (+ .cse1 4 |v_ULTIMATE.start_main_~#t~1#1.offset_301|) (select |v_#length_523| |v_ULTIMATE.start_main_~#t~1#1.base_385|))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_643|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_301|, #pthreadsForks=|v_#pthreadsForks_154|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_381|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_385|, #valid=|v_#valid_692|, #memory_int=|v_#memory_int_912|, #length=|v_#length_523|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_217|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_643|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_301|, #pthreadsForks=|v_#pthreadsForks_153|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_381|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_385|, #valid=|v_#valid_692|, #memory_int=|v_#memory_int_911|, #length=|v_#length_523|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 215254#[thrENTRY, thrENTRY, L703-3, thrENTRY]don't care [1007] L703-3-->thrENTRY: Formula: (and (= |v_thrThread4of5ForFork0_#in~arg.base_4| 0) (= |v_thrThread4of5ForFork0_#in~arg.offset_4| 0) (= v_thrThread4of5ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_194|)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_194|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_194|, 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] 220322#[L703-4, thrENTRY, 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] 228578#[thrENTRY, thrENTRY, L703-5, thrENTRY, thrENTRY]don't care [1078] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_668| 1) |v_ULTIMATE.start_main_~i~0#1_667|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_668|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_667|, 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] 213428#[L702-6, thrENTRY, thrENTRY, thrENTRY, thrENTRY]don't care [1068] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_643| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_301|))) (and (= |v_ULTIMATE.start_main_#t~pre5#1_217| |v_#pthreadsForks_154|) (= |v_#memory_int_911| (store |v_#memory_int_912| |v_ULTIMATE.start_main_~#t~1#1.base_385| (store (select |v_#memory_int_912| |v_ULTIMATE.start_main_~#t~1#1.base_385|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_217|))) (= (select |v_#valid_692| |v_ULTIMATE.start_main_~#t~1#1.base_385|) 1) (< |v_ULTIMATE.start_main_~i~0#1_643| |v_ULTIMATE.start_main_~n~0#1_381|) (= (+ |v_#pthreadsForks_154| 1) |v_#pthreadsForks_153|) (<= 0 .cse0) (<= (+ .cse1 4 |v_ULTIMATE.start_main_~#t~1#1.offset_301|) (select |v_#length_523| |v_ULTIMATE.start_main_~#t~1#1.base_385|))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_643|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_301|, #pthreadsForks=|v_#pthreadsForks_154|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_381|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_385|, #valid=|v_#valid_692|, #memory_int=|v_#memory_int_912|, #length=|v_#length_523|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_217|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_643|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_301|, #pthreadsForks=|v_#pthreadsForks_153|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_381|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_385|, #valid=|v_#valid_692|, #memory_int=|v_#memory_int_911|, #length=|v_#length_523|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 213438#[thrENTRY, thrENTRY, L703-3, thrENTRY, thrENTRY]don't care [1008] L703-3-->thrENTRY: Formula: (and (= |v_thrThread5of5ForFork0_#in~arg.base_4| 0) (= v_thrThread5of5ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_196|) (= |v_thrThread5of5ForFork0_#in~arg.offset_4| 0)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_196|} OutVars{thrThread5of5ForFork0_~t~0=v_thrThread5of5ForFork0_~t~0_8, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_196|, 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] 195400#[thrENTRY, L703-4, thrENTRY, 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] 195410#[thrENTRY, thrENTRY, thrENTRY, thrENTRY, L703-5, thrENTRY]don't care [1078] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_668| 1) |v_ULTIMATE.start_main_~i~0#1_667|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_668|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_667|, 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] 228700#[thrENTRY, L702-6, thrENTRY, thrENTRY, thrENTRY, thrENTRY]don't care [1068] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_643| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_301|))) (and (= |v_ULTIMATE.start_main_#t~pre5#1_217| |v_#pthreadsForks_154|) (= |v_#memory_int_911| (store |v_#memory_int_912| |v_ULTIMATE.start_main_~#t~1#1.base_385| (store (select |v_#memory_int_912| |v_ULTIMATE.start_main_~#t~1#1.base_385|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_217|))) (= (select |v_#valid_692| |v_ULTIMATE.start_main_~#t~1#1.base_385|) 1) (< |v_ULTIMATE.start_main_~i~0#1_643| |v_ULTIMATE.start_main_~n~0#1_381|) (= (+ |v_#pthreadsForks_154| 1) |v_#pthreadsForks_153|) (<= 0 .cse0) (<= (+ .cse1 4 |v_ULTIMATE.start_main_~#t~1#1.offset_301|) (select |v_#length_523| |v_ULTIMATE.start_main_~#t~1#1.base_385|))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_643|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_301|, #pthreadsForks=|v_#pthreadsForks_154|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_381|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_385|, #valid=|v_#valid_692|, #memory_int=|v_#memory_int_912|, #length=|v_#length_523|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_217|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_643|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_301|, #pthreadsForks=|v_#pthreadsForks_153|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_381|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_385|, #valid=|v_#valid_692|, #memory_int=|v_#memory_int_911|, #length=|v_#length_523|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 225854#[thrENTRY, L703-3, thrENTRY, thrENTRY, thrENTRY, thrENTRY]don't care [1002] L703-3-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 217224#[thrENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, thrENTRY, thrENTRY, thrENTRY, thrENTRY]don't care [2022-07-22 12:14:51,314 INFO L750 eck$LassoCheckResult]: Loop: 217224#[thrENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, thrENTRY, thrENTRY, thrENTRY, thrENTRY]don't care [1003] ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 217224#[thrENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, thrENTRY, thrENTRY, thrENTRY, thrENTRY]don't care [2022-07-22 12:14:51,314 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:51,314 INFO L85 PathProgramCache]: Analyzing trace with hash -1659448857, now seen corresponding path program 1 times [2022-07-22 12:14:51,315 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:51,315 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [273119499] [2022-07-22 12:14:51,315 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:51,315 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:51,363 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:51,363 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:14:51,389 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:51,409 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:14:51,413 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:51,413 INFO L85 PathProgramCache]: Analyzing trace with hash 1034, now seen corresponding path program 1 times [2022-07-22 12:14:51,413 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:51,413 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1362615917] [2022-07-22 12:14:51,414 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:51,414 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:51,421 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:51,421 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:14:51,422 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:51,424 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:14:51,424 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:14:51,424 INFO L85 PathProgramCache]: Analyzing trace with hash 96693988, now seen corresponding path program 1 times [2022-07-22 12:14:51,425 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:14:51,425 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1184521125] [2022-07-22 12:14:51,425 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:14:51,425 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:14:51,446 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:51,447 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:14:51,461 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:14:51,469 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:14:55,447 WARN L146 chiAutomizerObserver]: 5 thread instances were not sufficient, I will increase this number and restart the analysis [2022-07-22 12:14:55,465 INFO L144 ThreadInstanceAdder]: Constructed 6 joinOtherThreadTransitions. [2022-07-22 12:14:55,472 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 123 places, 123 transitions, 324 flow [2022-07-22 12:14:55,951 INFO L129 PetriNetUnfolder]: 400/2514 cut-off events. [2022-07-22 12:14:55,952 INFO L130 PetriNetUnfolder]: For 242/242 co-relation queries the response was YES. [2022-07-22 12:14:55,967 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-22 12:14:55,968 INFO L82 GeneralOperation]: Start removeDead. Operand has 123 places, 123 transitions, 324 flow [2022-07-22 12:14:56,026 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 123 places, 123 transitions, 324 flow [2022-07-22 12:14:56,026 INFO L115 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-07-22 12:14:56,027 INFO L131 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 123 places, 123 transitions, 324 flow [2022-07-22 12:14:56,027 INFO L110 LiptonReduction]: Starting Lipton reduction on Petri net that has 123 places, 123 transitions, 324 flow [2022-07-22 12:14:56,027 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 123 places, 123 transitions, 324 flow [2022-07-22 12:14:56,667 INFO L129 PetriNetUnfolder]: 400/2514 cut-off events. [2022-07-22 12:14:56,667 INFO L130 PetriNetUnfolder]: For 242/242 co-relation queries the response was YES. [2022-07-22 12:14:56,678 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-22 12:14:56,723 INFO L116 LiptonReduction]: Number of co-enabled transitions 4080 [2022-07-22 12:15:00,195 INFO L131 LiptonReduction]: Checked pairs total: 17373 [2022-07-22 12:15:00,195 INFO L133 LiptonReduction]: Total number of compositions: 96 [2022-07-22 12:15:00,197 INFO L300 stractBuchiCegarLoop]: Interprodecural is true [2022-07-22 12:15:00,197 INFO L301 stractBuchiCegarLoop]: Hoare is false [2022-07-22 12:15:00,198 INFO L302 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2022-07-22 12:15:00,198 INFO L303 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2022-07-22 12:15:00,198 INFO L304 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2022-07-22 12:15:00,198 INFO L305 stractBuchiCegarLoop]: Difference is false [2022-07-22 12:15:00,198 INFO L306 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2022-07-22 12:15:00,198 INFO L310 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2022-07-22 12:15:00,198 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 0 states, but on-demand construction may add more states [2022-07-22 12:15:14,838 INFO L131 ngComponentsAnalysis]: Automaton has 19721 accepting balls. 19721 [2022-07-22 12:15:14,838 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:15:14,838 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:15:14,846 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2022-07-22 12:15:14,846 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:15:14,846 INFO L332 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2022-07-22 12:15:14,846 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 111496 states, but on-demand construction may add more states [2022-07-22 12:15:18,217 INFO L131 ngComponentsAnalysis]: Automaton has 19721 accepting balls. 19721 [2022-07-22 12:15:18,217 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:15:18,217 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:15:18,225 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2022-07-22 12:15:18,226 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:15:18,227 INFO L748 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_~i~0#1_818| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_819| |v_ULTIMATE.start_main_~n~0#1_463|)) (= |v_ULTIMATE.start_main_~sum~0#1_318| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_819|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_463|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_818|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_318|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_463|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1] 135#[L709-6]don't care [2022-07-22 12:15:18,228 INFO L750 eck$LassoCheckResult]: Loop: 135#[L709-6]don't care [1304] L709-6-->L709-6: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_839| 4))) (let ((.cse1 (+ .cse0 |v_~#a~0.offset_600|))) (and (<= (+ .cse0 |v_~#a~0.offset_600| 4) (select |v_#length_782| |v_~#a~0.base_605|)) (= (+ (select (select |v_#memory_int_1461| |v_~#a~0.base_605|) .cse1) |v_ULTIMATE.start_main_~sum~0#1_327|) |v_ULTIMATE.start_main_~sum~0#1_326|) (<= 0 .cse1) (= (select |v_#valid_1041| |v_~#a~0.base_605|) 1) (< |v_ULTIMATE.start_main_~i~0#1_839| |v_ULTIMATE.start_main_~n~0#1_471|) (= |v_ULTIMATE.start_main_~i~0#1_838| (+ |v_ULTIMATE.start_main_~i~0#1_839| 1))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_839|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_327|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_471|, #valid=|v_#valid_1041|, #memory_int=|v_#memory_int_1461|, ~#a~0.base=|v_~#a~0.base_605|, ~#a~0.offset=|v_~#a~0.offset_600|, #length=|v_#length_782|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_838|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_326|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_471|, #valid=|v_#valid_1041|, #memory_int=|v_#memory_int_1461|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_154|, ~#a~0.base=|v_~#a~0.base_605|, ~#a~0.offset=|v_~#a~0.offset_600|, #length=|v_#length_782|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_230|} 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-22 12:15:18,228 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:15:18,228 INFO L85 PathProgramCache]: Analyzing trace with hash 1347010, now seen corresponding path program 1 times [2022-07-22 12:15:18,228 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:15:18,229 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [422443441] [2022-07-22 12:15:18,229 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:15:18,229 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:15:18,245 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 12:15:18,268 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-22 12:15:18,268 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-22 12:15:18,269 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [422443441] [2022-07-22 12:15:18,269 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [422443441] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-22 12:15:18,269 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-07-22 12:15:18,269 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-07-22 12:15:18,269 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1600282052] [2022-07-22 12:15:18,269 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-22 12:15:18,270 INFO L753 eck$LassoCheckResult]: stem already infeasible [2022-07-22 12:15:18,270 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:15:18,270 INFO L85 PathProgramCache]: Analyzing trace with hash 1335, now seen corresponding path program 1 times [2022-07-22 12:15:18,270 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:15:18,270 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [618659727] [2022-07-22 12:15:18,271 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:15:18,271 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:15:18,276 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:15:18,276 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:15:18,278 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:15:18,281 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:15:18,319 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-22 12:15:18,319 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-07-22 12:15:18,319 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-07-22 12:15:18,320 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-22 12:15:20,634 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-22 12:15:20,634 INFO L93 Difference]: Finished difference Result 111497 states and 547619 transitions. [2022-07-22 12:15:20,634 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 111497 states and 547619 transitions. [2022-07-22 12:15:24,992 INFO L131 ngComponentsAnalysis]: Automaton has 19721 accepting balls. 19721 [2022-07-22 12:15:27,491 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 111497 states to 95871 states and 475743 transitions. [2022-07-22 12:15:27,492 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 95871 [2022-07-22 12:15:28,577 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 95871 [2022-07-22 12:15:28,580 INFO L73 IsDeterministic]: Start isDeterministic. Operand 95871 states and 475743 transitions. [2022-07-22 12:15:29,227 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-22 12:15:29,227 INFO L220 hiAutomatonCegarLoop]: Abstraction has 95871 states and 475743 transitions. [2022-07-22 12:15:29,607 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 95871 states and 475743 transitions. [2022-07-22 12:15:33,579 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 95871 to 95871. [2022-07-22 12:15:33,847 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-22 12:15:35,425 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 95871 states to 95871 states and 475743 transitions. [2022-07-22 12:15:35,426 INFO L242 hiAutomatonCegarLoop]: Abstraction has 95871 states and 475743 transitions. [2022-07-22 12:15:35,426 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-07-22 12:15:35,427 INFO L425 stractBuchiCegarLoop]: Abstraction has 95871 states and 475743 transitions. [2022-07-22 12:15:35,427 INFO L332 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2022-07-22 12:15:35,427 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 95871 states and 475743 transitions. [2022-07-22 12:15:37,790 INFO L131 ngComponentsAnalysis]: Automaton has 19721 accepting balls. 19721 [2022-07-22 12:15:37,790 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:15:37,790 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:15:37,799 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1] [2022-07-22 12:15:37,799 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:15:37,800 INFO L748 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 ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_796| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_376|))) (and (= |v_#memory_int_1343| (store |v_#memory_int_1344| |v_ULTIMATE.start_main_~#t~1#1.base_512| (store (select |v_#memory_int_1344| |v_ULTIMATE.start_main_~#t~1#1.base_512|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_283|))) (<= (+ .cse1 4 |v_ULTIMATE.start_main_~#t~1#1.offset_376|) (select |v_#length_728| |v_ULTIMATE.start_main_~#t~1#1.base_512|)) (< |v_ULTIMATE.start_main_~i~0#1_796| |v_ULTIMATE.start_main_~n~0#1_453|) (<= 0 .cse0) (= |v_ULTIMATE.start_main_#t~pre5#1_283| |v_#pthreadsForks_209|) (= (select |v_#valid_970| |v_ULTIMATE.start_main_~#t~1#1.base_512|) 1) (= (+ |v_#pthreadsForks_209| 1) |v_#pthreadsForks_208|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_796|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_376|, #pthreadsForks=|v_#pthreadsForks_209|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_453|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_512|, #valid=|v_#valid_970|, #memory_int=|v_#memory_int_1344|, #length=|v_#length_728|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_283|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_796|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_376|, #pthreadsForks=|v_#pthreadsForks_208|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_453|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_512|, #valid=|v_#valid_970|, #memory_int=|v_#memory_int_1343|, #length=|v_#length_728|} 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_264|) (= |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_264|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_264|, 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#[L703-4, thrENTRY]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_825| 1) |v_ULTIMATE.start_main_~i~0#1_824|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_825|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_824|, 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#[L705-5, thrENTRY]don't care [1300] L705-5-->L709-6: Formula: (and (= |v_ULTIMATE.start_main_~i~0#1_818| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_819| |v_ULTIMATE.start_main_~n~0#1_463|)) (= |v_ULTIMATE.start_main_~sum~0#1_318| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_819|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_463|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_818|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_318|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_463|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1] 505056#[L709-6, thrENTRY]don't care [2022-07-22 12:15:37,800 INFO L750 eck$LassoCheckResult]: Loop: 505056#[L709-6, thrENTRY]don't care [1304] L709-6-->L709-6: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_839| 4))) (let ((.cse1 (+ .cse0 |v_~#a~0.offset_600|))) (and (<= (+ .cse0 |v_~#a~0.offset_600| 4) (select |v_#length_782| |v_~#a~0.base_605|)) (= (+ (select (select |v_#memory_int_1461| |v_~#a~0.base_605|) .cse1) |v_ULTIMATE.start_main_~sum~0#1_327|) |v_ULTIMATE.start_main_~sum~0#1_326|) (<= 0 .cse1) (= (select |v_#valid_1041| |v_~#a~0.base_605|) 1) (< |v_ULTIMATE.start_main_~i~0#1_839| |v_ULTIMATE.start_main_~n~0#1_471|) (= |v_ULTIMATE.start_main_~i~0#1_838| (+ |v_ULTIMATE.start_main_~i~0#1_839| 1))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_839|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_327|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_471|, #valid=|v_#valid_1041|, #memory_int=|v_#memory_int_1461|, ~#a~0.base=|v_~#a~0.base_605|, ~#a~0.offset=|v_~#a~0.offset_600|, #length=|v_#length_782|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_838|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_326|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_471|, #valid=|v_#valid_1041|, #memory_int=|v_#memory_int_1461|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_154|, ~#a~0.base=|v_~#a~0.base_605|, ~#a~0.offset=|v_~#a~0.offset_600|, #length=|v_#length_782|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_230|} 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#[L709-6, thrENTRY]don't care [2022-07-22 12:15:37,801 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:15:37,801 INFO L85 PathProgramCache]: Analyzing trace with hash -1414066379, now seen corresponding path program 1 times [2022-07-22 12:15:37,801 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:15:37,802 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [684232295] [2022-07-22 12:15:37,802 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:15:37,802 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:15:37,820 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 12:15:37,851 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-22 12:15:37,852 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-22 12:15:37,852 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [684232295] [2022-07-22 12:15:37,852 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [684232295] provided 0 perfect and 1 imperfect interpolant sequences [2022-07-22 12:15:37,852 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [458974568] [2022-07-22 12:15:37,852 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:15:37,853 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-22 12:15:37,853 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-22 12:15:37,858 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-22 12:15:37,861 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-22 12:15:37,934 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 12:15:37,935 INFO L263 TraceCheckSpWp]: Trace formula consists of 97 conjuncts, 4 conjunts are in the unsatisfiable core [2022-07-22 12:15:37,935 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-22 12:15:37,957 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-22 12:15:37,957 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-22 12:15:37,977 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-22 12:15:37,978 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [458974568] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-22 12:15:37,978 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-07-22 12:15:37,978 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 3, 3] total 6 [2022-07-22 12:15:37,978 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1464651377] [2022-07-22 12:15:37,978 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-07-22 12:15:37,978 INFO L753 eck$LassoCheckResult]: stem already infeasible [2022-07-22 12:15:37,979 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:15:37,979 INFO L85 PathProgramCache]: Analyzing trace with hash 1335, now seen corresponding path program 2 times [2022-07-22 12:15:37,979 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:15:37,979 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1501888222] [2022-07-22 12:15:37,979 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:15:37,980 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:15:37,986 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:15:37,987 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:15:37,991 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:15:37,994 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:15:38,029 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-22 12:15:38,030 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-07-22 12:15:38,030 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=35, Unknown=0, NotChecked=0, Total=56 [2022-07-22 12:15:38,031 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-22 12:15:40,811 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-22 12:15:40,812 INFO L93 Difference]: Finished difference Result 109218 states and 523155 transitions. [2022-07-22 12:15:40,812 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 109218 states and 523155 transitions. [2022-07-22 12:15:45,064 INFO L131 ngComponentsAnalysis]: Automaton has 15625 accepting balls. 15625 [2022-07-22 12:15:48,182 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 109218 states to 109218 states and 523155 transitions. [2022-07-22 12:15:48,183 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 109218 [2022-07-22 12:15:48,624 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 109218 [2022-07-22 12:15:48,624 INFO L73 IsDeterministic]: Start isDeterministic. Operand 109218 states and 523155 transitions. [2022-07-22 12:15:48,867 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-22 12:15:48,867 INFO L220 hiAutomatonCegarLoop]: Abstraction has 109218 states and 523155 transitions. [2022-07-22 12:15:49,508 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 109218 states and 523155 transitions. [2022-07-22 12:15:52,524 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 109218 to 93139. [2022-07-22 12:15:52,706 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-22 12:15:54,158 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 93139 states to 93139 states and 455262 transitions. [2022-07-22 12:15:54,159 INFO L242 hiAutomatonCegarLoop]: Abstraction has 93139 states and 455262 transitions. [2022-07-22 12:15:54,159 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-07-22 12:15:54,159 INFO L425 stractBuchiCegarLoop]: Abstraction has 93139 states and 455262 transitions. [2022-07-22 12:15:54,160 INFO L332 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2022-07-22 12:15:54,160 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 93139 states and 455262 transitions. [2022-07-22 12:15:56,671 INFO L131 ngComponentsAnalysis]: Automaton has 15625 accepting balls. 15625 [2022-07-22 12:15:56,671 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:15:56,671 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:15:56,674 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-22 12:15:56,674 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:15:56,675 INFO L748 eck$LassoCheckResult]: Stem: 821531#[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] 821533#[L702-6]don't care [1287] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_796| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_376|))) (and (= |v_#memory_int_1343| (store |v_#memory_int_1344| |v_ULTIMATE.start_main_~#t~1#1.base_512| (store (select |v_#memory_int_1344| |v_ULTIMATE.start_main_~#t~1#1.base_512|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_283|))) (<= (+ .cse1 4 |v_ULTIMATE.start_main_~#t~1#1.offset_376|) (select |v_#length_728| |v_ULTIMATE.start_main_~#t~1#1.base_512|)) (< |v_ULTIMATE.start_main_~i~0#1_796| |v_ULTIMATE.start_main_~n~0#1_453|) (<= 0 .cse0) (= |v_ULTIMATE.start_main_#t~pre5#1_283| |v_#pthreadsForks_209|) (= (select |v_#valid_970| |v_ULTIMATE.start_main_~#t~1#1.base_512|) 1) (= (+ |v_#pthreadsForks_209| 1) |v_#pthreadsForks_208|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_796|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_376|, #pthreadsForks=|v_#pthreadsForks_209|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_453|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_512|, #valid=|v_#valid_970|, #memory_int=|v_#memory_int_1344|, #length=|v_#length_728|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_283|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_796|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_376|, #pthreadsForks=|v_#pthreadsForks_208|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_453|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_512|, #valid=|v_#valid_970|, #memory_int=|v_#memory_int_1343|, #length=|v_#length_728|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 782579#[L703-3]don't care [1221] L703-3-->thrENTRY: Formula: (and (= v_thrThread1of6ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_264|) (= |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_264|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_264|, 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] 753691#[L703-4, thrENTRY]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] 753693#[L703-5, thrENTRY]don't care [1301] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_825| 1) |v_ULTIMATE.start_main_~i~0#1_824|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_825|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_824|, 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] 669611#[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] 669613#[L705-5, thrENTRY]don't care [1272] thrENTRY-->L694: Formula: (and (= v_thrThread1of6ForFork0_~t~0_41 v_~x~0_427) (= 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_427} OutVars{thrThread1of6ForFork0_#in~arg.offset=|v_thrThread1of6ForFork0_#in~arg.offset_5|, thrThread1of6ForFork0_~t~0=v_thrThread1of6ForFork0_~t~0_41, thrThread1of6ForFork0_~arg.offset=v_thrThread1of6ForFork0_~arg.offset_5, thrThread1of6ForFork0_#in~arg.base=|v_thrThread1of6ForFork0_#in~arg.base_5|, ~x~0=v_~x~0_427, thrThread1of6ForFork0_~arg.base=v_thrThread1of6ForFork0_~arg.base_5} AuxVars[] AssignedVars[thrThread1of6ForFork0_~t~0, thrThread1of6ForFork0_~arg.offset, thrThread1of6ForFork0_~arg.base] 799525#[L705-5, L694]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] 818709#[L694-1, L705-5]don't care [1266] L694-1-->thrEXIT: Formula: (= (+ v_thrThread1of6ForFork0_~t~0_39 1) v_~x~0_411) InVars {thrThread1of6ForFork0_~t~0=v_thrThread1of6ForFork0_~t~0_39} OutVars{thrThread1of6ForFork0_~t~0=v_thrThread1of6ForFork0_~t~0_39, ~x~0=v_~x~0_411} AuxVars[] AssignedVars[~x~0] 765889#[thrEXIT, L705-5]don't care [1275] L705-5-->L706-1: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_792| 4))) (let ((.cse1 (+ .cse0 |v_ULTIMATE.start_main_~#t~1#1.offset_374|))) (and (<= (+ .cse0 4 |v_ULTIMATE.start_main_~#t~1#1.offset_374|) (select |v_#length_722| |v_ULTIMATE.start_main_~#t~1#1.base_504|)) (<= 0 .cse1) (< |v_ULTIMATE.start_main_~i~0#1_792| |v_ULTIMATE.start_main_~n~0#1_449|) (= |v_ULTIMATE.start_main_#t~mem8#1_197| (select (select |v_#memory_int_1331| |v_ULTIMATE.start_main_~#t~1#1.base_504|) .cse1)) (= (select |v_#valid_954| |v_ULTIMATE.start_main_~#t~1#1.base_504|) 1)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_792|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_374|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_449|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_504|, #valid=|v_#valid_954|, #memory_int=|v_#memory_int_1331|, #length=|v_#length_722|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_792|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_197|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_374|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_449|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_504|, #valid=|v_#valid_954|, #memory_int=|v_#memory_int_1331|, #length=|v_#length_722|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~mem8#1] 765891#[L706-1, thrEXIT]don't care [1227] thrEXIT-->L706-2: Formula: (= (let ((.cse0 (mod |v_ULTIMATE.start_main_#t~mem8#1_184| 4294967296))) (ite (<= .cse0 2147483647) .cse0 (+ .cse0 (- 4294967296)))) v_thrThread1of6ForFork0_thidvar0_4) InVars {ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_184|, thrThread1of6ForFork0_thidvar0=v_thrThread1of6ForFork0_thidvar0_4} OutVars{ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_184|, thrThread1of6ForFork0_thidvar0=v_thrThread1of6ForFork0_thidvar0_4} AuxVars[] AssignedVars[] 755013#[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] 783197#[L705-2]don't care [1297] L705-2-->L705-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_808| (+ |v_ULTIMATE.start_main_~i~0#1_809| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_809|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_808|, 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] 783199#[L705-5]don't care [1300] L705-5-->L709-6: Formula: (and (= |v_ULTIMATE.start_main_~i~0#1_818| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_819| |v_ULTIMATE.start_main_~n~0#1_463|)) (= |v_ULTIMATE.start_main_~sum~0#1_318| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_819|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_463|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_818|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_318|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_463|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1] 821215#[L709-6]don't care [2022-07-22 12:15:56,676 INFO L750 eck$LassoCheckResult]: Loop: 821215#[L709-6]don't care [1304] L709-6-->L709-6: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_839| 4))) (let ((.cse1 (+ .cse0 |v_~#a~0.offset_600|))) (and (<= (+ .cse0 |v_~#a~0.offset_600| 4) (select |v_#length_782| |v_~#a~0.base_605|)) (= (+ (select (select |v_#memory_int_1461| |v_~#a~0.base_605|) .cse1) |v_ULTIMATE.start_main_~sum~0#1_327|) |v_ULTIMATE.start_main_~sum~0#1_326|) (<= 0 .cse1) (= (select |v_#valid_1041| |v_~#a~0.base_605|) 1) (< |v_ULTIMATE.start_main_~i~0#1_839| |v_ULTIMATE.start_main_~n~0#1_471|) (= |v_ULTIMATE.start_main_~i~0#1_838| (+ |v_ULTIMATE.start_main_~i~0#1_839| 1))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_839|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_327|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_471|, #valid=|v_#valid_1041|, #memory_int=|v_#memory_int_1461|, ~#a~0.base=|v_~#a~0.base_605|, ~#a~0.offset=|v_~#a~0.offset_600|, #length=|v_#length_782|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_838|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_326|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_471|, #valid=|v_#valid_1041|, #memory_int=|v_#memory_int_1461|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_154|, ~#a~0.base=|v_~#a~0.base_605|, ~#a~0.offset=|v_~#a~0.offset_600|, #length=|v_#length_782|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_230|} 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] 821215#[L709-6]don't care [2022-07-22 12:15:56,676 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:15:56,676 INFO L85 PathProgramCache]: Analyzing trace with hash 1566983031, now seen corresponding path program 1 times [2022-07-22 12:15:56,676 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:15:56,676 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [301896429] [2022-07-22 12:15:56,676 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:15:56,677 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:15:56,695 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 12:15:56,718 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-22 12:15:56,718 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-22 12:15:56,718 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [301896429] [2022-07-22 12:15:56,719 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [301896429] provided 0 perfect and 1 imperfect interpolant sequences [2022-07-22 12:15:56,719 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1421022223] [2022-07-22 12:15:56,719 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:15:56,719 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-22 12:15:56,719 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-22 12:15:56,722 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-22 12:15:56,733 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-22 12:15:56,807 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 12:15:56,809 INFO L263 TraceCheckSpWp]: Trace formula consists of 125 conjuncts, 8 conjunts are in the unsatisfiable core [2022-07-22 12:15:56,810 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-22 12:15:56,853 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-22 12:15:56,853 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-22 12:15:56,870 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-22 12:15:56,870 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1421022223] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-22 12:15:56,870 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-07-22 12:15:56,871 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 3, 3] total 7 [2022-07-22 12:15:56,871 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [584334696] [2022-07-22 12:15:56,871 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-07-22 12:15:56,872 INFO L753 eck$LassoCheckResult]: stem already infeasible [2022-07-22 12:15:56,872 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:15:56,872 INFO L85 PathProgramCache]: Analyzing trace with hash 1335, now seen corresponding path program 3 times [2022-07-22 12:15:56,873 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:15:56,873 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1146181767] [2022-07-22 12:15:56,873 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:15:56,873 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:15:56,878 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:15:56,879 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:15:56,881 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:15:56,883 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:15:56,918 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-22 12:15:56,919 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-07-22 12:15:56,919 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=30, Unknown=0, NotChecked=0, Total=56 [2022-07-22 12:15:56,919 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-22 12:15:58,455 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-22 12:15:58,455 INFO L93 Difference]: Finished difference Result 93055 states and 454923 transitions. [2022-07-22 12:15:58,455 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 93055 states and 454923 transitions. [2022-07-22 12:16:01,501 INFO L131 ngComponentsAnalysis]: Automaton has 15625 accepting balls. 15625 [2022-07-22 12:16:04,018 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 93055 states to 93055 states and 454923 transitions. [2022-07-22 12:16:04,018 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 93055 [2022-07-22 12:16:04,345 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 93055 [2022-07-22 12:16:04,345 INFO L73 IsDeterministic]: Start isDeterministic. Operand 93055 states and 454923 transitions. [2022-07-22 12:16:04,583 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-22 12:16:04,583 INFO L220 hiAutomatonCegarLoop]: Abstraction has 93055 states and 454923 transitions. [2022-07-22 12:16:04,815 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 93055 states and 454923 transitions. [2022-07-22 12:16:08,551 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 93055 to 93055. [2022-07-22 12:16:08,768 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-22 12:16:10,702 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 93055 states to 93055 states and 454923 transitions. [2022-07-22 12:16:10,704 INFO L242 hiAutomatonCegarLoop]: Abstraction has 93055 states and 454923 transitions. [2022-07-22 12:16:10,704 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-07-22 12:16:10,707 INFO L425 stractBuchiCegarLoop]: Abstraction has 93055 states and 454923 transitions. [2022-07-22 12:16:10,707 INFO L332 stractBuchiCegarLoop]: ======== Iteration 4 ============ [2022-07-22 12:16:10,707 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 93055 states and 454923 transitions. [2022-07-22 12:16:12,926 INFO L131 ngComponentsAnalysis]: Automaton has 15625 accepting balls. 15625 [2022-07-22 12:16:12,928 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:16:12,928 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:16:12,933 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-22 12:16:12,934 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:16:12,941 INFO L748 eck$LassoCheckResult]: Stem: 1100727#[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] 1100729#[L702-6]don't care [1287] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_796| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_376|))) (and (= |v_#memory_int_1343| (store |v_#memory_int_1344| |v_ULTIMATE.start_main_~#t~1#1.base_512| (store (select |v_#memory_int_1344| |v_ULTIMATE.start_main_~#t~1#1.base_512|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_283|))) (<= (+ .cse1 4 |v_ULTIMATE.start_main_~#t~1#1.offset_376|) (select |v_#length_728| |v_ULTIMATE.start_main_~#t~1#1.base_512|)) (< |v_ULTIMATE.start_main_~i~0#1_796| |v_ULTIMATE.start_main_~n~0#1_453|) (<= 0 .cse0) (= |v_ULTIMATE.start_main_#t~pre5#1_283| |v_#pthreadsForks_209|) (= (select |v_#valid_970| |v_ULTIMATE.start_main_~#t~1#1.base_512|) 1) (= (+ |v_#pthreadsForks_209| 1) |v_#pthreadsForks_208|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_796|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_376|, #pthreadsForks=|v_#pthreadsForks_209|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_453|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_512|, #valid=|v_#valid_970|, #memory_int=|v_#memory_int_1344|, #length=|v_#length_728|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_283|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_796|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_376|, #pthreadsForks=|v_#pthreadsForks_208|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_453|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_512|, #valid=|v_#valid_970|, #memory_int=|v_#memory_int_1343|, #length=|v_#length_728|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 1061905#[L703-3]don't care [1221] L703-3-->thrENTRY: Formula: (and (= v_thrThread1of6ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_264|) (= |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_264|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_264|, 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] 1033045#[L703-4, thrENTRY]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] 1033047#[L703-5, thrENTRY]don't care [1301] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_825| 1) |v_ULTIMATE.start_main_~i~0#1_824|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_825|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_824|, 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] 949029#[L702-6, thrENTRY]don't care [1287] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_796| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_376|))) (and (= |v_#memory_int_1343| (store |v_#memory_int_1344| |v_ULTIMATE.start_main_~#t~1#1.base_512| (store (select |v_#memory_int_1344| |v_ULTIMATE.start_main_~#t~1#1.base_512|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_283|))) (<= (+ .cse1 4 |v_ULTIMATE.start_main_~#t~1#1.offset_376|) (select |v_#length_728| |v_ULTIMATE.start_main_~#t~1#1.base_512|)) (< |v_ULTIMATE.start_main_~i~0#1_796| |v_ULTIMATE.start_main_~n~0#1_453|) (<= 0 .cse0) (= |v_ULTIMATE.start_main_#t~pre5#1_283| |v_#pthreadsForks_209|) (= (select |v_#valid_970| |v_ULTIMATE.start_main_~#t~1#1.base_512|) 1) (= (+ |v_#pthreadsForks_209| 1) |v_#pthreadsForks_208|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_796|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_376|, #pthreadsForks=|v_#pthreadsForks_209|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_453|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_512|, #valid=|v_#valid_970|, #memory_int=|v_#memory_int_1344|, #length=|v_#length_728|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_283|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_796|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_376|, #pthreadsForks=|v_#pthreadsForks_208|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_453|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_512|, #valid=|v_#valid_970|, #memory_int=|v_#memory_int_1343|, #length=|v_#length_728|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 949031#[L703-3, thrENTRY]don't care [1222] L703-3-->thrENTRY: Formula: (and (= v_thrThread2of6ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_266|) (= |v_thrThread2of6ForFork0_#in~arg.offset_4| 0) (= |v_thrThread2of6ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_266|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_266|, thrThread2of6ForFork0_thidvar0=v_thrThread2of6ForFork0_thidvar0_2, thrThread2of6ForFork0_#in~arg.offset=|v_thrThread2of6ForFork0_#in~arg.offset_4|, thrThread2of6ForFork0_#res.base=|v_thrThread2of6ForFork0_#res.base_2|, thrThread2of6ForFork0_~arg.offset=v_thrThread2of6ForFork0_~arg.offset_4, thrThread2of6ForFork0_#in~arg.base=|v_thrThread2of6ForFork0_#in~arg.base_4|, thrThread2of6ForFork0_#res.offset=|v_thrThread2of6ForFork0_#res.offset_2|, thrThread2of6ForFork0_~t~0=v_thrThread2of6ForFork0_~t~0_8, thrThread2of6ForFork0_~arg.base=v_thrThread2of6ForFork0_~arg.base_4} AuxVars[] AssignedVars[thrThread2of6ForFork0_thidvar0, thrThread2of6ForFork0_#in~arg.offset, thrThread2of6ForFork0_#res.base, thrThread2of6ForFork0_~arg.offset, thrThread2of6ForFork0_#in~arg.base, thrThread2of6ForFork0_#res.offset, thrThread2of6ForFork0_~t~0, thrThread2of6ForFork0_~arg.base] 1100659#[thrENTRY, 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] 1033159#[thrENTRY, L703-5, thrENTRY]don't care [1301] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_825| 1) |v_ULTIMATE.start_main_~i~0#1_824|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_825|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_824|, 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] 1033161#[thrENTRY, L702-6, thrENTRY]don't care [1287] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_796| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_376|))) (and (= |v_#memory_int_1343| (store |v_#memory_int_1344| |v_ULTIMATE.start_main_~#t~1#1.base_512| (store (select |v_#memory_int_1344| |v_ULTIMATE.start_main_~#t~1#1.base_512|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_283|))) (<= (+ .cse1 4 |v_ULTIMATE.start_main_~#t~1#1.offset_376|) (select |v_#length_728| |v_ULTIMATE.start_main_~#t~1#1.base_512|)) (< |v_ULTIMATE.start_main_~i~0#1_796| |v_ULTIMATE.start_main_~n~0#1_453|) (<= 0 .cse0) (= |v_ULTIMATE.start_main_#t~pre5#1_283| |v_#pthreadsForks_209|) (= (select |v_#valid_970| |v_ULTIMATE.start_main_~#t~1#1.base_512|) 1) (= (+ |v_#pthreadsForks_209| 1) |v_#pthreadsForks_208|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_796|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_376|, #pthreadsForks=|v_#pthreadsForks_209|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_453|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_512|, #valid=|v_#valid_970|, #memory_int=|v_#memory_int_1344|, #length=|v_#length_728|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_283|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_796|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_376|, #pthreadsForks=|v_#pthreadsForks_208|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_453|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_512|, #valid=|v_#valid_970|, #memory_int=|v_#memory_int_1343|, #length=|v_#length_728|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 1086405#[thrENTRY, L703-3, thrENTRY]don't care [1223] L703-3-->thrENTRY: Formula: (and (= |v_thrThread3of6ForFork0_#in~arg.offset_4| 0) (= |v_thrThread3of6ForFork0_#in~arg.base_4| 0) (= v_thrThread3of6ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_268|)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_268|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_268|, thrThread3of6ForFork0_~t~0=v_thrThread3of6ForFork0_~t~0_8, thrThread3of6ForFork0_#res.offset=|v_thrThread3of6ForFork0_#res.offset_2|, thrThread3of6ForFork0_#in~arg.offset=|v_thrThread3of6ForFork0_#in~arg.offset_4|, thrThread3of6ForFork0_#in~arg.base=|v_thrThread3of6ForFork0_#in~arg.base_4|, thrThread3of6ForFork0_#res.base=|v_thrThread3of6ForFork0_#res.base_2|, thrThread3of6ForFork0_thidvar0=v_thrThread3of6ForFork0_thidvar0_2, thrThread3of6ForFork0_~arg.offset=v_thrThread3of6ForFork0_~arg.offset_4, thrThread3of6ForFork0_~arg.base=v_thrThread3of6ForFork0_~arg.base_4} AuxVars[] AssignedVars[thrThread3of6ForFork0_~t~0, thrThread3of6ForFork0_#res.offset, thrThread3of6ForFork0_#in~arg.offset, thrThread3of6ForFork0_#in~arg.base, thrThread3of6ForFork0_#res.base, thrThread3of6ForFork0_thidvar0, thrThread3of6ForFork0_~arg.offset, thrThread3of6ForFork0_~arg.base] 1086407#[thrENTRY, thrENTRY, L703-4, thrENTRY]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] 1005295#[thrENTRY, thrENTRY, thrENTRY, L703-5]don't care [1269] thrENTRY-->L694: Formula: (and (= v_thrThread3of6ForFork0_~t~0_55 v_~x~0_418) (= |v_thrThread3of6ForFork0_#in~arg.offset_5| v_thrThread3of6ForFork0_~arg.offset_5) (= |v_thrThread3of6ForFork0_#in~arg.base_5| v_thrThread3of6ForFork0_~arg.base_5)) InVars {thrThread3of6ForFork0_#in~arg.offset=|v_thrThread3of6ForFork0_#in~arg.offset_5|, thrThread3of6ForFork0_#in~arg.base=|v_thrThread3of6ForFork0_#in~arg.base_5|, ~x~0=v_~x~0_418} OutVars{thrThread3of6ForFork0_~t~0=v_thrThread3of6ForFork0_~t~0_55, thrThread3of6ForFork0_#in~arg.offset=|v_thrThread3of6ForFork0_#in~arg.offset_5|, thrThread3of6ForFork0_#in~arg.base=|v_thrThread3of6ForFork0_#in~arg.base_5|, thrThread3of6ForFork0_~arg.offset=v_thrThread3of6ForFork0_~arg.offset_5, thrThread3of6ForFork0_~arg.base=v_thrThread3of6ForFork0_~arg.base_5, ~x~0=v_~x~0_418} AuxVars[] AssignedVars[thrThread3of6ForFork0_~t~0, thrThread3of6ForFork0_~arg.offset, thrThread3of6ForFork0_~arg.base] 1005297#[L694, thrENTRY, thrENTRY, L703-5]don't care [1301] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_825| 1) |v_ULTIMATE.start_main_~i~0#1_824|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_825|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_824|, 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] 1075409#[L694, thrENTRY, thrENTRY, L702-6]don't care [1191] L694-->L694-1: Formula: (let ((.cse0 (* v_thrThread3of6ForFork0_~t~0_3 4))) (let ((.cse1 (+ |v_~#a~0.offset_4| .cse0))) (and (<= (+ |v_~#a~0.offset_4| .cse0 4) (select |v_#length_9| |v_~#a~0.base_5|)) (= (select |v_#valid_12| |v_~#a~0.base_5|) 1) (= (store |v_#memory_int_12| |v_~#a~0.base_5| (store (select |v_#memory_int_12| |v_~#a~0.base_5|) .cse1 1)) |v_#memory_int_11|) (<= 0 .cse1)))) InVars {thrThread3of6ForFork0_~t~0=v_thrThread3of6ForFork0_~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{thrThread3of6ForFork0_~t~0=v_thrThread3of6ForFork0_~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] 1036283#[thrENTRY, thrENTRY, L702-6, L694-1]don't care [1287] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_796| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_376|))) (and (= |v_#memory_int_1343| (store |v_#memory_int_1344| |v_ULTIMATE.start_main_~#t~1#1.base_512| (store (select |v_#memory_int_1344| |v_ULTIMATE.start_main_~#t~1#1.base_512|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_283|))) (<= (+ .cse1 4 |v_ULTIMATE.start_main_~#t~1#1.offset_376|) (select |v_#length_728| |v_ULTIMATE.start_main_~#t~1#1.base_512|)) (< |v_ULTIMATE.start_main_~i~0#1_796| |v_ULTIMATE.start_main_~n~0#1_453|) (<= 0 .cse0) (= |v_ULTIMATE.start_main_#t~pre5#1_283| |v_#pthreadsForks_209|) (= (select |v_#valid_970| |v_ULTIMATE.start_main_~#t~1#1.base_512|) 1) (= (+ |v_#pthreadsForks_209| 1) |v_#pthreadsForks_208|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_796|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_376|, #pthreadsForks=|v_#pthreadsForks_209|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_453|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_512|, #valid=|v_#valid_970|, #memory_int=|v_#memory_int_1344|, #length=|v_#length_728|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_283|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_796|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_376|, #pthreadsForks=|v_#pthreadsForks_208|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_453|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_512|, #valid=|v_#valid_970|, #memory_int=|v_#memory_int_1343|, #length=|v_#length_728|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 1058333#[thrENTRY, thrENTRY, L694-1, L703-3]don't care [1255] L694-1-->thrEXIT: Formula: (= (+ v_thrThread3of6ForFork0_~t~0_21 1) v_~x~0_383) InVars {thrThread3of6ForFork0_~t~0=v_thrThread3of6ForFork0_~t~0_21} OutVars{thrThread3of6ForFork0_~t~0=v_thrThread3of6ForFork0_~t~0_21, ~x~0=v_~x~0_383} AuxVars[] AssignedVars[~x~0] 1086073#[thrENTRY, thrEXIT, thrENTRY, L703-3]don't care [1224] L703-3-->thrENTRY: Formula: (and (= |v_thrThread4of6ForFork0_#in~arg.base_4| 0) (= |v_thrThread4of6ForFork0_#in~arg.offset_4| 0) (= v_thrThread4of6ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_270|)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_270|} OutVars{thrThread4of6ForFork0_~t~0=v_thrThread4of6ForFork0_~t~0_8, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_270|, thrThread4of6ForFork0_~arg.base=v_thrThread4of6ForFork0_~arg.base_4, thrThread4of6ForFork0_~arg.offset=v_thrThread4of6ForFork0_~arg.offset_4, thrThread4of6ForFork0_#res.offset=|v_thrThread4of6ForFork0_#res.offset_2|, thrThread4of6ForFork0_#res.base=|v_thrThread4of6ForFork0_#res.base_2|, thrThread4of6ForFork0_#in~arg.offset=|v_thrThread4of6ForFork0_#in~arg.offset_4|, thrThread4of6ForFork0_#in~arg.base=|v_thrThread4of6ForFork0_#in~arg.base_4|, thrThread4of6ForFork0_thidvar0=v_thrThread4of6ForFork0_thidvar0_2} AuxVars[] AssignedVars[thrThread4of6ForFork0_~t~0, thrThread4of6ForFork0_~arg.base, thrThread4of6ForFork0_~arg.offset, thrThread4of6ForFork0_#res.offset, thrThread4of6ForFork0_#res.base, thrThread4of6ForFork0_#in~arg.offset, thrThread4of6ForFork0_#in~arg.base, thrThread4of6ForFork0_thidvar0] 1062773#[thrENTRY, thrEXIT, thrENTRY, 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] 1019027#[thrENTRY, thrEXIT, thrENTRY, thrENTRY, L703-5]don't care [1301] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_825| 1) |v_ULTIMATE.start_main_~i~0#1_824|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_825|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_824|, 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] 1017955#[thrENTRY, thrEXIT, L702-6, thrENTRY, 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] 988423#[thrENTRY, thrEXIT, thrENTRY, thrENTRY, L705-5]don't care [1275] L705-5-->L706-1: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_792| 4))) (let ((.cse1 (+ .cse0 |v_ULTIMATE.start_main_~#t~1#1.offset_374|))) (and (<= (+ .cse0 4 |v_ULTIMATE.start_main_~#t~1#1.offset_374|) (select |v_#length_722| |v_ULTIMATE.start_main_~#t~1#1.base_504|)) (<= 0 .cse1) (< |v_ULTIMATE.start_main_~i~0#1_792| |v_ULTIMATE.start_main_~n~0#1_449|) (= |v_ULTIMATE.start_main_#t~mem8#1_197| (select (select |v_#memory_int_1331| |v_ULTIMATE.start_main_~#t~1#1.base_504|) .cse1)) (= (select |v_#valid_954| |v_ULTIMATE.start_main_~#t~1#1.base_504|) 1)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_792|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_374|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_449|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_504|, #valid=|v_#valid_954|, #memory_int=|v_#memory_int_1331|, #length=|v_#length_722|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_792|, ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_197|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_374|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_449|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_504|, #valid=|v_#valid_954|, #memory_int=|v_#memory_int_1331|, #length=|v_#length_722|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~mem8#1] 1098199#[thrENTRY, thrEXIT, L706-1, thrENTRY, thrENTRY]don't care [1229] thrEXIT-->L706-2: Formula: (= v_thrThread3of6ForFork0_thidvar0_4 (let ((.cse0 (mod |v_ULTIMATE.start_main_#t~mem8#1_188| 4294967296))) (ite (<= .cse0 2147483647) .cse0 (+ (- 4294967296) .cse0)))) InVars {ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_188|, thrThread3of6ForFork0_thidvar0=v_thrThread3of6ForFork0_thidvar0_4} OutVars{ULTIMATE.start_main_#t~mem8#1=|v_ULTIMATE.start_main_#t~mem8#1_188|, thrThread3of6ForFork0_thidvar0=v_thrThread3of6ForFork0_thidvar0_4} AuxVars[] AssignedVars[] 1097689#[thrENTRY, L706-2, thrENTRY, thrENTRY]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] 975697#[L705-2, thrENTRY, thrENTRY, thrENTRY]don't care [1297] L705-2-->L705-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_808| (+ |v_ULTIMATE.start_main_~i~0#1_809| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_809|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_808|, 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] 975699#[thrENTRY, L705-5, thrENTRY, thrENTRY]don't care [1300] L705-5-->L709-6: Formula: (and (= |v_ULTIMATE.start_main_~i~0#1_818| 0) (not (< |v_ULTIMATE.start_main_~i~0#1_819| |v_ULTIMATE.start_main_~n~0#1_463|)) (= |v_ULTIMATE.start_main_~sum~0#1_318| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_819|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_463|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_818|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_318|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_463|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_~sum~0#1] 1097843#[thrENTRY, thrENTRY, L709-6, thrENTRY]don't care [2022-07-22 12:16:12,941 INFO L750 eck$LassoCheckResult]: Loop: 1097843#[thrENTRY, thrENTRY, L709-6, thrENTRY]don't care [1304] L709-6-->L709-6: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_839| 4))) (let ((.cse1 (+ .cse0 |v_~#a~0.offset_600|))) (and (<= (+ .cse0 |v_~#a~0.offset_600| 4) (select |v_#length_782| |v_~#a~0.base_605|)) (= (+ (select (select |v_#memory_int_1461| |v_~#a~0.base_605|) .cse1) |v_ULTIMATE.start_main_~sum~0#1_327|) |v_ULTIMATE.start_main_~sum~0#1_326|) (<= 0 .cse1) (= (select |v_#valid_1041| |v_~#a~0.base_605|) 1) (< |v_ULTIMATE.start_main_~i~0#1_839| |v_ULTIMATE.start_main_~n~0#1_471|) (= |v_ULTIMATE.start_main_~i~0#1_838| (+ |v_ULTIMATE.start_main_~i~0#1_839| 1))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_839|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_327|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_471|, #valid=|v_#valid_1041|, #memory_int=|v_#memory_int_1461|, ~#a~0.base=|v_~#a~0.base_605|, ~#a~0.offset=|v_~#a~0.offset_600|, #length=|v_#length_782|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_838|, ULTIMATE.start_main_~sum~0#1=|v_ULTIMATE.start_main_~sum~0#1_326|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_471|, #valid=|v_#valid_1041|, #memory_int=|v_#memory_int_1461|, ULTIMATE.start_main_#t~post9#1=|v_ULTIMATE.start_main_#t~post9#1_154|, ~#a~0.base=|v_~#a~0.base_605|, ~#a~0.offset=|v_~#a~0.offset_600|, #length=|v_#length_782|, ULTIMATE.start_main_#t~mem10#1=|v_ULTIMATE.start_main_#t~mem10#1_230|} 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] 1097843#[thrENTRY, thrENTRY, L709-6, thrENTRY]don't care [2022-07-22 12:16:12,942 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:16:12,942 INFO L85 PathProgramCache]: Analyzing trace with hash -2097254081, now seen corresponding path program 1 times [2022-07-22 12:16:12,942 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:16:12,942 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [761354849] [2022-07-22 12:16:12,943 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:16:12,943 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:16:12,983 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 12:16:13,057 INFO L134 CoverageAnalysis]: Checked inductivity of 29 backedges. 6 proven. 23 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-22 12:16:13,058 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-22 12:16:13,058 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [761354849] [2022-07-22 12:16:13,058 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [761354849] provided 0 perfect and 1 imperfect interpolant sequences [2022-07-22 12:16:13,058 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [204815481] [2022-07-22 12:16:13,058 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:16:13,059 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-22 12:16:13,059 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-22 12:16:13,066 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-07-22 12:16:13,082 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2022-07-22 12:16:13,189 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 12:16:13,190 INFO L263 TraceCheckSpWp]: Trace formula consists of 191 conjuncts, 8 conjunts are in the unsatisfiable core [2022-07-22 12:16:13,193 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-22 12:16:13,292 INFO L134 CoverageAnalysis]: Checked inductivity of 29 backedges. 15 proven. 14 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-22 12:16:13,292 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-07-22 12:16:13,394 INFO L134 CoverageAnalysis]: Checked inductivity of 29 backedges. 15 proven. 14 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-22 12:16:13,395 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [204815481] provided 0 perfect and 2 imperfect interpolant sequences [2022-07-22 12:16:13,395 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-07-22 12:16:13,395 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7, 7] total 15 [2022-07-22 12:16:13,396 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1016235640] [2022-07-22 12:16:13,396 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-07-22 12:16:13,397 INFO L753 eck$LassoCheckResult]: stem already infeasible [2022-07-22 12:16:13,398 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:16:13,398 INFO L85 PathProgramCache]: Analyzing trace with hash 1335, now seen corresponding path program 4 times [2022-07-22 12:16:13,400 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:16:13,400 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1042814140] [2022-07-22 12:16:13,401 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:16:13,401 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:16:13,406 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:16:13,407 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:16:13,408 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:16:13,410 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:16:13,446 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-22 12:16:13,446 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-07-22 12:16:13,447 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=75, Invalid=197, Unknown=0, NotChecked=0, Total=272 [2022-07-22 12:16:13,447 INFO L87 Difference]: Start difference. First operand 93055 states and 454923 transitions. cyclomatic complexity: 377493 Second operand has 17 states, 16 states have (on average 3.75) internal successors, (60), 16 states have internal predecessors, (60), 0 states have call successors, (0), 0 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-22 12:16:16,011 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-22 12:16:16,015 INFO L93 Difference]: Finished difference Result 93747 states and 437771 transitions. [2022-07-22 12:16:16,015 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 93747 states and 437771 transitions. [2022-07-22 12:16:19,935 INFO L131 ngComponentsAnalysis]: Automaton has 4361 accepting balls. 4361 [2022-07-22 12:16:22,665 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 93747 states to 93747 states and 437771 transitions. [2022-07-22 12:16:22,665 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 93747 [2022-07-22 12:16:23,069 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 93747 [2022-07-22 12:16:23,070 INFO L73 IsDeterministic]: Start isDeterministic. Operand 93747 states and 437771 transitions. [2022-07-22 12:16:23,388 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-22 12:16:23,388 INFO L220 hiAutomatonCegarLoop]: Abstraction has 93747 states and 437771 transitions. [2022-07-22 12:16:24,213 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 93747 states and 437771 transitions. [2022-07-22 12:16:28,994 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 93747 to 92687. [2022-07-22 12:16:29,291 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 92687 states, 92687 states have (on average 4.695361809099442) internal successors, (435199), 92686 states have internal predecessors, (435199), 0 states have call successors, (0), 0 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-22 12:16:31,079 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 92687 states to 92687 states and 435199 transitions. [2022-07-22 12:16:31,083 INFO L242 hiAutomatonCegarLoop]: Abstraction has 92687 states and 435199 transitions. [2022-07-22 12:16:31,084 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-07-22 12:16:31,084 INFO L425 stractBuchiCegarLoop]: Abstraction has 92687 states and 435199 transitions. [2022-07-22 12:16:31,084 INFO L332 stractBuchiCegarLoop]: ======== Iteration 5 ============ [2022-07-22 12:16:31,084 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 92687 states and 435199 transitions. [2022-07-22 12:16:32,929 INFO L131 ngComponentsAnalysis]: Automaton has 4361 accepting balls. 4361 [2022-07-22 12:16:32,930 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:16:32,930 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:16:32,932 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [7, 6, 6, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-22 12:16:32,932 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:16:32,933 INFO L748 eck$LassoCheckResult]: Stem: 1371826#[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] 1371828#[L702-6]don't care [1287] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_796| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_376|))) (and (= |v_#memory_int_1343| (store |v_#memory_int_1344| |v_ULTIMATE.start_main_~#t~1#1.base_512| (store (select |v_#memory_int_1344| |v_ULTIMATE.start_main_~#t~1#1.base_512|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_283|))) (<= (+ .cse1 4 |v_ULTIMATE.start_main_~#t~1#1.offset_376|) (select |v_#length_728| |v_ULTIMATE.start_main_~#t~1#1.base_512|)) (< |v_ULTIMATE.start_main_~i~0#1_796| |v_ULTIMATE.start_main_~n~0#1_453|) (<= 0 .cse0) (= |v_ULTIMATE.start_main_#t~pre5#1_283| |v_#pthreadsForks_209|) (= (select |v_#valid_970| |v_ULTIMATE.start_main_~#t~1#1.base_512|) 1) (= (+ |v_#pthreadsForks_209| 1) |v_#pthreadsForks_208|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_796|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_376|, #pthreadsForks=|v_#pthreadsForks_209|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_453|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_512|, #valid=|v_#valid_970|, #memory_int=|v_#memory_int_1344|, #length=|v_#length_728|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_283|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_796|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_376|, #pthreadsForks=|v_#pthreadsForks_208|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_453|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_512|, #valid=|v_#valid_970|, #memory_int=|v_#memory_int_1343|, #length=|v_#length_728|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 1328532#[L703-3]don't care [1221] L703-3-->thrENTRY: Formula: (and (= v_thrThread1of6ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_264|) (= |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_264|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_264|, 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] 1301352#[L703-4, thrENTRY]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] 1301354#[L703-5, thrENTRY]don't care [1301] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_825| 1) |v_ULTIMATE.start_main_~i~0#1_824|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_825|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_824|, 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] 1225422#[L702-6, thrENTRY]don't care [1287] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_796| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_376|))) (and (= |v_#memory_int_1343| (store |v_#memory_int_1344| |v_ULTIMATE.start_main_~#t~1#1.base_512| (store (select |v_#memory_int_1344| |v_ULTIMATE.start_main_~#t~1#1.base_512|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_283|))) (<= (+ .cse1 4 |v_ULTIMATE.start_main_~#t~1#1.offset_376|) (select |v_#length_728| |v_ULTIMATE.start_main_~#t~1#1.base_512|)) (< |v_ULTIMATE.start_main_~i~0#1_796| |v_ULTIMATE.start_main_~n~0#1_453|) (<= 0 .cse0) (= |v_ULTIMATE.start_main_#t~pre5#1_283| |v_#pthreadsForks_209|) (= (select |v_#valid_970| |v_ULTIMATE.start_main_~#t~1#1.base_512|) 1) (= (+ |v_#pthreadsForks_209| 1) |v_#pthreadsForks_208|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_796|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_376|, #pthreadsForks=|v_#pthreadsForks_209|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_453|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_512|, #valid=|v_#valid_970|, #memory_int=|v_#memory_int_1344|, #length=|v_#length_728|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_283|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_796|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_376|, #pthreadsForks=|v_#pthreadsForks_208|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_453|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_512|, #valid=|v_#valid_970|, #memory_int=|v_#memory_int_1343|, #length=|v_#length_728|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 1225424#[L703-3, thrENTRY]don't care [1222] L703-3-->thrENTRY: Formula: (and (= v_thrThread2of6ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_266|) (= |v_thrThread2of6ForFork0_#in~arg.offset_4| 0) (= |v_thrThread2of6ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_266|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_266|, thrThread2of6ForFork0_thidvar0=v_thrThread2of6ForFork0_thidvar0_2, thrThread2of6ForFork0_#in~arg.offset=|v_thrThread2of6ForFork0_#in~arg.offset_4|, thrThread2of6ForFork0_#res.base=|v_thrThread2of6ForFork0_#res.base_2|, thrThread2of6ForFork0_~arg.offset=v_thrThread2of6ForFork0_~arg.offset_4, thrThread2of6ForFork0_#in~arg.base=|v_thrThread2of6ForFork0_#in~arg.base_4|, thrThread2of6ForFork0_#res.offset=|v_thrThread2of6ForFork0_#res.offset_2|, thrThread2of6ForFork0_~t~0=v_thrThread2of6ForFork0_~t~0_8, thrThread2of6ForFork0_~arg.base=v_thrThread2of6ForFork0_~arg.base_4} AuxVars[] AssignedVars[thrThread2of6ForFork0_thidvar0, thrThread2of6ForFork0_#in~arg.offset, thrThread2of6ForFork0_#res.base, thrThread2of6ForFork0_~arg.offset, thrThread2of6ForFork0_#in~arg.base, thrThread2of6ForFork0_#res.offset, thrThread2of6ForFork0_~t~0, thrThread2of6ForFork0_~arg.base] 1371674#[thrENTRY, 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] 1301470#[thrENTRY, L703-5, thrENTRY]don't care [1301] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_825| 1) |v_ULTIMATE.start_main_~i~0#1_824|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_825|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_824|, 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] 1301472#[thrENTRY, L702-6, thrENTRY]don't care [1287] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_796| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_376|))) (and (= |v_#memory_int_1343| (store |v_#memory_int_1344| |v_ULTIMATE.start_main_~#t~1#1.base_512| (store (select |v_#memory_int_1344| |v_ULTIMATE.start_main_~#t~1#1.base_512|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_283|))) (<= (+ .cse1 4 |v_ULTIMATE.start_main_~#t~1#1.offset_376|) (select |v_#length_728| |v_ULTIMATE.start_main_~#t~1#1.base_512|)) (< |v_ULTIMATE.start_main_~i~0#1_796| |v_ULTIMATE.start_main_~n~0#1_453|) (<= 0 .cse0) (= |v_ULTIMATE.start_main_#t~pre5#1_283| |v_#pthreadsForks_209|) (= (select |v_#valid_970| |v_ULTIMATE.start_main_~#t~1#1.base_512|) 1) (= (+ |v_#pthreadsForks_209| 1) |v_#pthreadsForks_208|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_796|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_376|, #pthreadsForks=|v_#pthreadsForks_209|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_453|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_512|, #valid=|v_#valid_970|, #memory_int=|v_#memory_int_1344|, #length=|v_#length_728|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_283|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_796|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_376|, #pthreadsForks=|v_#pthreadsForks_208|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_453|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_512|, #valid=|v_#valid_970|, #memory_int=|v_#memory_int_1343|, #length=|v_#length_728|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 1352318#[thrENTRY, L703-3, thrENTRY]don't care [1223] L703-3-->thrENTRY: Formula: (and (= |v_thrThread3of6ForFork0_#in~arg.offset_4| 0) (= |v_thrThread3of6ForFork0_#in~arg.base_4| 0) (= v_thrThread3of6ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_268|)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_268|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_268|, thrThread3of6ForFork0_~t~0=v_thrThread3of6ForFork0_~t~0_8, thrThread3of6ForFork0_#res.offset=|v_thrThread3of6ForFork0_#res.offset_2|, thrThread3of6ForFork0_#in~arg.offset=|v_thrThread3of6ForFork0_#in~arg.offset_4|, thrThread3of6ForFork0_#in~arg.base=|v_thrThread3of6ForFork0_#in~arg.base_4|, thrThread3of6ForFork0_#res.base=|v_thrThread3of6ForFork0_#res.base_2|, thrThread3of6ForFork0_thidvar0=v_thrThread3of6ForFork0_thidvar0_2, thrThread3of6ForFork0_~arg.offset=v_thrThread3of6ForFork0_~arg.offset_4, thrThread3of6ForFork0_~arg.base=v_thrThread3of6ForFork0_~arg.base_4} AuxVars[] AssignedVars[thrThread3of6ForFork0_~t~0, thrThread3of6ForFork0_#res.offset, thrThread3of6ForFork0_#in~arg.offset, thrThread3of6ForFork0_#in~arg.base, thrThread3of6ForFork0_#res.base, thrThread3of6ForFork0_thidvar0, thrThread3of6ForFork0_~arg.offset, thrThread3of6ForFork0_~arg.base] 1352320#[thrENTRY, thrENTRY, L703-4, thrENTRY]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] 1275942#[thrENTRY, thrENTRY, thrENTRY, L703-5]don't care [1301] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_825| 1) |v_ULTIMATE.start_main_~i~0#1_824|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_825|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_824|, 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] 1275946#[thrENTRY, thrENTRY, thrENTRY, L702-6]don't care [1287] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_796| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_376|))) (and (= |v_#memory_int_1343| (store |v_#memory_int_1344| |v_ULTIMATE.start_main_~#t~1#1.base_512| (store (select |v_#memory_int_1344| |v_ULTIMATE.start_main_~#t~1#1.base_512|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_283|))) (<= (+ .cse1 4 |v_ULTIMATE.start_main_~#t~1#1.offset_376|) (select |v_#length_728| |v_ULTIMATE.start_main_~#t~1#1.base_512|)) (< |v_ULTIMATE.start_main_~i~0#1_796| |v_ULTIMATE.start_main_~n~0#1_453|) (<= 0 .cse0) (= |v_ULTIMATE.start_main_#t~pre5#1_283| |v_#pthreadsForks_209|) (= (select |v_#valid_970| |v_ULTIMATE.start_main_~#t~1#1.base_512|) 1) (= (+ |v_#pthreadsForks_209| 1) |v_#pthreadsForks_208|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_796|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_376|, #pthreadsForks=|v_#pthreadsForks_209|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_453|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_512|, #valid=|v_#valid_970|, #memory_int=|v_#memory_int_1344|, #length=|v_#length_728|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_283|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_796|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_376|, #pthreadsForks=|v_#pthreadsForks_208|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_453|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_512|, #valid=|v_#valid_970|, #memory_int=|v_#memory_int_1343|, #length=|v_#length_728|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 1361964#[thrENTRY, thrENTRY, thrENTRY, L703-3]don't care [1224] L703-3-->thrENTRY: Formula: (and (= |v_thrThread4of6ForFork0_#in~arg.base_4| 0) (= |v_thrThread4of6ForFork0_#in~arg.offset_4| 0) (= v_thrThread4of6ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_270|)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_270|} OutVars{thrThread4of6ForFork0_~t~0=v_thrThread4of6ForFork0_~t~0_8, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_270|, thrThread4of6ForFork0_~arg.base=v_thrThread4of6ForFork0_~arg.base_4, thrThread4of6ForFork0_~arg.offset=v_thrThread4of6ForFork0_~arg.offset_4, thrThread4of6ForFork0_#res.offset=|v_thrThread4of6ForFork0_#res.offset_2|, thrThread4of6ForFork0_#res.base=|v_thrThread4of6ForFork0_#res.base_2|, thrThread4of6ForFork0_#in~arg.offset=|v_thrThread4of6ForFork0_#in~arg.offset_4|, thrThread4of6ForFork0_#in~arg.base=|v_thrThread4of6ForFork0_#in~arg.base_4|, thrThread4of6ForFork0_thidvar0=v_thrThread4of6ForFork0_thidvar0_2} AuxVars[] AssignedVars[thrThread4of6ForFork0_~t~0, thrThread4of6ForFork0_~arg.base, thrThread4of6ForFork0_~arg.offset, thrThread4of6ForFork0_#res.offset, thrThread4of6ForFork0_#res.base, thrThread4of6ForFork0_#in~arg.offset, thrThread4of6ForFork0_#in~arg.base, thrThread4of6ForFork0_thidvar0] 1361966#[thrENTRY, thrENTRY, thrENTRY, 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] 1297644#[thrENTRY, thrENTRY, thrENTRY, thrENTRY, L703-5]don't care [1301] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_825| 1) |v_ULTIMATE.start_main_~i~0#1_824|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_825|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_824|, 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] 1297648#[thrENTRY, thrENTRY, L702-6, thrENTRY, thrENTRY]don't care [1287] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_796| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_376|))) (and (= |v_#memory_int_1343| (store |v_#memory_int_1344| |v_ULTIMATE.start_main_~#t~1#1.base_512| (store (select |v_#memory_int_1344| |v_ULTIMATE.start_main_~#t~1#1.base_512|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_283|))) (<= (+ .cse1 4 |v_ULTIMATE.start_main_~#t~1#1.offset_376|) (select |v_#length_728| |v_ULTIMATE.start_main_~#t~1#1.base_512|)) (< |v_ULTIMATE.start_main_~i~0#1_796| |v_ULTIMATE.start_main_~n~0#1_453|) (<= 0 .cse0) (= |v_ULTIMATE.start_main_#t~pre5#1_283| |v_#pthreadsForks_209|) (= (select |v_#valid_970| |v_ULTIMATE.start_main_~#t~1#1.base_512|) 1) (= (+ |v_#pthreadsForks_209| 1) |v_#pthreadsForks_208|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_796|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_376|, #pthreadsForks=|v_#pthreadsForks_209|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_453|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_512|, #valid=|v_#valid_970|, #memory_int=|v_#memory_int_1344|, #length=|v_#length_728|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_283|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_796|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_376|, #pthreadsForks=|v_#pthreadsForks_208|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_453|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_512|, #valid=|v_#valid_970|, #memory_int=|v_#memory_int_1343|, #length=|v_#length_728|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 1358446#[thrENTRY, thrENTRY, L703-3, thrENTRY, thrENTRY]don't care [1225] L703-3-->thrENTRY: Formula: (and (= |v_thrThread5of6ForFork0_#in~arg.base_4| 0) (= |v_thrThread5of6ForFork0_#in~arg.offset_4| 0) (= v_thrThread5of6ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre5#1_272|)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_272|} OutVars{thrThread5of6ForFork0_#res.base=|v_thrThread5of6ForFork0_#res.base_2|, thrThread5of6ForFork0_~arg.offset=v_thrThread5of6ForFork0_~arg.offset_4, ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_272|, thrThread5of6ForFork0_~arg.base=v_thrThread5of6ForFork0_~arg.base_4, thrThread5of6ForFork0_#res.offset=|v_thrThread5of6ForFork0_#res.offset_2|, thrThread5of6ForFork0_~t~0=v_thrThread5of6ForFork0_~t~0_8, thrThread5of6ForFork0_thidvar0=v_thrThread5of6ForFork0_thidvar0_2, thrThread5of6ForFork0_#in~arg.offset=|v_thrThread5of6ForFork0_#in~arg.offset_4|, thrThread5of6ForFork0_#in~arg.base=|v_thrThread5of6ForFork0_#in~arg.base_4|} AuxVars[] AssignedVars[thrThread5of6ForFork0_#res.base, thrThread5of6ForFork0_~arg.offset, thrThread5of6ForFork0_~arg.base, thrThread5of6ForFork0_#res.offset, thrThread5of6ForFork0_~t~0, thrThread5of6ForFork0_thidvar0, thrThread5of6ForFork0_#in~arg.offset, thrThread5of6ForFork0_#in~arg.base] 1358450#[thrENTRY, thrENTRY, thrENTRY, L703-4, thrENTRY, thrENTRY]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] 1367206#[thrENTRY, thrENTRY, thrENTRY, thrENTRY, L703-5, thrENTRY]don't care [1301] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_825| 1) |v_ULTIMATE.start_main_~i~0#1_824|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_825|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_824|, 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] 1372862#[L702-6, thrENTRY, thrENTRY, thrENTRY, thrENTRY, thrENTRY]don't care [1287] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_796| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_376|))) (and (= |v_#memory_int_1343| (store |v_#memory_int_1344| |v_ULTIMATE.start_main_~#t~1#1.base_512| (store (select |v_#memory_int_1344| |v_ULTIMATE.start_main_~#t~1#1.base_512|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_283|))) (<= (+ .cse1 4 |v_ULTIMATE.start_main_~#t~1#1.offset_376|) (select |v_#length_728| |v_ULTIMATE.start_main_~#t~1#1.base_512|)) (< |v_ULTIMATE.start_main_~i~0#1_796| |v_ULTIMATE.start_main_~n~0#1_453|) (<= 0 .cse0) (= |v_ULTIMATE.start_main_#t~pre5#1_283| |v_#pthreadsForks_209|) (= (select |v_#valid_970| |v_ULTIMATE.start_main_~#t~1#1.base_512|) 1) (= (+ |v_#pthreadsForks_209| 1) |v_#pthreadsForks_208|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_796|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_376|, #pthreadsForks=|v_#pthreadsForks_209|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_453|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_512|, #valid=|v_#valid_970|, #memory_int=|v_#memory_int_1344|, #length=|v_#length_728|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_283|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_796|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_376|, #pthreadsForks=|v_#pthreadsForks_208|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_453|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_512|, #valid=|v_#valid_970|, #memory_int=|v_#memory_int_1343|, #length=|v_#length_728|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 1315726#[thrENTRY, thrENTRY, L703-3, thrENTRY, thrENTRY, thrENTRY]don't care [1226] L703-3-->thrENTRY: Formula: (and (= |v_thrThread6of6ForFork0_#in~arg.offset_4| 0) (= |v_ULTIMATE.start_main_#t~pre5#1_274| v_thrThread6of6ForFork0_thidvar0_2) (= |v_thrThread6of6ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_274|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_274|, thrThread6of6ForFork0_~arg.offset=v_thrThread6of6ForFork0_~arg.offset_4, thrThread6of6ForFork0_#res.base=|v_thrThread6of6ForFork0_#res.base_2|, thrThread6of6ForFork0_~t~0=v_thrThread6of6ForFork0_~t~0_8, thrThread6of6ForFork0_#in~arg.offset=|v_thrThread6of6ForFork0_#in~arg.offset_4|, thrThread6of6ForFork0_thidvar0=v_thrThread6of6ForFork0_thidvar0_2, thrThread6of6ForFork0_~arg.base=v_thrThread6of6ForFork0_~arg.base_4, thrThread6of6ForFork0_#res.offset=|v_thrThread6of6ForFork0_#res.offset_2|, thrThread6of6ForFork0_#in~arg.base=|v_thrThread6of6ForFork0_#in~arg.base_4|} AuxVars[] AssignedVars[thrThread6of6ForFork0_~arg.offset, thrThread6of6ForFork0_#res.base, thrThread6of6ForFork0_~t~0, thrThread6of6ForFork0_#in~arg.offset, thrThread6of6ForFork0_thidvar0, thrThread6of6ForFork0_~arg.base, thrThread6of6ForFork0_#res.offset, thrThread6of6ForFork0_#in~arg.base] 1315734#[L703-4, thrENTRY, thrENTRY, thrENTRY, thrENTRY, thrENTRY, thrENTRY]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] 1370000#[L703-5, thrENTRY, thrENTRY, thrENTRY, thrENTRY, thrENTRY, thrENTRY]don't care [1301] L703-5-->L702-6: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_825| 1) |v_ULTIMATE.start_main_~i~0#1_824|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_825|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_824|, 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] 1371192#[L702-6, thrENTRY, thrENTRY, thrENTRY, thrENTRY, thrENTRY, thrENTRY]don't care [1287] L702-6-->L703-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_796| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~1#1.offset_376|))) (and (= |v_#memory_int_1343| (store |v_#memory_int_1344| |v_ULTIMATE.start_main_~#t~1#1.base_512| (store (select |v_#memory_int_1344| |v_ULTIMATE.start_main_~#t~1#1.base_512|) .cse0 |v_ULTIMATE.start_main_#t~pre5#1_283|))) (<= (+ .cse1 4 |v_ULTIMATE.start_main_~#t~1#1.offset_376|) (select |v_#length_728| |v_ULTIMATE.start_main_~#t~1#1.base_512|)) (< |v_ULTIMATE.start_main_~i~0#1_796| |v_ULTIMATE.start_main_~n~0#1_453|) (<= 0 .cse0) (= |v_ULTIMATE.start_main_#t~pre5#1_283| |v_#pthreadsForks_209|) (= (select |v_#valid_970| |v_ULTIMATE.start_main_~#t~1#1.base_512|) 1) (= (+ |v_#pthreadsForks_209| 1) |v_#pthreadsForks_208|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_796|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_376|, #pthreadsForks=|v_#pthreadsForks_209|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_453|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_512|, #valid=|v_#valid_970|, #memory_int=|v_#memory_int_1344|, #length=|v_#length_728|} OutVars{ULTIMATE.start_main_#t~pre5#1=|v_ULTIMATE.start_main_#t~pre5#1_283|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_796|, ULTIMATE.start_main_~#t~1#1.offset=|v_ULTIMATE.start_main_~#t~1#1.offset_376|, #pthreadsForks=|v_#pthreadsForks_208|, ULTIMATE.start_main_~n~0#1=|v_ULTIMATE.start_main_~n~0#1_453|, ULTIMATE.start_main_~#t~1#1.base=|v_ULTIMATE.start_main_~#t~1#1.base_512|, #valid=|v_#valid_970|, #memory_int=|v_#memory_int_1343|, #length=|v_#length_728|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre5#1, #pthreadsForks, #memory_int] 1257512#[L703-3, thrENTRY, thrENTRY, thrENTRY, thrENTRY, thrENTRY, thrENTRY]don't care [1219] L703-3-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 1257514#[thrENTRY, thrENTRY, thrENTRY, thrENTRY, thrENTRY, thrENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES]don't care [2022-07-22 12:16:32,934 INFO L750 eck$LassoCheckResult]: Loop: 1257514#[thrENTRY, thrENTRY, thrENTRY, thrENTRY, thrENTRY, thrENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES]don't care [1220] ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 1257514#[thrENTRY, thrENTRY, thrENTRY, thrENTRY, thrENTRY, thrENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES]don't care [2022-07-22 12:16:32,934 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:16:32,934 INFO L85 PathProgramCache]: Analyzing trace with hash 1430611692, now seen corresponding path program 1 times [2022-07-22 12:16:32,934 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:16:32,935 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1724731753] [2022-07-22 12:16:32,935 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:16:32,935 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:16:32,959 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:16:32,960 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:16:32,979 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:16:32,987 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:16:32,987 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:16:32,987 INFO L85 PathProgramCache]: Analyzing trace with hash 1251, now seen corresponding path program 1 times [2022-07-22 12:16:32,988 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:16:32,988 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [157806908] [2022-07-22 12:16:32,988 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:16:32,988 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:16:32,992 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:16:32,993 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:16:32,993 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:16:32,996 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:16:32,996 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:16:32,996 INFO L85 PathProgramCache]: Analyzing trace with hash 1399290712, now seen corresponding path program 1 times [2022-07-22 12:16:32,996 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:16:32,997 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [94233162] [2022-07-22 12:16:32,997 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:16:32,997 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:16:33,017 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:16:33,018 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:16:33,035 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:16:33,042 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:16:38,663 WARN L146 chiAutomizerObserver]: 6 thread instances were not sufficient, I will increase this number and restart the analysis [2022-07-22 12:16:38,679 INFO L144 ThreadInstanceAdder]: Constructed 7 joinOtherThreadTransitions. [2022-07-22 12:16:38,694 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 131 places, 130 transitions, 358 flow [2022-07-22 12:16:40,523 INFO L129 PetriNetUnfolder]: 850/4964 cut-off events. [2022-07-22 12:16:40,524 INFO L130 PetriNetUnfolder]: For 525/525 co-relation queries the response was YES. [2022-07-22 12:16:40,548 INFO L84 FinitePrefix]: Finished finitePrefix Result has 5462 conditions, 4964 events. 850/4964 cut-off events. For 525/525 co-relation queries the response was YES. Maximal size of possible extension queue 92. Compared 42387 event pairs, 201 based on Foata normal form. 0/4307 useless extension candidates. Maximal degree in co-relation 2731. Up to 448 conditions per place. [2022-07-22 12:16:40,549 INFO L82 GeneralOperation]: Start removeDead. Operand has 131 places, 130 transitions, 358 flow [2022-07-22 12:16:40,627 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 131 places, 130 transitions, 358 flow [2022-07-22 12:16:40,627 INFO L115 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-07-22 12:16:40,628 INFO L131 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 131 places, 130 transitions, 358 flow [2022-07-22 12:16:40,628 INFO L110 LiptonReduction]: Starting Lipton reduction on Petri net that has 131 places, 130 transitions, 358 flow [2022-07-22 12:16:40,628 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 131 places, 130 transitions, 358 flow [2022-07-22 12:16:41,971 INFO L129 PetriNetUnfolder]: 850/4964 cut-off events. [2022-07-22 12:16:41,972 INFO L130 PetriNetUnfolder]: For 525/525 co-relation queries the response was YES. [2022-07-22 12:16:42,017 INFO L84 FinitePrefix]: Finished finitePrefix Result has 5462 conditions, 4964 events. 850/4964 cut-off events. For 525/525 co-relation queries the response was YES. Maximal size of possible extension queue 93. Compared 42063 event pairs, 201 based on Foata normal form. 0/4307 useless extension candidates. Maximal degree in co-relation 2731. Up to 448 conditions per place. [2022-07-22 12:16:42,210 INFO L116 LiptonReduction]: Number of co-enabled transitions 5040 [2022-07-22 12:16:45,254 INFO L131 LiptonReduction]: Checked pairs total: 21460 [2022-07-22 12:16:45,254 INFO L133 LiptonReduction]: Total number of compositions: 95 [2022-07-22 12:16:45,255 INFO L300 stractBuchiCegarLoop]: Interprodecural is true [2022-07-22 12:16:45,255 INFO L301 stractBuchiCegarLoop]: Hoare is false [2022-07-22 12:16:45,255 INFO L302 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2022-07-22 12:16:45,255 INFO L303 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2022-07-22 12:16:45,255 INFO L304 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2022-07-22 12:16:45,255 INFO L305 stractBuchiCegarLoop]: Difference is false [2022-07-22 12:16:45,256 INFO L306 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2022-07-22 12:16:45,256 INFO L310 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2022-07-22 12:16:45,256 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 0 states, but on-demand construction may add more states Received shutdown request... [2022-07-22 12:17:03,824 WARN L321 stractBuchiCegarLoop]: Verification cancelled [2022-07-22 12:17:03,829 WARN L340 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Timeout while monitored process is still running, waiting 1000 ms for graceful end [2022-07-22 12:17:03,829 WARN L340 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Timeout while monitored process is still running, waiting 1000 ms for graceful end [2022-07-22 12:17:03,829 WARN L340 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Timeout while monitored process is still running, waiting 1000 ms for graceful end [2022-07-22 12:17:03,829 WARN L340 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Timeout while monitored process is still running, waiting 1000 ms for graceful end [2022-07-22 12:17:03,829 WARN L340 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Timeout while monitored process is still running, waiting 1000 ms for graceful end [2022-07-22 12:17:03,829 WARN L340 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Timeout while monitored process is still running, waiting 1000 ms for graceful end [2022-07-22 12:17:03,829 WARN L340 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Timeout while monitored process is still running, waiting 1000 ms for graceful end [2022-07-22 12:17:03,829 WARN L340 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Timeout while monitored process is still running, waiting 1000 ms for graceful end [2022-07-22 12:17:03,829 WARN L340 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (1)] Timeout while monitored process is still running, waiting 1000 ms for graceful end [2022-07-22 12:17:03,829 WARN L340 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Timeout while monitored process is still running, waiting 1000 ms for graceful end [2022-07-22 12:17:03,829 WARN L340 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Timeout while monitored process is still running, waiting 1000 ms for graceful end [2022-07-22 12:17:03,839 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer CFG 22.07 12:17:03 BoogieIcfgContainer [2022-07-22 12:17:03,839 INFO L132 PluginConnector]: ------------------------ END BuchiAutomizer---------------------------- [2022-07-22 12:17:03,840 INFO L158 Benchmark]: Toolchain (without parser) took 175241.62ms. Allocated memory was 158.3MB in the beginning and 8.0GB in the end (delta: 7.8GB). Free memory was 132.4MB in the beginning and 6.3GB in the end (delta: -6.2GB). Peak memory consumption was 1.9GB. Max. memory is 8.0GB. [2022-07-22 12:17:03,841 INFO L158 Benchmark]: CDTParser took 0.29ms. Allocated memory is still 158.3MB. Free memory is still 127.6MB. There was no memory consumed. Max. memory is 8.0GB. [2022-07-22 12:17:03,841 INFO L158 Benchmark]: CACSL2BoogieTranslator took 700.52ms. Allocated memory is still 158.3MB. Free memory was 132.3MB in the beginning and 112.8MB in the end (delta: 19.5MB). Peak memory consumption was 19.9MB. Max. memory is 8.0GB. [2022-07-22 12:17:03,844 INFO L158 Benchmark]: Boogie Procedure Inliner took 113.82ms. Allocated memory is still 158.3MB. Free memory was 112.8MB in the beginning and 110.7MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-07-22 12:17:03,845 INFO L158 Benchmark]: Boogie Preprocessor took 53.81ms. Allocated memory is still 158.3MB. Free memory was 110.7MB in the beginning and 109.3MB in the end (delta: 1.4MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-07-22 12:17:03,846 INFO L158 Benchmark]: RCFGBuilder took 724.31ms. Allocated memory is still 158.3MB. Free memory was 109.2MB in the beginning and 135.5MB in the end (delta: -26.2MB). Peak memory consumption was 11.7MB. Max. memory is 8.0GB. [2022-07-22 12:17:03,846 INFO L158 Benchmark]: BuchiAutomizer took 173638.27ms. Allocated memory was 158.3MB in the beginning and 8.0GB in the end (delta: 7.8GB). Free memory was 134.9MB in the beginning and 6.3GB in the end (delta: -6.2GB). Peak memory consumption was 1.9GB. Max. memory is 8.0GB. [2022-07-22 12:17:03,848 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.29ms. Allocated memory is still 158.3MB. Free memory is still 127.6MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 700.52ms. Allocated memory is still 158.3MB. Free memory was 132.3MB in the beginning and 112.8MB in the end (delta: 19.5MB). Peak memory consumption was 19.9MB. Max. memory is 8.0GB. * Boogie Procedure Inliner took 113.82ms. Allocated memory is still 158.3MB. Free memory was 112.8MB in the beginning and 110.7MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * Boogie Preprocessor took 53.81ms. Allocated memory is still 158.3MB. Free memory was 110.7MB in the beginning and 109.3MB in the end (delta: 1.4MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 724.31ms. Allocated memory is still 158.3MB. Free memory was 109.2MB in the beginning and 135.5MB in the end (delta: -26.2MB). Peak memory consumption was 11.7MB. Max. memory is 8.0GB. * BuchiAutomizer took 173638.27ms. Allocated memory was 158.3MB in the beginning and 8.0GB in the end (delta: 7.8GB). Free memory was 134.9MB in the beginning and 6.3GB in the end (delta: -6.2GB). Peak memory consumption was 1.9GB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: Constructed decomposition of program Trivial decomposition into one module whose termination is unknown. - StatisticsResult: Timing statistics BüchiAutomizer plugin needed 45.0s and 22 iterations. TraceHistogramMax:7. Analysis of lassos took 20.3s. Construction of modules took 1.1s. Büchi inclusion checks took 74.6s. Highest rank in rank-based complementation 0. Minimization of det autom 16. Minimization of nondet autom 0. Automata minimization 29.8s AutomataMinimizationTime, 16 MinimizatonAttempts, 20887 StatesRemovedByMinimization, 6 NontrivialMinimizations. Non-live state removal took 30.1s Buchi closure took 2.5s. Biggest automaton had -1 states and ocurred in iteration -1. Nontrivial modules had stage [0, 0, 0, 0, 0]. InterpolantCoveringCapabilityFinite: 0/0 InterpolantCoveringCapabilityBuchi: 0/0 HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 1643 SdHoareTripleChecker+Valid, 1.4s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 1643 mSDsluCounter, 572 SdHoareTripleChecker+Invalid, 1.2s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 1213 mSDsCounter, 183 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 1546 IncrementalHoareTripleChecker+Invalid, 1729 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 183 mSolverCounterUnsat, 164 mSDtfsCounter, 1546 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown LassoAnalysisResults: nont6 unkn0 SFLI0 SFLT0 conc0 concLT0 SILN0 SILU16 SILI0 SILT0 lasso0 LassoPreprocessingBenchmarks: LassoTerminationAnalysisBenchmarks: not availableLassoTerminationAnalysisBenchmarks: LassoNonterminationAnalysisSatFixpoint: 0 LassoNonterminationAnalysisSatUnbounded: 0 LassoNonterminationAnalysisUnsat: 0 LassoNonterminationAnalysisUnknown: 0 LassoNonterminationAnalysisTime: 0.0s InitialAbstractionConstructionTime: 26.5s - TimeoutResult: Timeout (de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction) Buchi Automizer is unable to decide termination: Timeout while executing BuchiIsEmpty. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer: - StatisticsResult: PetriNetLargeBlockEncoding benchmarks Lipton Reduction Statistics: ReductionTime: 3.0s, 83 PlacesBefore, 14 PlacesAfterwards, 88 TransitionsBefore, 14 TransitionsAfterwards, 440 CoEnabledTransitionPairs, 6 FixpointIterations, 35 TrivialSequentialCompositions, 33 ConcurrentSequentialCompositions, 3 TrivialYvCompositions, 10 ConcurrentYvCompositions, 5 ChoiceCompositions, 86 TotalNumberOfCompositions, 441 MoverChecksTotal, Independence Relation Statistics: CachedIndependenceRelation.Independence Queries: [ total: 370, positive: 344, positive conditional: 0, positive unconditional: 344, negative: 26, negative conditional: 0, negative unconditional: 26, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , CachedIndependenceRelation.Statistics on underlying relation: UnionIndependenceRelation.Independence Queries: [ total: 313, positive: 302, positive conditional: 0, positive unconditional: 302, negative: 11, negative conditional: 0, negative unconditional: 11, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , UnionIndependenceRelation.Statistics on underlying relations: [ SyntacticIndependenceRelation.Independence Queries: [ total: 313, positive: 300, positive conditional: 0, positive unconditional: 300, negative: 13, negative conditional: 0, negative unconditional: 13, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticIndependenceRelation.Independence Queries: [ total: 13, positive: 2, positive conditional: 0, positive unconditional: 2, negative: 11, negative conditional: 0, negative unconditional: 11, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticIndependenceRelation.Query Time [ms]: [ total: 97, positive: 11, positive conditional: 0, positive unconditional: 11, negative: 86, negative conditional: 0, negative unconditional: 86, unknown: 0, unknown conditional: 0, unknown unconditional: 0] ], Cache Queries: [ total: 370, positive: 42, positive conditional: 0, positive unconditional: 42, negative: 15, negative conditional: 0, negative unconditional: 15, unknown: 313, unknown conditional: 0, unknown unconditional: 313] , Statistics on independence cache: Total cache size (in pairs): 6, Positive cache size: 3, Positive conditional cache size: 0, Positive unconditional cache size: 3, Negative cache size: 3, Negative conditional cache size: 0, Negative unconditional cache size: 3 - StatisticsResult: PetriNetLargeBlockEncoding benchmarks Lipton Reduction Statistics: ReductionTime: 3.2s, 91 PlacesBefore, 24 PlacesAfterwards, 95 TransitionsBefore, 23 TransitionsAfterwards, 1040 CoEnabledTransitionPairs, 7 FixpointIterations, 33 TrivialSequentialCompositions, 32 ConcurrentSequentialCompositions, 3 TrivialYvCompositions, 12 ConcurrentYvCompositions, 5 ChoiceCompositions, 85 TotalNumberOfCompositions, 2864 MoverChecksTotal, Independence Relation Statistics: CachedIndependenceRelation.Independence Queries: [ total: 1647, positive: 1534, positive conditional: 0, positive unconditional: 1534, negative: 113, negative conditional: 0, negative unconditional: 113, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , CachedIndependenceRelation.Statistics on underlying relation: UnionIndependenceRelation.Independence Queries: [ total: 704, positive: 682, positive conditional: 0, positive unconditional: 682, negative: 22, negative conditional: 0, negative unconditional: 22, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , UnionIndependenceRelation.Statistics on underlying relations: [ SyntacticIndependenceRelation.Independence Queries: [ total: 704, positive: 674, positive conditional: 0, positive unconditional: 674, negative: 30, negative conditional: 0, negative unconditional: 30, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticIndependenceRelation.Independence Queries: [ total: 30, positive: 8, positive conditional: 0, positive unconditional: 8, negative: 22, negative conditional: 0, negative unconditional: 22, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticIndependenceRelation.Query Time [ms]: [ total: 103, positive: 27, positive conditional: 0, positive unconditional: 27, negative: 76, negative conditional: 0, negative unconditional: 76, unknown: 0, unknown conditional: 0, unknown unconditional: 0] ], Cache Queries: [ total: 1647, positive: 852, positive conditional: 0, positive unconditional: 852, negative: 91, negative conditional: 0, negative unconditional: 91, unknown: 704, unknown conditional: 0, unknown unconditional: 704] , Statistics on independence cache: Total cache size (in pairs): 78, Positive cache size: 68, Positive conditional cache size: 0, Positive unconditional cache size: 68, Negative cache size: 10, Negative conditional cache size: 0, Negative unconditional cache size: 10 - StatisticsResult: PetriNetLargeBlockEncoding benchmarks Lipton Reduction Statistics: ReductionTime: 2.5s, 99 PlacesBefore, 30 PlacesAfterwards, 102 TransitionsBefore, 28 TransitionsAfterwards, 1680 CoEnabledTransitionPairs, 6 FixpointIterations, 31 TrivialSequentialCompositions, 36 ConcurrentSequentialCompositions, 2 TrivialYvCompositions, 11 ConcurrentYvCompositions, 5 ChoiceCompositions, 85 TotalNumberOfCompositions, 5141 MoverChecksTotal, Independence Relation Statistics: CachedIndependenceRelation.Independence Queries: [ total: 3059, positive: 2911, positive conditional: 0, positive unconditional: 2911, negative: 148, negative conditional: 0, negative unconditional: 148, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , CachedIndependenceRelation.Statistics on underlying relation: UnionIndependenceRelation.Independence Queries: [ total: 1361, positive: 1322, positive conditional: 0, positive unconditional: 1322, negative: 39, negative conditional: 0, negative unconditional: 39, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , UnionIndependenceRelation.Statistics on underlying relations: [ SyntacticIndependenceRelation.Independence Queries: [ total: 1361, positive: 1311, positive conditional: 0, positive unconditional: 1311, negative: 50, negative conditional: 0, negative unconditional: 50, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticIndependenceRelation.Independence Queries: [ total: 50, positive: 11, positive conditional: 0, positive unconditional: 11, negative: 39, negative conditional: 0, negative unconditional: 39, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticIndependenceRelation.Query Time [ms]: [ total: 173, positive: 34, positive conditional: 0, positive unconditional: 34, negative: 139, negative conditional: 0, negative unconditional: 139, unknown: 0, unknown conditional: 0, unknown unconditional: 0] ], Cache Queries: [ total: 3059, positive: 1589, positive conditional: 0, positive unconditional: 1589, negative: 109, negative conditional: 0, negative unconditional: 109, unknown: 1361, unknown conditional: 0, unknown unconditional: 1361] , Statistics on independence cache: Total cache size (in pairs): 217, Positive cache size: 202, Positive conditional cache size: 0, Positive unconditional cache size: 202, Negative cache size: 15, Negative conditional cache size: 0, Negative unconditional cache size: 15 - StatisticsResult: PetriNetLargeBlockEncoding benchmarks Lipton Reduction Statistics: ReductionTime: 2.8s, 107 PlacesBefore, 36 PlacesAfterwards, 109 TransitionsBefore, 33 TransitionsAfterwards, 2400 CoEnabledTransitionPairs, 7 FixpointIterations, 34 TrivialSequentialCompositions, 37 ConcurrentSequentialCompositions, 2 TrivialYvCompositions, 11 ConcurrentYvCompositions, 5 ChoiceCompositions, 89 TotalNumberOfCompositions, 8421 MoverChecksTotal, Independence Relation Statistics: CachedIndependenceRelation.Independence Queries: [ total: 4544, positive: 4332, positive conditional: 0, positive unconditional: 4332, negative: 212, negative conditional: 0, negative unconditional: 212, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , CachedIndependenceRelation.Statistics on underlying relation: UnionIndependenceRelation.Independence Queries: [ total: 1576, positive: 1535, positive conditional: 0, positive unconditional: 1535, negative: 41, negative conditional: 0, negative unconditional: 41, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , UnionIndependenceRelation.Statistics on underlying relations: [ SyntacticIndependenceRelation.Independence Queries: [ total: 1576, positive: 1507, positive conditional: 0, positive unconditional: 1507, negative: 69, negative conditional: 0, negative unconditional: 69, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticIndependenceRelation.Independence Queries: [ total: 69, positive: 28, positive conditional: 0, positive unconditional: 28, negative: 41, negative conditional: 0, negative unconditional: 41, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticIndependenceRelation.Query Time [ms]: [ total: 160, positive: 67, positive conditional: 0, positive unconditional: 67, negative: 93, negative conditional: 0, negative unconditional: 93, unknown: 0, unknown conditional: 0, unknown unconditional: 0] ], Cache Queries: [ total: 4544, positive: 2797, positive conditional: 0, positive unconditional: 2797, negative: 171, negative conditional: 0, negative unconditional: 171, unknown: 1576, unknown conditional: 0, unknown unconditional: 1576] , Statistics on independence cache: Total cache size (in pairs): 259, Positive cache size: 239, Positive conditional cache size: 0, Positive unconditional cache size: 239, Negative cache size: 20, Negative conditional cache size: 0, Negative unconditional cache size: 20 - StatisticsResult: PetriNetLargeBlockEncoding benchmarks Lipton Reduction Statistics: ReductionTime: 2.9s, 115 PlacesBefore, 42 PlacesAfterwards, 116 TransitionsBefore, 38 TransitionsAfterwards, 3200 CoEnabledTransitionPairs, 6 FixpointIterations, 32 TrivialSequentialCompositions, 40 ConcurrentSequentialCompositions, 2 TrivialYvCompositions, 10 ConcurrentYvCompositions, 5 ChoiceCompositions, 89 TotalNumberOfCompositions, 10879 MoverChecksTotal, Independence Relation Statistics: CachedIndependenceRelation.Independence Queries: [ total: 4867, positive: 4640, positive conditional: 0, positive unconditional: 4640, negative: 227, negative conditional: 0, negative unconditional: 227, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , CachedIndependenceRelation.Statistics on underlying relation: UnionIndependenceRelation.Independence Queries: [ total: 2431, positive: 2375, positive conditional: 0, positive unconditional: 2375, negative: 56, negative conditional: 0, negative unconditional: 56, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , UnionIndependenceRelation.Statistics on underlying relations: [ SyntacticIndependenceRelation.Independence Queries: [ total: 2431, positive: 2365, positive conditional: 0, positive unconditional: 2365, negative: 66, negative conditional: 0, negative unconditional: 66, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticIndependenceRelation.Independence Queries: [ total: 66, positive: 10, positive conditional: 0, positive unconditional: 10, negative: 56, negative conditional: 0, negative unconditional: 56, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticIndependenceRelation.Query Time [ms]: [ total: 173, positive: 13, positive conditional: 0, positive unconditional: 13, negative: 160, negative conditional: 0, negative unconditional: 160, unknown: 0, unknown conditional: 0, unknown unconditional: 0] ], Cache Queries: [ total: 4867, positive: 2265, positive conditional: 0, positive unconditional: 2265, negative: 171, negative conditional: 0, negative unconditional: 171, unknown: 2431, unknown conditional: 0, unknown unconditional: 2431] , Statistics on independence cache: Total cache size (in pairs): 384, Positive cache size: 359, Positive conditional cache size: 0, Positive unconditional cache size: 359, Negative cache size: 25, Negative conditional cache size: 0, Negative unconditional cache size: 25 - StatisticsResult: PetriNetLargeBlockEncoding benchmarks Lipton Reduction Statistics: ReductionTime: 4.2s, 123 PlacesBefore, 48 PlacesAfterwards, 123 TransitionsBefore, 43 TransitionsAfterwards, 4080 CoEnabledTransitionPairs, 7 FixpointIterations, 36 TrivialSequentialCompositions, 41 ConcurrentSequentialCompositions, 3 TrivialYvCompositions, 11 ConcurrentYvCompositions, 5 ChoiceCompositions, 96 TotalNumberOfCompositions, 17373 MoverChecksTotal, Independence Relation Statistics: CachedIndependenceRelation.Independence Queries: [ total: 10384, positive: 10057, positive conditional: 0, positive unconditional: 10057, negative: 327, negative conditional: 0, negative unconditional: 327, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , CachedIndependenceRelation.Statistics on underlying relation: UnionIndependenceRelation.Independence Queries: [ total: 3352, positive: 3279, positive conditional: 0, positive unconditional: 3279, negative: 73, negative conditional: 0, negative unconditional: 73, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , UnionIndependenceRelation.Statistics on underlying relations: [ SyntacticIndependenceRelation.Independence Queries: [ total: 3352, positive: 3237, positive conditional: 0, positive unconditional: 3237, negative: 115, negative conditional: 0, negative unconditional: 115, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticIndependenceRelation.Independence Queries: [ total: 115, positive: 42, positive conditional: 0, positive unconditional: 42, negative: 73, negative conditional: 0, negative unconditional: 73, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticIndependenceRelation.Query Time [ms]: [ total: 276, positive: 94, positive conditional: 0, positive unconditional: 94, negative: 182, negative conditional: 0, negative unconditional: 182, unknown: 0, unknown conditional: 0, unknown unconditional: 0] ], Cache Queries: [ total: 10384, positive: 6778, positive conditional: 0, positive unconditional: 6778, negative: 254, negative conditional: 0, negative unconditional: 254, unknown: 3352, unknown conditional: 0, unknown unconditional: 3352] , Statistics on independence cache: Total cache size (in pairs): 729, Positive cache size: 699, Positive conditional cache size: 0, Positive unconditional cache size: 699, Negative cache size: 30, Negative conditional cache size: 0, Negative unconditional cache size: 30 - StatisticsResult: PetriNetLargeBlockEncoding benchmarks Lipton Reduction Statistics: ReductionTime: 4.6s, 131 PlacesBefore, 54 PlacesAfterwards, 130 TransitionsBefore, 48 TransitionsAfterwards, 5040 CoEnabledTransitionPairs, 7 FixpointIterations, 33 TrivialSequentialCompositions, 45 ConcurrentSequentialCompositions, 2 TrivialYvCompositions, 10 ConcurrentYvCompositions, 5 ChoiceCompositions, 95 TotalNumberOfCompositions, 21460 MoverChecksTotal, Independence Relation Statistics: CachedIndependenceRelation.Independence Queries: [ total: 11757, positive: 11385, positive conditional: 0, positive unconditional: 11385, negative: 372, negative conditional: 0, negative unconditional: 372, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , CachedIndependenceRelation.Statistics on underlying relation: UnionIndependenceRelation.Independence Queries: [ total: 3611, positive: 3547, positive conditional: 0, positive unconditional: 3547, negative: 64, negative conditional: 0, negative unconditional: 64, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , UnionIndependenceRelation.Statistics on underlying relations: [ SyntacticIndependenceRelation.Independence Queries: [ total: 3611, positive: 3498, positive conditional: 0, positive unconditional: 3498, negative: 113, negative conditional: 0, negative unconditional: 113, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticIndependenceRelation.Independence Queries: [ total: 113, positive: 49, positive conditional: 0, positive unconditional: 49, negative: 64, negative conditional: 0, negative unconditional: 64, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticIndependenceRelation.Query Time [ms]: [ total: 271, positive: 104, positive conditional: 0, positive unconditional: 104, negative: 167, negative conditional: 0, negative unconditional: 167, unknown: 0, unknown conditional: 0, unknown unconditional: 0] ], Cache Queries: [ total: 11757, positive: 7838, positive conditional: 0, positive unconditional: 7838, negative: 308, negative conditional: 0, negative unconditional: 308, unknown: 3611, unknown conditional: 0, unknown unconditional: 3611] , Statistics on independence cache: Total cache size (in pairs): 878, Positive cache size: 844, Positive conditional cache size: 0, Positive unconditional cache size: 844, Negative cache size: 34, Negative conditional cache size: 0, Negative unconditional cache size: 34 RESULT: Ultimate could not prove your program: Timeout Completed graceful shutdown