/usr/bin/java -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data -tc ../../../trunk/examples/toolchains/BuchiAutomizerCInline.xml -s ../../../trunk/examples/settings/buchiAutomizer/concurrent-automaton-syntacticLbe.epf -i ../../../trunk/examples/svcomp/pthread-deagle/floating_read-5.i -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-21b0908 [2022-07-22 12:53:43,135 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-07-22 12:53:43,138 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-07-22 12:53:43,182 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-07-22 12:53:43,183 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-07-22 12:53:43,184 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-07-22 12:53:43,186 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-07-22 12:53:43,188 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-07-22 12:53:43,190 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-07-22 12:53:43,191 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-07-22 12:53:43,192 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-07-22 12:53:43,194 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-07-22 12:53:43,194 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-07-22 12:53:43,195 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-07-22 12:53:43,196 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-07-22 12:53:43,198 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-07-22 12:53:43,199 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-07-22 12:53:43,200 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-07-22 12:53:43,202 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-07-22 12:53:43,204 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-07-22 12:53:43,206 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-07-22 12:53:43,207 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-07-22 12:53:43,208 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-07-22 12:53:43,210 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-07-22 12:53:43,211 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-07-22 12:53:43,214 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-07-22 12:53:43,215 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-07-22 12:53:43,215 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-07-22 12:53:43,216 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-07-22 12:53:43,216 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-07-22 12:53:43,217 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-07-22 12:53:43,218 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-07-22 12:53:43,219 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-07-22 12:53:43,220 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-07-22 12:53:43,220 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-07-22 12:53:43,222 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-07-22 12:53:43,222 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-07-22 12:53:43,223 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-07-22 12:53:43,223 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-07-22 12:53:43,224 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-07-22 12:53:43,225 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-07-22 12:53:43,230 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-07-22 12:53:43,231 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/buchiAutomizer/concurrent-automaton-syntacticLbe.epf [2022-07-22 12:53:43,287 INFO L113 SettingsManager]: Loading preferences was successful [2022-07-22 12:53:43,287 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-07-22 12:53:43,290 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-07-22 12:53:43,291 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-07-22 12:53:43,292 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-07-22 12:53:43,292 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-07-22 12:53:43,293 INFO L138 SettingsManager]: * Use SBE=true [2022-07-22 12:53:43,293 INFO L136 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2022-07-22 12:53:43,293 INFO L138 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2022-07-22 12:53:43,294 INFO L138 SettingsManager]: * Use old map elimination=false [2022-07-22 12:53:43,294 INFO L138 SettingsManager]: * Use external solver (rank synthesis)=false [2022-07-22 12:53:43,295 INFO L138 SettingsManager]: * Use only trivial implications for array writes=true [2022-07-22 12:53:43,295 INFO L138 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2022-07-22 12:53:43,295 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-07-22 12:53:43,295 INFO L138 SettingsManager]: * sizeof long=4 [2022-07-22 12:53:43,295 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-07-22 12:53:43,296 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-07-22 12:53:43,296 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-07-22 12:53:43,296 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-07-22 12:53:43,296 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2022-07-22 12:53:43,297 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2022-07-22 12:53:43,297 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2022-07-22 12:53:43,297 INFO L138 SettingsManager]: * sizeof long double=12 [2022-07-22 12:53:43,297 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-07-22 12:53:43,298 INFO L138 SettingsManager]: * Assume nondeterminstic values are in range=false [2022-07-22 12:53:43,298 INFO L138 SettingsManager]: * Use constant arrays=true [2022-07-22 12:53:43,298 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2022-07-22 12:53:43,298 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-07-22 12:53:43,299 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-07-22 12:53:43,299 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-07-22 12:53:43,299 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-07-22 12:53:43,299 INFO L138 SettingsManager]: * Independence relation used for large block encoding in concurrent analysis=SYNTACTIC [2022-07-22 12:53:43,302 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-07-22 12:53:43,302 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:53:43,675 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-07-22 12:53:43,701 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-07-22 12:53:43,705 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-07-22 12:53:43,706 INFO L271 PluginConnector]: Initializing CDTParser... [2022-07-22 12:53:43,707 INFO L275 PluginConnector]: CDTParser initialized [2022-07-22 12:53:43,708 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/pthread-deagle/floating_read-5.i [2022-07-22 12:53:43,795 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/19d4fac79/2481e347b2aa45049c450ab786d0e5bf/FLAG76be67207 [2022-07-22 12:53:44,526 INFO L306 CDTParser]: Found 1 translation units. [2022-07-22 12:53:44,528 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/pthread-deagle/floating_read-5.i [2022-07-22 12:53:44,550 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/19d4fac79/2481e347b2aa45049c450ab786d0e5bf/FLAG76be67207 [2022-07-22 12:53:44,812 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/19d4fac79/2481e347b2aa45049c450ab786d0e5bf [2022-07-22 12:53:44,818 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-07-22 12:53:44,824 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-07-22 12:53:44,825 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-07-22 12:53:44,826 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-07-22 12:53:44,830 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-07-22 12:53:44,830 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 22.07 12:53:44" (1/1) ... [2022-07-22 12:53:44,832 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@1c2d8e44 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.07 12:53:44, skipping insertion in model container [2022-07-22 12:53:44,832 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 22.07 12:53:44" (1/1) ... [2022-07-22 12:53:44,840 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-07-22 12:53:44,879 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-07-22 12:53:45,277 WARN L1550 CHandler]: Possible shadowing of function thread [2022-07-22 12:53:45,292 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-deagle/floating_read-5.i[31193,31206] [2022-07-22 12:53:45,298 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-07-22 12:53:45,313 INFO L203 MainTranslator]: Completed pre-run [2022-07-22 12:53:45,383 WARN L1550 CHandler]: Possible shadowing of function thread [2022-07-22 12:53:45,389 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-deagle/floating_read-5.i[31193,31206] [2022-07-22 12:53:45,392 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-07-22 12:53:45,449 INFO L208 MainTranslator]: Completed translation [2022-07-22 12:53:45,449 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.07 12:53:45 WrapperNode [2022-07-22 12:53:45,449 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-07-22 12:53:45,451 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-07-22 12:53:45,451 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-07-22 12:53:45,451 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-07-22 12:53:45,459 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:53:45" (1/1) ... [2022-07-22 12:53:45,475 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:53:45" (1/1) ... [2022-07-22 12:53:45,498 INFO L137 Inliner]: procedures = 162, calls = 17, calls flagged for inlining = 2, calls inlined = 2, statements flattened = 52 [2022-07-22 12:53:45,498 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-07-22 12:53:45,499 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-07-22 12:53:45,499 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-07-22 12:53:45,499 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-07-22 12:53:45,508 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.07 12:53:45" (1/1) ... [2022-07-22 12:53:45,508 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.07 12:53:45" (1/1) ... [2022-07-22 12:53:45,512 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.07 12:53:45" (1/1) ... [2022-07-22 12:53:45,512 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.07 12:53:45" (1/1) ... [2022-07-22 12:53:45,520 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.07 12:53:45" (1/1) ... [2022-07-22 12:53:45,524 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.07 12:53:45" (1/1) ... [2022-07-22 12:53:45,526 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.07 12:53:45" (1/1) ... [2022-07-22 12:53:45,529 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-07-22 12:53:45,530 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-07-22 12:53:45,530 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-07-22 12:53:45,530 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-07-22 12:53:45,531 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.07 12:53:45" (1/1) ... [2022-07-22 12:53:45,546 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-22 12:53:45,568 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-22 12:53:45,580 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:53:45,590 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:53:45,650 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-07-22 12:53:45,650 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-07-22 12:53:45,651 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2022-07-22 12:53:45,651 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-07-22 12:53:45,653 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-07-22 12:53:45,653 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-07-22 12:53:45,654 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-07-22 12:53:45,654 INFO L130 BoogieDeclarations]: Found specification of procedure thread [2022-07-22 12:53:45,654 INFO L138 BoogieDeclarations]: Found implementation of procedure thread [2022-07-22 12:53:45,654 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2022-07-22 12:53:45,654 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-07-22 12:53:45,654 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-07-22 12:53:45,656 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:53:45,903 INFO L234 CfgBuilder]: Building ICFG [2022-07-22 12:53:45,905 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-07-22 12:53:46,126 INFO L275 CfgBuilder]: Performing block encoding [2022-07-22 12:53:46,134 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-07-22 12:53:46,134 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-07-22 12:53:46,137 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 22.07 12:53:46 BoogieIcfgContainer [2022-07-22 12:53:46,137 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-07-22 12:53:46,138 INFO L113 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2022-07-22 12:53:46,138 INFO L271 PluginConnector]: Initializing BuchiAutomizer... [2022-07-22 12:53:46,142 INFO L275 PluginConnector]: BuchiAutomizer initialized [2022-07-22 12:53:46,143 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2022-07-22 12:53:46,144 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "CDTParser AST 22.07 12:53:44" (1/3) ... [2022-07-22 12:53:46,145 INFO L205 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@7fd3e03d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 22.07 12:53:46, skipping insertion in model container [2022-07-22 12:53:46,145 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2022-07-22 12:53:46,145 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.07 12:53:45" (2/3) ... [2022-07-22 12:53:46,145 INFO L205 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@7fd3e03d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 22.07 12:53:46, skipping insertion in model container [2022-07-22 12:53:46,146 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2022-07-22 12:53:46,146 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 22.07 12:53:46" (3/3) ... [2022-07-22 12:53:46,147 INFO L322 chiAutomizerObserver]: Analyzing ICFG floating_read-5.i [2022-07-22 12:53:46,212 INFO L144 ThreadInstanceAdder]: Constructed 1 joinOtherThreadTransitions. [2022-07-22 12:53:46,269 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 57 places, 59 transitions, 126 flow [2022-07-22 12:53:46,333 INFO L129 PetriNetUnfolder]: 8/80 cut-off events. [2022-07-22 12:53:46,333 INFO L130 PetriNetUnfolder]: For 1/1 co-relation queries the response was YES. [2022-07-22 12:53:46,336 INFO L84 FinitePrefix]: Finished finitePrefix Result has 86 conditions, 80 events. 8/80 cut-off events. For 1/1 co-relation queries the response was YES. Maximal size of possible extension queue 4. Compared 95 event pairs, 0 based on Foata normal form. 0/70 useless extension candidates. Maximal degree in co-relation 41. Up to 4 conditions per place. [2022-07-22 12:53:46,337 INFO L82 GeneralOperation]: Start removeDead. Operand has 57 places, 59 transitions, 126 flow [2022-07-22 12:53:46,344 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 57 places, 59 transitions, 126 flow [2022-07-22 12:53:46,348 INFO L124 etLargeBlockEncoding]: Petri net LBE is using variable-based independence relation. [2022-07-22 12:53:46,359 INFO L131 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 57 places, 59 transitions, 126 flow [2022-07-22 12:53:46,362 INFO L110 LiptonReduction]: Starting Lipton reduction on Petri net that has 57 places, 59 transitions, 126 flow [2022-07-22 12:53:46,363 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 57 places, 59 transitions, 126 flow [2022-07-22 12:53:46,380 INFO L129 PetriNetUnfolder]: 8/80 cut-off events. [2022-07-22 12:53:46,380 INFO L130 PetriNetUnfolder]: For 1/1 co-relation queries the response was YES. [2022-07-22 12:53:46,381 INFO L84 FinitePrefix]: Finished finitePrefix Result has 86 conditions, 80 events. 8/80 cut-off events. For 1/1 co-relation queries the response was YES. Maximal size of possible extension queue 4. Compared 97 event pairs, 0 based on Foata normal form. 0/70 useless extension candidates. Maximal degree in co-relation 41. Up to 4 conditions per place. [2022-07-22 12:53:46,383 INFO L116 LiptonReduction]: Number of co-enabled transitions 280 [2022-07-22 12:53:48,092 INFO L131 LiptonReduction]: Checked pairs total: 314 [2022-07-22 12:53:48,092 INFO L133 LiptonReduction]: Total number of compositions: 50 [2022-07-22 12:53:48,116 INFO L300 stractBuchiCegarLoop]: Interprodecural is true [2022-07-22 12:53:48,116 INFO L301 stractBuchiCegarLoop]: Hoare is false [2022-07-22 12:53:48,116 INFO L302 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2022-07-22 12:53:48,117 INFO L303 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2022-07-22 12:53:48,117 INFO L304 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2022-07-22 12:53:48,117 INFO L305 stractBuchiCegarLoop]: Difference is false [2022-07-22 12:53:48,117 INFO L306 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2022-07-22 12:53:48,117 INFO L310 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2022-07-22 12:53:48,120 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 0 states, but on-demand construction may add more states [2022-07-22 12:53:48,152 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 2 [2022-07-22 12:53:48,152 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:53:48,152 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:53:48,159 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [2, 1, 1, 1, 1] [2022-07-22 12:53:48,159 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:53:48,159 INFO L332 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2022-07-22 12:53:48,160 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 20 states, but on-demand construction may add more states [2022-07-22 12:53:48,162 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 2 [2022-07-22 12:53:48,163 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:53:48,163 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:53:48,163 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [2, 1, 1, 1, 1] [2022-07-22 12:53:48,163 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:53:48,170 INFO L748 eck$LassoCheckResult]: Stem: 60#[ULTIMATE.startENTRY]don't care [197] ULTIMATE.startENTRY-->L723-5: Formula: (let ((.cse0 (select |v_#memory_int_31| 1))) (and (= |v_ULTIMATE.start_#in~argv#1.base_8| |v_ULTIMATE.start_main_#in~argv#1.base_13|) (= |v_#valid_52| (store |v_#valid_53| |v_ULTIMATE.start_main_~#t~0#1.base_35| 1)) (= |v_ULTIMATE.start_#in~argc#1_8| |v_ULTIMATE.start_main_#in~argc#1_11|) (= |v_#NULL.base_10| 0) (= (select (select |v_#memory_int_31| 2) 0) 0) (= |v_ULTIMATE.start_main_~i~0#1_44| 1) (= (select .cse0 1) 0) (= v_~x~0_30 0) (= (select |v_#valid_53| 2) 1) (= (select .cse0 0) 48) (= (select |v_#valid_53| |v_ULTIMATE.start_main_~#t~0#1.base_35|) 0) (< |v_#StackHeapBarrier_17| |v_ULTIMATE.start_main_~#t~0#1.base_35|) (= (select |v_#length_40| 2) 1) (= (select |v_#valid_53| 0) 0) (= |v_ULTIMATE.start_main_#in~argv#1.offset_13| |v_ULTIMATE.start_#in~argv#1.offset_8|) (= |v_ULTIMATE.start_main_~#t~0#1.offset_31| 0) (= |v_ULTIMATE.start_main_#in~argv#1.offset_13| |v_ULTIMATE.start_main_~argv#1.offset_15|) (= |v_ULTIMATE.start_main_#in~argv#1.base_13| |v_ULTIMATE.start_main_~argv#1.base_15|) (< 0 |v_#StackHeapBarrier_17|) (= (store |v_#length_40| |v_ULTIMATE.start_main_~#t~0#1.base_35| 24) |v_#length_39|) (= (select |v_#length_40| 1) 2) (= (select |v_#valid_53| 1) 1) (= |v_ULTIMATE.start_main_~argc#1_11| |v_ULTIMATE.start_main_#in~argc#1_11|) (= |v_#NULL.offset_10| 0))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_8|, #StackHeapBarrier=|v_#StackHeapBarrier_17|, #valid=|v_#valid_53|, #memory_int=|v_#memory_int_31|, #length=|v_#length_40|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_8|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_8|} OutVars{#NULL.offset=|v_#NULL.offset_10|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_15|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_15|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_8|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_44|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_11|, #length=|v_#length_39|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_21|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_8|, ULTIMATE.start_main_#t~mem5#1=|v_ULTIMATE.start_main_#t~mem5#1_18|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_8|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_35|, ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_11|, ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_19|, ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_40|, ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_22|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_13|, #NULL.base=|v_#NULL.base_10|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_25|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_13|, #StackHeapBarrier=|v_#StackHeapBarrier_17|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_15|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_31|, #valid=|v_#valid_52|, #memory_int=|v_#memory_int_31|, ~x~0=v_~x~0_30} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~1#1, ULTIMATE.start_main_#res#1, ULTIMATE.start_main_#in~argv#1.offset, #NULL.offset, ULTIMATE.start_main_~argv#1.offset, #NULL.base, ULTIMATE.start_main_#t~pre2#1, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_#t~nondet3#1, ULTIMATE.start_main_~#t~0#1.offset, #valid, #length, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_#t~mem5#1, ULTIMATE.start_main_~#t~0#1.base, ~x~0] 63#[L723-5]don't care [185] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_32| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_23| .cse1))) (and (= |v_#memory_int_19| (store |v_#memory_int_20| |v_ULTIMATE.start_main_~#t~0#1.base_25| (store (select |v_#memory_int_20| |v_ULTIMATE.start_main_~#t~0#1.base_25|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_19|))) (= |v_#pthreadsForks_11| |v_ULTIMATE.start_main_#t~pre2#1_19|) (<= |v_ULTIMATE.start_main_~i~0#1_32| 5) (= (select |v_#valid_32| |v_ULTIMATE.start_main_~#t~0#1.base_25|) 1) (= |v_#pthreadsForks_10| (+ |v_#pthreadsForks_11| 1)) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_23| .cse1 4) (select |v_#length_25| |v_ULTIMATE.start_main_~#t~0#1.base_25|)) (<= 0 .cse0)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_32|, #pthreadsForks=|v_#pthreadsForks_11|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_23|, #valid=|v_#valid_32|, #memory_int=|v_#memory_int_20|, #length=|v_#length_25|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_25|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_32|, #pthreadsForks=|v_#pthreadsForks_10|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_23|, #valid=|v_#valid_32|, #memory_int=|v_#memory_int_19|, #length=|v_#length_25|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_25|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_19|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 67#[L724-3]don't care [146] L724-3-->threadENTRY: Formula: (and (= |v_ULTIMATE.start_main_#t~pre2#1_6| v_threadThread1of1ForFork0_thidvar0_2) (= |v_threadThread1of1ForFork0_#in~arg.base_4| 0) (= |v_ULTIMATE.start_main_~i~0#1_9| |v_threadThread1of1ForFork0_#in~arg.offset_4|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_9|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_6|} OutVars{threadThread1of1ForFork0_#in~arg.offset=|v_threadThread1of1ForFork0_#in~arg.offset_4|, threadThread1of1ForFork0_~thread~0=v_threadThread1of1ForFork0_~thread~0_6, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_9|, threadThread1of1ForFork0_~arg.base=v_threadThread1of1ForFork0_~arg.base_6, threadThread1of1ForFork0_~arg.offset=v_threadThread1of1ForFork0_~arg.offset_6, threadThread1of1ForFork0_#res.base=|v_threadThread1of1ForFork0_#res.base_4|, threadThread1of1ForFork0_thidvar0=v_threadThread1of1ForFork0_thidvar0_2, threadThread1of1ForFork0_#res.offset=|v_threadThread1of1ForFork0_#res.offset_4|, threadThread1of1ForFork0_#in~arg.base=|v_threadThread1of1ForFork0_#in~arg.base_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_6|} AuxVars[] AssignedVars[threadThread1of1ForFork0_#in~arg.offset, threadThread1of1ForFork0_~thread~0, threadThread1of1ForFork0_~arg.base, threadThread1of1ForFork0_~arg.offset, threadThread1of1ForFork0_#res.base, threadThread1of1ForFork0_thidvar0, threadThread1of1ForFork0_#res.offset, threadThread1of1ForFork0_#in~arg.base] 73#[L724-4, threadENTRY]don't care [192] L724-4-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_36| (+ |v_ULTIMATE.start_main_~i~0#1_37| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_37|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_13|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_36|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_11|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_21|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1, ULTIMATE.start_main_#t~pre2#1] 75#[threadENTRY, L723-5]don't care [185] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_32| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_23| .cse1))) (and (= |v_#memory_int_19| (store |v_#memory_int_20| |v_ULTIMATE.start_main_~#t~0#1.base_25| (store (select |v_#memory_int_20| |v_ULTIMATE.start_main_~#t~0#1.base_25|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_19|))) (= |v_#pthreadsForks_11| |v_ULTIMATE.start_main_#t~pre2#1_19|) (<= |v_ULTIMATE.start_main_~i~0#1_32| 5) (= (select |v_#valid_32| |v_ULTIMATE.start_main_~#t~0#1.base_25|) 1) (= |v_#pthreadsForks_10| (+ |v_#pthreadsForks_11| 1)) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_23| .cse1 4) (select |v_#length_25| |v_ULTIMATE.start_main_~#t~0#1.base_25|)) (<= 0 .cse0)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_32|, #pthreadsForks=|v_#pthreadsForks_11|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_23|, #valid=|v_#valid_32|, #memory_int=|v_#memory_int_20|, #length=|v_#length_25|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_25|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_32|, #pthreadsForks=|v_#pthreadsForks_10|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_23|, #valid=|v_#valid_32|, #memory_int=|v_#memory_int_19|, #length=|v_#length_25|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_25|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_19|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 81#[threadENTRY, L724-3]don't care [144] L724-3-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 91#[threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES]don't care [2022-07-22 12:53:48,171 INFO L750 eck$LassoCheckResult]: Loop: 91#[threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES]don't care [145] ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 91#[threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES]don't care [2022-07-22 12:53:48,178 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:53:48,178 INFO L85 PathProgramCache]: Analyzing trace with hash -1887096902, now seen corresponding path program 1 times [2022-07-22 12:53:48,190 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:53:48,190 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1651675841] [2022-07-22 12:53:48,191 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:53:48,192 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:53:48,351 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:53:48,351 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:53:48,390 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:53:48,424 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:53:48,428 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:53:48,428 INFO L85 PathProgramCache]: Analyzing trace with hash 176, now seen corresponding path program 1 times [2022-07-22 12:53:48,428 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:53:48,430 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1293056937] [2022-07-22 12:53:48,431 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:53:48,431 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:53:48,459 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:53:48,460 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:53:48,463 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:53:48,465 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:53:48,467 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:53:48,467 INFO L85 PathProgramCache]: Analyzing trace with hash 1629538327, now seen corresponding path program 1 times [2022-07-22 12:53:48,468 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:53:48,468 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [45234588] [2022-07-22 12:53:48,468 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:53:48,468 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:53:48,498 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:53:48,499 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:53:48,518 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:53:48,526 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:53:49,054 WARN L146 chiAutomizerObserver]: 1 thread instances were not sufficient, I will increase this number and restart the analysis [2022-07-22 12:53:49,066 INFO L144 ThreadInstanceAdder]: Constructed 2 joinOtherThreadTransitions. [2022-07-22 12:53:49,070 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 65 places, 66 transitions, 150 flow [2022-07-22 12:53:49,094 INFO L129 PetriNetUnfolder]: 14/133 cut-off events. [2022-07-22 12:53:49,095 INFO L130 PetriNetUnfolder]: For 6/6 co-relation queries the response was YES. [2022-07-22 12:53:49,096 INFO L84 FinitePrefix]: Finished finitePrefix Result has 147 conditions, 133 events. 14/133 cut-off events. For 6/6 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/116 useless extension candidates. Maximal degree in co-relation 81. Up to 8 conditions per place. [2022-07-22 12:53:49,096 INFO L82 GeneralOperation]: Start removeDead. Operand has 65 places, 66 transitions, 150 flow [2022-07-22 12:53:49,099 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 65 places, 66 transitions, 150 flow [2022-07-22 12:53:49,099 INFO L124 etLargeBlockEncoding]: Petri net LBE is using variable-based independence relation. [2022-07-22 12:53:49,099 INFO L131 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 65 places, 66 transitions, 150 flow [2022-07-22 12:53:49,100 INFO L110 LiptonReduction]: Starting Lipton reduction on Petri net that has 65 places, 66 transitions, 150 flow [2022-07-22 12:53:49,100 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 65 places, 66 transitions, 150 flow [2022-07-22 12:53:49,124 INFO L129 PetriNetUnfolder]: 14/133 cut-off events. [2022-07-22 12:53:49,124 INFO L130 PetriNetUnfolder]: For 6/6 co-relation queries the response was YES. [2022-07-22 12:53:49,126 INFO L84 FinitePrefix]: Finished finitePrefix Result has 147 conditions, 133 events. 14/133 cut-off events. For 6/6 co-relation queries the response was YES. Maximal size of possible extension queue 5. Compared 213 event pairs, 0 based on Foata normal form. 0/116 useless extension candidates. Maximal degree in co-relation 81. Up to 8 conditions per place. [2022-07-22 12:53:49,129 INFO L116 LiptonReduction]: Number of co-enabled transitions 720 [2022-07-22 12:53:50,570 INFO L131 LiptonReduction]: Checked pairs total: 960 [2022-07-22 12:53:50,571 INFO L133 LiptonReduction]: Total number of compositions: 52 [2022-07-22 12:53:50,573 INFO L300 stractBuchiCegarLoop]: Interprodecural is true [2022-07-22 12:53:50,573 INFO L301 stractBuchiCegarLoop]: Hoare is false [2022-07-22 12:53:50,573 INFO L302 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2022-07-22 12:53:50,573 INFO L303 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2022-07-22 12:53:50,573 INFO L304 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2022-07-22 12:53:50,573 INFO L305 stractBuchiCegarLoop]: Difference is false [2022-07-22 12:53:50,573 INFO L306 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2022-07-22 12:53:50,575 INFO L310 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2022-07-22 12:53:50,575 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 0 states, but on-demand construction may add more states [2022-07-22 12:53:50,610 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 4 [2022-07-22 12:53:50,612 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:53:50,612 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:53:50,614 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [3, 2, 2, 1, 1, 1, 1] [2022-07-22 12:53:50,614 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:53:50,614 INFO L332 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2022-07-22 12:53:50,614 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 67 states, but on-demand construction may add more states [2022-07-22 12:53:50,626 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 4 [2022-07-22 12:53:50,626 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:53:50,626 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:53:50,627 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [3, 2, 2, 1, 1, 1, 1] [2022-07-22 12:53:50,627 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:53:50,629 INFO L748 eck$LassoCheckResult]: Stem: 68#[ULTIMATE.startENTRY]don't care [322] ULTIMATE.startENTRY-->L723-5: Formula: (let ((.cse0 (select |v_#memory_int_54| 1))) (and (= |v_ULTIMATE.start_main_~i~0#1_80| 1) (= (select |v_#length_78| 2) 1) (= 1 (select |v_#valid_107| 1)) (= 2 (select |v_#length_78| 1)) (= |v_ULTIMATE.start_main_#in~argv#1.offset_28| |v_ULTIMATE.start_#in~argv#1.offset_17|) (= v_~x~0_65 0) (= |v_ULTIMATE.start_#in~argc#1_17| |v_ULTIMATE.start_main_#in~argc#1_26|) (= |v_#NULL.base_19| 0) (= (select (select |v_#memory_int_54| 2) 0) 0) (= (select |v_#valid_107| 2) 1) (= (select |v_#valid_107| |v_ULTIMATE.start_main_~#t~0#1.base_68|) 0) (= |v_ULTIMATE.start_#in~argv#1.base_17| |v_ULTIMATE.start_main_#in~argv#1.base_28|) (= |v_ULTIMATE.start_main_#in~argv#1.base_28| |v_ULTIMATE.start_main_~argv#1.base_30|) (= 0 (select .cse0 1)) (= |v_#length_77| (store |v_#length_78| |v_ULTIMATE.start_main_~#t~0#1.base_68| 24)) (= (select |v_#valid_107| 0) 0) (= (store |v_#valid_107| |v_ULTIMATE.start_main_~#t~0#1.base_68| 1) |v_#valid_106|) (= 48 (select .cse0 0)) (= |v_ULTIMATE.start_main_#in~argv#1.offset_28| |v_ULTIMATE.start_main_~argv#1.offset_30|) (= |v_ULTIMATE.start_main_~#t~0#1.offset_58| 0) (< 0 |v_#StackHeapBarrier_36|) (< |v_#StackHeapBarrier_36| |v_ULTIMATE.start_main_~#t~0#1.base_68|) (= |v_#NULL.offset_19| 0) (= |v_ULTIMATE.start_main_~argc#1_24| |v_ULTIMATE.start_main_#in~argc#1_26|))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_17|, #StackHeapBarrier=|v_#StackHeapBarrier_36|, #valid=|v_#valid_107|, #memory_int=|v_#memory_int_54|, #length=|v_#length_78|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_17|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_17|} OutVars{#NULL.offset=|v_#NULL.offset_19|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_30|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_30|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_17|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_80|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_26|, #length=|v_#length_77|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_40|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_17|, ULTIMATE.start_main_#t~mem5#1=|v_ULTIMATE.start_main_#t~mem5#1_35|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_17|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_68|, ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_24|, ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_41|, ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_71|, ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_43|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_28|, #NULL.base=|v_#NULL.base_19|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_49|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_28|, #StackHeapBarrier=|v_#StackHeapBarrier_36|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_31|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_58|, #valid=|v_#valid_106|, #memory_int=|v_#memory_int_54|, ~x~0=v_~x~0_65} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~1#1, ULTIMATE.start_main_#res#1, ULTIMATE.start_main_#in~argv#1.offset, #NULL.offset, ULTIMATE.start_main_~argv#1.offset, #NULL.base, ULTIMATE.start_main_#t~pre2#1, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_#t~nondet3#1, ULTIMATE.start_main_~#t~0#1.offset, #valid, #length, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_#t~mem5#1, ULTIMATE.start_main_~#t~0#1.base, ~x~0] 71#[L723-5]don't care [313] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_76| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~0#1.offset_50|))) (and (<= |v_ULTIMATE.start_main_~i~0#1_76| 5) (= (select |v_#valid_90| |v_ULTIMATE.start_main_~#t~0#1.base_56|) 1) (= |v_#memory_int_48| (store |v_#memory_int_49| |v_ULTIMATE.start_main_~#t~0#1.base_56| (store (select |v_#memory_int_49| |v_ULTIMATE.start_main_~#t~0#1.base_56|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_45|))) (<= (+ .cse1 |v_ULTIMATE.start_main_~#t~0#1.offset_50| 4) (select |v_#length_69| |v_ULTIMATE.start_main_~#t~0#1.base_56|)) (<= 0 .cse0) (= |v_#pthreadsForks_26| |v_ULTIMATE.start_main_#t~pre2#1_45|) (= |v_#pthreadsForks_25| (+ |v_#pthreadsForks_26| 1))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_76|, #pthreadsForks=|v_#pthreadsForks_26|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_50|, #valid=|v_#valid_90|, #memory_int=|v_#memory_int_49|, #length=|v_#length_69|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_56|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_76|, #pthreadsForks=|v_#pthreadsForks_25|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_50|, #valid=|v_#valid_90|, #memory_int=|v_#memory_int_48|, #length=|v_#length_69|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_56|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_45|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 73#[L724-3]don't care [267] L724-3-->threadENTRY: Formula: (and (= |v_ULTIMATE.start_main_~i~0#1_49| |v_threadThread1of2ForFork0_#in~arg.offset_4|) (= |v_threadThread1of2ForFork0_#in~arg.base_4| 0) (= v_threadThread1of2ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre2#1_32|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_49|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_32|} OutVars{threadThread1of2ForFork0_~arg.base=v_threadThread1of2ForFork0_~arg.base_6, threadThread1of2ForFork0_#res.base=|v_threadThread1of2ForFork0_#res.base_4|, threadThread1of2ForFork0_thidvar0=v_threadThread1of2ForFork0_thidvar0_2, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_49|, threadThread1of2ForFork0_#res.offset=|v_threadThread1of2ForFork0_#res.offset_4|, threadThread1of2ForFork0_~arg.offset=v_threadThread1of2ForFork0_~arg.offset_6, threadThread1of2ForFork0_#in~arg.base=|v_threadThread1of2ForFork0_#in~arg.base_4|, threadThread1of2ForFork0_#in~arg.offset=|v_threadThread1of2ForFork0_#in~arg.offset_4|, threadThread1of2ForFork0_~thread~0=v_threadThread1of2ForFork0_~thread~0_6, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_32|} AuxVars[] AssignedVars[threadThread1of2ForFork0_~arg.base, threadThread1of2ForFork0_#res.base, threadThread1of2ForFork0_thidvar0, threadThread1of2ForFork0_#res.offset, threadThread1of2ForFork0_~arg.offset, threadThread1of2ForFork0_#in~arg.base, threadThread1of2ForFork0_#in~arg.offset, threadThread1of2ForFork0_~thread~0] 77#[L724-4, threadENTRY]don't care [251] L724-4-->L724-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] 83#[L724-5, threadENTRY]don't care [304] L724-5-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_68| (+ |v_ULTIMATE.start_main_~i~0#1_69| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_69|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_33|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_68|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_25|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 87#[L723-5, threadENTRY]don't care [313] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_76| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~0#1.offset_50|))) (and (<= |v_ULTIMATE.start_main_~i~0#1_76| 5) (= (select |v_#valid_90| |v_ULTIMATE.start_main_~#t~0#1.base_56|) 1) (= |v_#memory_int_48| (store |v_#memory_int_49| |v_ULTIMATE.start_main_~#t~0#1.base_56| (store (select |v_#memory_int_49| |v_ULTIMATE.start_main_~#t~0#1.base_56|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_45|))) (<= (+ .cse1 |v_ULTIMATE.start_main_~#t~0#1.offset_50| 4) (select |v_#length_69| |v_ULTIMATE.start_main_~#t~0#1.base_56|)) (<= 0 .cse0) (= |v_#pthreadsForks_26| |v_ULTIMATE.start_main_#t~pre2#1_45|) (= |v_#pthreadsForks_25| (+ |v_#pthreadsForks_26| 1))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_76|, #pthreadsForks=|v_#pthreadsForks_26|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_50|, #valid=|v_#valid_90|, #memory_int=|v_#memory_int_49|, #length=|v_#length_69|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_56|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_76|, #pthreadsForks=|v_#pthreadsForks_25|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_50|, #valid=|v_#valid_90|, #memory_int=|v_#memory_int_48|, #length=|v_#length_69|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_56|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_45|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 91#[L724-3, threadENTRY]don't care [268] L724-3-->threadENTRY: Formula: (and (= |v_ULTIMATE.start_main_~i~0#1_51| |v_threadThread2of2ForFork0_#in~arg.offset_4|) (= |v_threadThread2of2ForFork0_#in~arg.base_4| 0) (= v_threadThread2of2ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre2#1_34|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_51|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_34|} OutVars{threadThread2of2ForFork0_#in~arg.base=|v_threadThread2of2ForFork0_#in~arg.base_4|, threadThread2of2ForFork0_~arg.offset=v_threadThread2of2ForFork0_~arg.offset_6, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_51|, threadThread2of2ForFork0_#res.offset=|v_threadThread2of2ForFork0_#res.offset_4|, threadThread2of2ForFork0_~arg.base=v_threadThread2of2ForFork0_~arg.base_6, threadThread2of2ForFork0_thidvar0=v_threadThread2of2ForFork0_thidvar0_2, threadThread2of2ForFork0_#in~arg.offset=|v_threadThread2of2ForFork0_#in~arg.offset_4|, threadThread2of2ForFork0_~thread~0=v_threadThread2of2ForFork0_~thread~0_6, threadThread2of2ForFork0_#res.base=|v_threadThread2of2ForFork0_#res.base_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_34|} AuxVars[] AssignedVars[threadThread2of2ForFork0_#in~arg.base, threadThread2of2ForFork0_~arg.offset, threadThread2of2ForFork0_#res.offset, threadThread2of2ForFork0_~arg.base, threadThread2of2ForFork0_thidvar0, threadThread2of2ForFork0_#in~arg.offset, threadThread2of2ForFork0_~thread~0, threadThread2of2ForFork0_#res.base] 97#[threadENTRY, L724-4, threadENTRY]don't care [251] L724-4-->L724-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] 109#[threadENTRY, L724-5, threadENTRY]don't care [304] L724-5-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_68| (+ |v_ULTIMATE.start_main_~i~0#1_69| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_69|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_33|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_68|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_25|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 121#[threadENTRY, L723-5, threadENTRY]don't care [313] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_76| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~0#1.offset_50|))) (and (<= |v_ULTIMATE.start_main_~i~0#1_76| 5) (= (select |v_#valid_90| |v_ULTIMATE.start_main_~#t~0#1.base_56|) 1) (= |v_#memory_int_48| (store |v_#memory_int_49| |v_ULTIMATE.start_main_~#t~0#1.base_56| (store (select |v_#memory_int_49| |v_ULTIMATE.start_main_~#t~0#1.base_56|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_45|))) (<= (+ .cse1 |v_ULTIMATE.start_main_~#t~0#1.offset_50| 4) (select |v_#length_69| |v_ULTIMATE.start_main_~#t~0#1.base_56|)) (<= 0 .cse0) (= |v_#pthreadsForks_26| |v_ULTIMATE.start_main_#t~pre2#1_45|) (= |v_#pthreadsForks_25| (+ |v_#pthreadsForks_26| 1))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_76|, #pthreadsForks=|v_#pthreadsForks_26|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_50|, #valid=|v_#valid_90|, #memory_int=|v_#memory_int_49|, #length=|v_#length_69|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_56|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_76|, #pthreadsForks=|v_#pthreadsForks_25|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_50|, #valid=|v_#valid_90|, #memory_int=|v_#memory_int_48|, #length=|v_#length_69|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_56|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_45|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 131#[threadENTRY, L724-3, threadENTRY]don't care [265] L724-3-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 145#[threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, threadENTRY]don't care [2022-07-22 12:53:50,630 INFO L750 eck$LassoCheckResult]: Loop: 145#[threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, threadENTRY]don't care [266] ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 145#[threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, threadENTRY]don't care [2022-07-22 12:53:50,630 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:53:50,631 INFO L85 PathProgramCache]: Analyzing trace with hash 1896290208, now seen corresponding path program 1 times [2022-07-22 12:53:50,631 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:53:50,632 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1730862190] [2022-07-22 12:53:50,632 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:53:50,632 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:53:50,707 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:53:50,707 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:53:50,744 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:53:50,758 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:53:50,759 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:53:50,759 INFO L85 PathProgramCache]: Analyzing trace with hash 297, now seen corresponding path program 1 times [2022-07-22 12:53:50,759 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:53:50,759 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1680660053] [2022-07-22 12:53:50,760 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:53:50,760 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:53:50,774 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:53:50,774 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:53:50,779 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:53:50,781 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:53:50,782 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:53:50,785 INFO L85 PathProgramCache]: Analyzing trace with hash -1344545430, now seen corresponding path program 1 times [2022-07-22 12:53:50,785 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:53:50,785 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [143262353] [2022-07-22 12:53:50,786 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:53:50,786 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:53:50,834 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:53:50,834 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:53:50,857 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:53:50,862 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:53:51,616 WARN L146 chiAutomizerObserver]: 2 thread instances were not sufficient, I will increase this number and restart the analysis [2022-07-22 12:53:51,628 INFO L144 ThreadInstanceAdder]: Constructed 3 joinOtherThreadTransitions. [2022-07-22 12:53:51,632 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 73 places, 73 transitions, 176 flow [2022-07-22 12:53:51,695 INFO L129 PetriNetUnfolder]: 25/219 cut-off events. [2022-07-22 12:53:51,695 INFO L130 PetriNetUnfolder]: For 19/19 co-relation queries the response was YES. [2022-07-22 12:53:51,698 INFO L84 FinitePrefix]: Finished finitePrefix Result has 247 conditions, 219 events. 25/219 cut-off events. For 19/19 co-relation queries the response was YES. Maximal size of possible extension queue 7. Compared 475 event pairs, 1 based on Foata normal form. 0/191 useless extension candidates. Maximal degree in co-relation 140. Up to 16 conditions per place. [2022-07-22 12:53:51,698 INFO L82 GeneralOperation]: Start removeDead. Operand has 73 places, 73 transitions, 176 flow [2022-07-22 12:53:51,706 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 73 places, 73 transitions, 176 flow [2022-07-22 12:53:51,706 INFO L124 etLargeBlockEncoding]: Petri net LBE is using variable-based independence relation. [2022-07-22 12:53:51,706 INFO L131 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 73 places, 73 transitions, 176 flow [2022-07-22 12:53:51,706 INFO L110 LiptonReduction]: Starting Lipton reduction on Petri net that has 73 places, 73 transitions, 176 flow [2022-07-22 12:53:51,707 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 73 places, 73 transitions, 176 flow [2022-07-22 12:53:51,739 INFO L129 PetriNetUnfolder]: 25/219 cut-off events. [2022-07-22 12:53:51,740 INFO L130 PetriNetUnfolder]: For 19/19 co-relation queries the response was YES. [2022-07-22 12:53:51,742 INFO L84 FinitePrefix]: Finished finitePrefix Result has 247 conditions, 219 events. 25/219 cut-off events. For 19/19 co-relation queries the response was YES. Maximal size of possible extension queue 6. Compared 485 event pairs, 1 based on Foata normal form. 0/191 useless extension candidates. Maximal degree in co-relation 140. Up to 16 conditions per place. [2022-07-22 12:53:51,747 INFO L116 LiptonReduction]: Number of co-enabled transitions 1200 [2022-07-22 12:53:53,288 INFO L131 LiptonReduction]: Checked pairs total: 1485 [2022-07-22 12:53:53,289 INFO L133 LiptonReduction]: Total number of compositions: 56 [2022-07-22 12:53:53,290 INFO L300 stractBuchiCegarLoop]: Interprodecural is true [2022-07-22 12:53:53,290 INFO L301 stractBuchiCegarLoop]: Hoare is false [2022-07-22 12:53:53,290 INFO L302 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2022-07-22 12:53:53,291 INFO L303 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2022-07-22 12:53:53,291 INFO L304 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2022-07-22 12:53:53,291 INFO L305 stractBuchiCegarLoop]: Difference is false [2022-07-22 12:53:53,291 INFO L306 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2022-07-22 12:53:53,291 INFO L310 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2022-07-22 12:53:53,291 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 0 states, but on-demand construction may add more states [2022-07-22 12:53:53,330 INFO L131 ngComponentsAnalysis]: Automaton has 8 accepting balls. 8 [2022-07-22 12:53:53,330 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:53:53,330 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:53:53,331 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [4, 3, 3, 1, 1, 1, 1, 1] [2022-07-22 12:53:53,331 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:53:53,331 INFO L332 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2022-07-22 12:53:53,331 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 185 states, but on-demand construction may add more states [2022-07-22 12:53:53,340 INFO L131 ngComponentsAnalysis]: Automaton has 8 accepting balls. 8 [2022-07-22 12:53:53,340 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:53:53,340 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:53:53,341 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [4, 3, 3, 1, 1, 1, 1, 1] [2022-07-22 12:53:53,341 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:53:53,342 INFO L748 eck$LassoCheckResult]: Stem: 76#[ULTIMATE.startENTRY]don't care [458] ULTIMATE.startENTRY-->L723-5: Formula: (let ((.cse0 (select |v_#memory_int_86| 1))) (and (= (select |v_#valid_161| 1) 1) (= |v_ULTIMATE.start_main_#in~argv#1.offset_41| |v_ULTIMATE.start_#in~argv#1.offset_24|) (= (select |v_#length_116| 2) 1) (= |v_#NULL.offset_26| 0) (= |v_ULTIMATE.start_main_~i~0#1_123| 1) (= (select |v_#valid_161| |v_ULTIMATE.start_main_~#t~0#1.base_103|) 0) (= v_~x~0_110 0) (< |v_#StackHeapBarrier_51| |v_ULTIMATE.start_main_~#t~0#1.base_103|) (= |v_ULTIMATE.start_#in~argc#1_24| |v_ULTIMATE.start_main_#in~argc#1_39|) (= |v_ULTIMATE.start_main_#in~argv#1.base_41| |v_ULTIMATE.start_main_~argv#1.base_45|) (= (select |v_#valid_161| 2) 1) (= (select |v_#valid_161| 0) 0) (= 48 (select .cse0 0)) (= (store |v_#length_116| |v_ULTIMATE.start_main_~#t~0#1.base_103| 24) |v_#length_115|) (= |v_ULTIMATE.start_main_~argc#1_39| |v_ULTIMATE.start_main_#in~argc#1_39|) (= |v_#NULL.base_26| 0) (= |v_#valid_160| (store |v_#valid_161| |v_ULTIMATE.start_main_~#t~0#1.base_103| 1)) (< 0 |v_#StackHeapBarrier_51|) (= |v_ULTIMATE.start_#in~argv#1.base_24| |v_ULTIMATE.start_main_#in~argv#1.base_41|) (= |v_ULTIMATE.start_main_#in~argv#1.offset_41| |v_ULTIMATE.start_main_~argv#1.offset_45|) (= |v_ULTIMATE.start_main_~#t~0#1.offset_87| 0) (= (select (select |v_#memory_int_86| 2) 0) 0) (= 2 (select |v_#length_116| 1)) (= (select .cse0 1) 0))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_24|, #StackHeapBarrier=|v_#StackHeapBarrier_51|, #valid=|v_#valid_161|, #memory_int=|v_#memory_int_86|, #length=|v_#length_116|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_24|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_24|} OutVars{#NULL.offset=|v_#NULL.offset_26|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_45|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_45|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_24|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_123|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_39|, #length=|v_#length_115|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_57|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_24|, ULTIMATE.start_main_#t~mem5#1=|v_ULTIMATE.start_main_#t~mem5#1_54|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_24|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_103|, ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_39|, ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_64|, ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_106|, ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_66|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_41|, #NULL.base=|v_#NULL.base_26|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_77|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_41|, #StackHeapBarrier=|v_#StackHeapBarrier_51|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_48|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_87|, #valid=|v_#valid_160|, #memory_int=|v_#memory_int_86|, ~x~0=v_~x~0_110} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~1#1, ULTIMATE.start_main_#res#1, ULTIMATE.start_main_#in~argv#1.offset, #NULL.offset, ULTIMATE.start_main_~argv#1.offset, #NULL.base, ULTIMATE.start_main_#t~pre2#1, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_#t~nondet3#1, ULTIMATE.start_main_~#t~0#1.offset, #valid, #length, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_#t~mem5#1, ULTIMATE.start_main_~#t~0#1.base, ~x~0] 79#[L723-5]don't care [443] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_107| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_73| .cse1))) (and (<= 0 .cse0) (= |v_#pthreadsForks_40| |v_ULTIMATE.start_main_#t~pre2#1_71|) (= |v_#pthreadsForks_39| (+ |v_#pthreadsForks_40| 1)) (<= |v_ULTIMATE.start_main_~i~0#1_107| 5) (= (select |v_#valid_134| |v_ULTIMATE.start_main_~#t~0#1.base_85|) 1) (= (store |v_#memory_int_77| |v_ULTIMATE.start_main_~#t~0#1.base_85| (store (select |v_#memory_int_77| |v_ULTIMATE.start_main_~#t~0#1.base_85|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_71|)) |v_#memory_int_76|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_73| .cse1 4) (select |v_#length_97| |v_ULTIMATE.start_main_~#t~0#1.base_85|))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_107|, #pthreadsForks=|v_#pthreadsForks_40|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_73|, #valid=|v_#valid_134|, #memory_int=|v_#memory_int_77|, #length=|v_#length_97|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_85|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_107|, #pthreadsForks=|v_#pthreadsForks_39|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_73|, #valid=|v_#valid_134|, #memory_int=|v_#memory_int_76|, #length=|v_#length_97|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_85|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_71|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 83#[L724-3]don't care [397] L724-3-->threadENTRY: Formula: (and (= |v_ULTIMATE.start_main_~i~0#1_86| |v_threadThread1of3ForFork0_#in~arg.offset_4|) (= v_threadThread1of3ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre2#1_58|) (= |v_threadThread1of3ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_86|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_58|} OutVars{threadThread1of3ForFork0_#res.base=|v_threadThread1of3ForFork0_#res.base_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_86|, threadThread1of3ForFork0_#in~arg.base=|v_threadThread1of3ForFork0_#in~arg.base_4|, threadThread1of3ForFork0_#res.offset=|v_threadThread1of3ForFork0_#res.offset_4|, threadThread1of3ForFork0_~thread~0=v_threadThread1of3ForFork0_~thread~0_6, threadThread1of3ForFork0_thidvar0=v_threadThread1of3ForFork0_thidvar0_2, threadThread1of3ForFork0_#in~arg.offset=|v_threadThread1of3ForFork0_#in~arg.offset_4|, threadThread1of3ForFork0_~arg.base=v_threadThread1of3ForFork0_~arg.base_6, threadThread1of3ForFork0_~arg.offset=v_threadThread1of3ForFork0_~arg.offset_6, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_58|} AuxVars[] AssignedVars[threadThread1of3ForFork0_#res.base, threadThread1of3ForFork0_#in~arg.base, threadThread1of3ForFork0_#res.offset, threadThread1of3ForFork0_~thread~0, threadThread1of3ForFork0_thidvar0, threadThread1of3ForFork0_#in~arg.offset, threadThread1of3ForFork0_~arg.base, threadThread1of3ForFork0_~arg.offset] 89#[L724-4, threadENTRY]don't care [376] L724-4-->L724-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] 93#[threadENTRY, L724-5]don't care [438] L724-5-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_103| (+ |v_ULTIMATE.start_main_~i~0#1_104| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_104|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_56|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_103|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_42|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 97#[L723-5, threadENTRY]don't care [443] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_107| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_73| .cse1))) (and (<= 0 .cse0) (= |v_#pthreadsForks_40| |v_ULTIMATE.start_main_#t~pre2#1_71|) (= |v_#pthreadsForks_39| (+ |v_#pthreadsForks_40| 1)) (<= |v_ULTIMATE.start_main_~i~0#1_107| 5) (= (select |v_#valid_134| |v_ULTIMATE.start_main_~#t~0#1.base_85|) 1) (= (store |v_#memory_int_77| |v_ULTIMATE.start_main_~#t~0#1.base_85| (store (select |v_#memory_int_77| |v_ULTIMATE.start_main_~#t~0#1.base_85|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_71|)) |v_#memory_int_76|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_73| .cse1 4) (select |v_#length_97| |v_ULTIMATE.start_main_~#t~0#1.base_85|))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_107|, #pthreadsForks=|v_#pthreadsForks_40|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_73|, #valid=|v_#valid_134|, #memory_int=|v_#memory_int_77|, #length=|v_#length_97|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_85|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_107|, #pthreadsForks=|v_#pthreadsForks_39|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_73|, #valid=|v_#valid_134|, #memory_int=|v_#memory_int_76|, #length=|v_#length_97|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_85|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_71|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 103#[threadENTRY, L724-3]don't care [398] L724-3-->threadENTRY: Formula: (and (= |v_threadThread2of3ForFork0_#in~arg.base_4| 0) (= v_threadThread2of3ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre2#1_60|) (= |v_ULTIMATE.start_main_~i~0#1_88| |v_threadThread2of3ForFork0_#in~arg.offset_4|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_88|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_60|} OutVars{threadThread2of3ForFork0_thidvar0=v_threadThread2of3ForFork0_thidvar0_2, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_88|, threadThread2of3ForFork0_#in~arg.offset=|v_threadThread2of3ForFork0_#in~arg.offset_4|, threadThread2of3ForFork0_~thread~0=v_threadThread2of3ForFork0_~thread~0_6, threadThread2of3ForFork0_#res.offset=|v_threadThread2of3ForFork0_#res.offset_4|, threadThread2of3ForFork0_#res.base=|v_threadThread2of3ForFork0_#res.base_4|, threadThread2of3ForFork0_#in~arg.base=|v_threadThread2of3ForFork0_#in~arg.base_4|, threadThread2of3ForFork0_~arg.offset=v_threadThread2of3ForFork0_~arg.offset_6, threadThread2of3ForFork0_~arg.base=v_threadThread2of3ForFork0_~arg.base_6, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_60|} AuxVars[] AssignedVars[threadThread2of3ForFork0_thidvar0, threadThread2of3ForFork0_#in~arg.offset, threadThread2of3ForFork0_~thread~0, threadThread2of3ForFork0_#res.offset, threadThread2of3ForFork0_#res.base, threadThread2of3ForFork0_#in~arg.base, threadThread2of3ForFork0_~arg.offset, threadThread2of3ForFork0_~arg.base] 113#[L724-4, threadENTRY, threadENTRY]don't care [376] L724-4-->L724-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] 123#[threadENTRY, L724-5, threadENTRY]don't care [438] L724-5-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_103| (+ |v_ULTIMATE.start_main_~i~0#1_104| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_104|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_56|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_103|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_42|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 133#[threadENTRY, L723-5, threadENTRY]don't care [443] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_107| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_73| .cse1))) (and (<= 0 .cse0) (= |v_#pthreadsForks_40| |v_ULTIMATE.start_main_#t~pre2#1_71|) (= |v_#pthreadsForks_39| (+ |v_#pthreadsForks_40| 1)) (<= |v_ULTIMATE.start_main_~i~0#1_107| 5) (= (select |v_#valid_134| |v_ULTIMATE.start_main_~#t~0#1.base_85|) 1) (= (store |v_#memory_int_77| |v_ULTIMATE.start_main_~#t~0#1.base_85| (store (select |v_#memory_int_77| |v_ULTIMATE.start_main_~#t~0#1.base_85|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_71|)) |v_#memory_int_76|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_73| .cse1 4) (select |v_#length_97| |v_ULTIMATE.start_main_~#t~0#1.base_85|))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_107|, #pthreadsForks=|v_#pthreadsForks_40|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_73|, #valid=|v_#valid_134|, #memory_int=|v_#memory_int_77|, #length=|v_#length_97|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_85|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_107|, #pthreadsForks=|v_#pthreadsForks_39|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_73|, #valid=|v_#valid_134|, #memory_int=|v_#memory_int_76|, #length=|v_#length_97|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_85|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_71|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 145#[threadENTRY, L724-3, threadENTRY]don't care [399] L724-3-->threadENTRY: Formula: (and (= |v_threadThread3of3ForFork0_#in~arg.base_4| 0) (= |v_ULTIMATE.start_main_~i~0#1_90| |v_threadThread3of3ForFork0_#in~arg.offset_4|) (= v_threadThread3of3ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre2#1_62|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_90|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_62|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_90|, threadThread3of3ForFork0_~thread~0=v_threadThread3of3ForFork0_~thread~0_6, threadThread3of3ForFork0_#in~arg.offset=|v_threadThread3of3ForFork0_#in~arg.offset_4|, threadThread3of3ForFork0_#res.base=|v_threadThread3of3ForFork0_#res.base_4|, threadThread3of3ForFork0_~arg.offset=v_threadThread3of3ForFork0_~arg.offset_6, threadThread3of3ForFork0_thidvar0=v_threadThread3of3ForFork0_thidvar0_2, threadThread3of3ForFork0_#res.offset=|v_threadThread3of3ForFork0_#res.offset_4|, threadThread3of3ForFork0_#in~arg.base=|v_threadThread3of3ForFork0_#in~arg.base_4|, threadThread3of3ForFork0_~arg.base=v_threadThread3of3ForFork0_~arg.base_6, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_62|} AuxVars[] AssignedVars[threadThread3of3ForFork0_~thread~0, threadThread3of3ForFork0_#in~arg.offset, threadThread3of3ForFork0_#res.base, threadThread3of3ForFork0_~arg.offset, threadThread3of3ForFork0_thidvar0, threadThread3of3ForFork0_#res.offset, threadThread3of3ForFork0_#in~arg.base, threadThread3of3ForFork0_~arg.base] 161#[L724-4, threadENTRY, threadENTRY, threadENTRY]don't care [376] L724-4-->L724-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] 181#[threadENTRY, threadENTRY, threadENTRY, L724-5]don't care [438] L724-5-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_103| (+ |v_ULTIMATE.start_main_~i~0#1_104| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_104|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_56|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_103|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_42|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 203#[threadENTRY, threadENTRY, threadENTRY, L723-5]don't care [443] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_107| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_73| .cse1))) (and (<= 0 .cse0) (= |v_#pthreadsForks_40| |v_ULTIMATE.start_main_#t~pre2#1_71|) (= |v_#pthreadsForks_39| (+ |v_#pthreadsForks_40| 1)) (<= |v_ULTIMATE.start_main_~i~0#1_107| 5) (= (select |v_#valid_134| |v_ULTIMATE.start_main_~#t~0#1.base_85|) 1) (= (store |v_#memory_int_77| |v_ULTIMATE.start_main_~#t~0#1.base_85| (store (select |v_#memory_int_77| |v_ULTIMATE.start_main_~#t~0#1.base_85|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_71|)) |v_#memory_int_76|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_73| .cse1 4) (select |v_#length_97| |v_ULTIMATE.start_main_~#t~0#1.base_85|))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_107|, #pthreadsForks=|v_#pthreadsForks_40|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_73|, #valid=|v_#valid_134|, #memory_int=|v_#memory_int_77|, #length=|v_#length_97|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_85|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_107|, #pthreadsForks=|v_#pthreadsForks_39|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_73|, #valid=|v_#valid_134|, #memory_int=|v_#memory_int_76|, #length=|v_#length_97|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_85|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_71|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 229#[threadENTRY, threadENTRY, threadENTRY, L724-3]don't care [395] L724-3-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 261#[threadENTRY, threadENTRY, threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES]don't care [2022-07-22 12:53:53,342 INFO L750 eck$LassoCheckResult]: Loop: 261#[threadENTRY, threadENTRY, threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES]don't care [396] ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 261#[threadENTRY, threadENTRY, threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES]don't care [2022-07-22 12:53:53,343 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:53:53,343 INFO L85 PathProgramCache]: Analyzing trace with hash -922135252, now seen corresponding path program 1 times [2022-07-22 12:53:53,343 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:53:53,343 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1750241116] [2022-07-22 12:53:53,344 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:53:53,344 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:53:53,367 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:53:53,367 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:53:53,382 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:53:53,393 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:53:53,394 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:53:53,394 INFO L85 PathProgramCache]: Analyzing trace with hash 427, now seen corresponding path program 1 times [2022-07-22 12:53:53,394 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:53:53,394 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1604911716] [2022-07-22 12:53:53,394 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:53:53,395 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:53:53,405 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:53:53,406 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:53:53,407 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:53:53,409 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:53:53,410 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:53:53,410 INFO L85 PathProgramCache]: Analyzing trace with hash 1478578656, now seen corresponding path program 1 times [2022-07-22 12:53:53,411 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:53:53,411 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [865779516] [2022-07-22 12:53:53,411 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:53:53,411 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:53:53,457 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:53:53,457 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:53:53,492 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:53:53,504 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:53:54,504 WARN L146 chiAutomizerObserver]: 3 thread instances were not sufficient, I will increase this number and restart the analysis [2022-07-22 12:53:54,518 INFO L144 ThreadInstanceAdder]: Constructed 4 joinOtherThreadTransitions. [2022-07-22 12:53:54,522 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 81 places, 80 transitions, 204 flow [2022-07-22 12:53:54,562 INFO L129 PetriNetUnfolder]: 48/373 cut-off events. [2022-07-22 12:53:54,562 INFO L130 PetriNetUnfolder]: For 48/48 co-relation queries the response was YES. [2022-07-22 12:53:54,563 INFO L84 FinitePrefix]: Finished finitePrefix Result has 428 conditions, 373 events. 48/373 cut-off events. For 48/48 co-relation queries the response was YES. Maximal size of possible extension queue 10. Compared 1130 event pairs, 6 based on Foata normal form. 0/326 useless extension candidates. Maximal degree in co-relation 238. Up to 32 conditions per place. [2022-07-22 12:53:54,563 INFO L82 GeneralOperation]: Start removeDead. Operand has 81 places, 80 transitions, 204 flow [2022-07-22 12:53:54,569 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 81 places, 80 transitions, 204 flow [2022-07-22 12:53:54,569 INFO L124 etLargeBlockEncoding]: Petri net LBE is using variable-based independence relation. [2022-07-22 12:53:54,570 INFO L131 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 81 places, 80 transitions, 204 flow [2022-07-22 12:53:54,570 INFO L110 LiptonReduction]: Starting Lipton reduction on Petri net that has 81 places, 80 transitions, 204 flow [2022-07-22 12:53:54,570 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 81 places, 80 transitions, 204 flow [2022-07-22 12:53:54,610 INFO L129 PetriNetUnfolder]: 48/373 cut-off events. [2022-07-22 12:53:54,610 INFO L130 PetriNetUnfolder]: For 48/48 co-relation queries the response was YES. [2022-07-22 12:53:54,611 INFO L84 FinitePrefix]: Finished finitePrefix Result has 428 conditions, 373 events. 48/373 cut-off events. For 48/48 co-relation queries the response was YES. Maximal size of possible extension queue 9. Compared 1144 event pairs, 6 based on Foata normal form. 0/326 useless extension candidates. Maximal degree in co-relation 238. Up to 32 conditions per place. [2022-07-22 12:53:54,619 INFO L116 LiptonReduction]: Number of co-enabled transitions 1760 [2022-07-22 12:53:56,205 INFO L131 LiptonReduction]: Checked pairs total: 2683 [2022-07-22 12:53:56,205 INFO L133 LiptonReduction]: Total number of compositions: 60 [2022-07-22 12:53:56,206 INFO L300 stractBuchiCegarLoop]: Interprodecural is true [2022-07-22 12:53:56,207 INFO L301 stractBuchiCegarLoop]: Hoare is false [2022-07-22 12:53:56,207 INFO L302 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2022-07-22 12:53:56,207 INFO L303 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2022-07-22 12:53:56,207 INFO L304 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2022-07-22 12:53:56,207 INFO L305 stractBuchiCegarLoop]: Difference is false [2022-07-22 12:53:56,207 INFO L306 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2022-07-22 12:53:56,207 INFO L310 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2022-07-22 12:53:56,207 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 0 states, but on-demand construction may add more states [2022-07-22 12:53:56,297 INFO L131 ngComponentsAnalysis]: Automaton has 16 accepting balls. 16 [2022-07-22 12:53:56,297 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:53:56,297 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:53:56,298 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [5, 4, 4, 1, 1, 1, 1, 1, 1] [2022-07-22 12:53:56,298 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:53:56,298 INFO L332 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2022-07-22 12:53:56,299 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 511 states, but on-demand construction may add more states [2022-07-22 12:53:56,310 INFO L131 ngComponentsAnalysis]: Automaton has 16 accepting balls. 16 [2022-07-22 12:53:56,311 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:53:56,311 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:53:56,312 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [5, 4, 4, 1, 1, 1, 1, 1, 1] [2022-07-22 12:53:56,312 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:53:56,313 INFO L748 eck$LassoCheckResult]: Stem: 84#[ULTIMATE.startENTRY]don't care [605] ULTIMATE.startENTRY-->L723-5: Formula: (let ((.cse0 (select |v_#memory_int_117| 1))) (and (= 48 (select .cse0 0)) (= |v_ULTIMATE.start_main_#in~argv#1.base_58| |v_ULTIMATE.start_main_~argv#1.base_64|) (= (select |v_#valid_213| 2) 1) (= (store |v_#length_154| |v_ULTIMATE.start_main_~#t~0#1.base_140| 24) |v_#length_153|) (= v_~x~0_153 0) (= |v_ULTIMATE.start_main_#in~argv#1.offset_58| |v_ULTIMATE.start_#in~argv#1.offset_37|) (= |v_#valid_212| (store |v_#valid_213| |v_ULTIMATE.start_main_~#t~0#1.base_140| 1)) (= |v_#NULL.base_35| 0) (= |v_ULTIMATE.start_main_~#t~0#1.offset_118| 0) (< |v_#StackHeapBarrier_68| |v_ULTIMATE.start_main_~#t~0#1.base_140|) (= |v_ULTIMATE.start_#in~argc#1_37| |v_ULTIMATE.start_main_#in~argc#1_56|) (= (select |v_#length_154| 2) 1) (= |v_ULTIMATE.start_main_~i~0#1_167| 1) (= 2 (select |v_#length_154| 1)) (= |v_ULTIMATE.start_#in~argv#1.base_37| |v_ULTIMATE.start_main_#in~argv#1.base_58|) (< 0 |v_#StackHeapBarrier_68|) (= (select (select |v_#memory_int_117| 2) 0) 0) (= (select .cse0 1) 0) (= (select |v_#valid_213| 1) 1) (= (select |v_#valid_213| |v_ULTIMATE.start_main_~#t~0#1.base_140|) 0) (= (select |v_#valid_213| 0) 0) (= |v_ULTIMATE.start_main_~argc#1_58| |v_ULTIMATE.start_main_#in~argc#1_56|) (= |v_ULTIMATE.start_main_#in~argv#1.offset_58| |v_ULTIMATE.start_main_~argv#1.offset_64|) (= |v_#NULL.offset_35| 0))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_37|, #StackHeapBarrier=|v_#StackHeapBarrier_68|, #valid=|v_#valid_213|, #memory_int=|v_#memory_int_117|, #length=|v_#length_154|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_37|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_37|} OutVars{#NULL.offset=|v_#NULL.offset_35|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_64|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_64|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_37|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_167|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_56|, #length=|v_#length_153|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_76|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_37|, ULTIMATE.start_main_#t~mem5#1=|v_ULTIMATE.start_main_#t~mem5#1_77|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_37|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_140|, ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_58|, ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_90|, ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_141|, ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_91|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_58|, #NULL.base=|v_#NULL.base_35|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_111|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_58|, #StackHeapBarrier=|v_#StackHeapBarrier_68|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_68|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_118|, #valid=|v_#valid_212|, #memory_int=|v_#memory_int_117|, ~x~0=v_~x~0_153} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~1#1, ULTIMATE.start_main_#res#1, ULTIMATE.start_main_#in~argv#1.offset, #NULL.offset, ULTIMATE.start_main_~argv#1.offset, #NULL.base, ULTIMATE.start_main_#t~pre2#1, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_#t~nondet3#1, ULTIMATE.start_main_~#t~0#1.offset, #valid, #length, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_#t~mem5#1, ULTIMATE.start_main_~#t~0#1.base, ~x~0] 87#[L723-5]don't care [599] L723-5-->L724-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_159| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_110| .cse0))) (and (<= |v_ULTIMATE.start_main_~i~0#1_159| 5) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_110| .cse0 4) (select |v_#length_143| |v_ULTIMATE.start_main_~#t~0#1.base_130|)) (<= 0 .cse1) (= (+ |v_#pthreadsForks_57| 1) |v_#pthreadsForks_56|) (= |v_ULTIMATE.start_main_#t~pre2#1_105| |v_#pthreadsForks_57|) (= (select |v_#valid_198| |v_ULTIMATE.start_main_~#t~0#1.base_130|) 1) (= (store |v_#memory_int_110| |v_ULTIMATE.start_main_~#t~0#1.base_130| (store (select |v_#memory_int_110| |v_ULTIMATE.start_main_~#t~0#1.base_130|) .cse1 |v_ULTIMATE.start_main_#t~pre2#1_105|)) |v_#memory_int_109|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_159|, #pthreadsForks=|v_#pthreadsForks_57|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_110|, #valid=|v_#valid_198|, #memory_int=|v_#memory_int_110|, #length=|v_#length_143|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_130|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_159|, #pthreadsForks=|v_#pthreadsForks_56|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_110|, #valid=|v_#valid_198|, #memory_int=|v_#memory_int_109|, #length=|v_#length_143|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_130|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_105|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 89#[L724-3]don't care [538] L724-3-->threadENTRY: Formula: (and (= v_threadThread1of4ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre2#1_88|) (= |v_threadThread1of4ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_130|) (= |v_threadThread1of4ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_130|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_88|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_130|, threadThread1of4ForFork0_#res.base=|v_threadThread1of4ForFork0_#res.base_4|, threadThread1of4ForFork0_~arg.offset=v_threadThread1of4ForFork0_~arg.offset_6, threadThread1of4ForFork0_#res.offset=|v_threadThread1of4ForFork0_#res.offset_4|, threadThread1of4ForFork0_~arg.base=v_threadThread1of4ForFork0_~arg.base_6, threadThread1of4ForFork0_~thread~0=v_threadThread1of4ForFork0_~thread~0_6, threadThread1of4ForFork0_thidvar0=v_threadThread1of4ForFork0_thidvar0_2, threadThread1of4ForFork0_#in~arg.offset=|v_threadThread1of4ForFork0_#in~arg.offset_4|, threadThread1of4ForFork0_#in~arg.base=|v_threadThread1of4ForFork0_#in~arg.base_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_88|} AuxVars[] AssignedVars[threadThread1of4ForFork0_#res.base, threadThread1of4ForFork0_~arg.offset, threadThread1of4ForFork0_#res.offset, threadThread1of4ForFork0_~arg.base, threadThread1of4ForFork0_~thread~0, threadThread1of4ForFork0_thidvar0, threadThread1of4ForFork0_#in~arg.offset, threadThread1of4ForFork0_#in~arg.base] 93#[L724-4, threadENTRY]don't care [512] L724-4-->L724-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] 99#[threadENTRY, L724-5]don't care [583] L724-5-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_151| (+ |v_ULTIMATE.start_main_~i~0#1_152| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_152|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_80|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_151|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_60|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 105#[threadENTRY, L723-5]don't care [599] L723-5-->L724-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_159| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_110| .cse0))) (and (<= |v_ULTIMATE.start_main_~i~0#1_159| 5) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_110| .cse0 4) (select |v_#length_143| |v_ULTIMATE.start_main_~#t~0#1.base_130|)) (<= 0 .cse1) (= (+ |v_#pthreadsForks_57| 1) |v_#pthreadsForks_56|) (= |v_ULTIMATE.start_main_#t~pre2#1_105| |v_#pthreadsForks_57|) (= (select |v_#valid_198| |v_ULTIMATE.start_main_~#t~0#1.base_130|) 1) (= (store |v_#memory_int_110| |v_ULTIMATE.start_main_~#t~0#1.base_130| (store (select |v_#memory_int_110| |v_ULTIMATE.start_main_~#t~0#1.base_130|) .cse1 |v_ULTIMATE.start_main_#t~pre2#1_105|)) |v_#memory_int_109|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_159|, #pthreadsForks=|v_#pthreadsForks_57|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_110|, #valid=|v_#valid_198|, #memory_int=|v_#memory_int_110|, #length=|v_#length_143|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_130|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_159|, #pthreadsForks=|v_#pthreadsForks_56|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_110|, #valid=|v_#valid_198|, #memory_int=|v_#memory_int_109|, #length=|v_#length_143|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_130|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_105|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 109#[threadENTRY, L724-3]don't care [539] L724-3-->threadENTRY: Formula: (and (= |v_threadThread2of4ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_132|) (= v_threadThread2of4ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre2#1_90|) (= 0 |v_threadThread2of4ForFork0_#in~arg.base_4|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_132|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_90|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_132|, threadThread2of4ForFork0_#in~arg.offset=|v_threadThread2of4ForFork0_#in~arg.offset_4|, threadThread2of4ForFork0_~arg.offset=v_threadThread2of4ForFork0_~arg.offset_6, threadThread2of4ForFork0_thidvar0=v_threadThread2of4ForFork0_thidvar0_2, threadThread2of4ForFork0_#res.base=|v_threadThread2of4ForFork0_#res.base_4|, threadThread2of4ForFork0_#in~arg.base=|v_threadThread2of4ForFork0_#in~arg.base_4|, threadThread2of4ForFork0_~arg.base=v_threadThread2of4ForFork0_~arg.base_6, threadThread2of4ForFork0_~thread~0=v_threadThread2of4ForFork0_~thread~0_6, threadThread2of4ForFork0_#res.offset=|v_threadThread2of4ForFork0_#res.offset_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_90|} AuxVars[] AssignedVars[threadThread2of4ForFork0_#in~arg.offset, threadThread2of4ForFork0_~arg.offset, threadThread2of4ForFork0_thidvar0, threadThread2of4ForFork0_#res.base, threadThread2of4ForFork0_#in~arg.base, threadThread2of4ForFork0_~arg.base, threadThread2of4ForFork0_~thread~0, threadThread2of4ForFork0_#res.offset] 117#[threadENTRY, threadENTRY, L724-4]don't care [512] L724-4-->L724-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] 129#[threadENTRY, threadENTRY, L724-5]don't care [583] L724-5-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_151| (+ |v_ULTIMATE.start_main_~i~0#1_152| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_152|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_80|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_151|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_60|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 141#[threadENTRY, threadENTRY, L723-5]don't care [599] L723-5-->L724-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_159| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_110| .cse0))) (and (<= |v_ULTIMATE.start_main_~i~0#1_159| 5) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_110| .cse0 4) (select |v_#length_143| |v_ULTIMATE.start_main_~#t~0#1.base_130|)) (<= 0 .cse1) (= (+ |v_#pthreadsForks_57| 1) |v_#pthreadsForks_56|) (= |v_ULTIMATE.start_main_#t~pre2#1_105| |v_#pthreadsForks_57|) (= (select |v_#valid_198| |v_ULTIMATE.start_main_~#t~0#1.base_130|) 1) (= (store |v_#memory_int_110| |v_ULTIMATE.start_main_~#t~0#1.base_130| (store (select |v_#memory_int_110| |v_ULTIMATE.start_main_~#t~0#1.base_130|) .cse1 |v_ULTIMATE.start_main_#t~pre2#1_105|)) |v_#memory_int_109|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_159|, #pthreadsForks=|v_#pthreadsForks_57|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_110|, #valid=|v_#valid_198|, #memory_int=|v_#memory_int_110|, #length=|v_#length_143|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_130|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_159|, #pthreadsForks=|v_#pthreadsForks_56|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_110|, #valid=|v_#valid_198|, #memory_int=|v_#memory_int_109|, #length=|v_#length_143|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_130|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_105|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 151#[threadENTRY, threadENTRY, L724-3]don't care [540] L724-3-->threadENTRY: Formula: (and (= |v_threadThread3of4ForFork0_#in~arg.base_4| 0) (= |v_ULTIMATE.start_main_~i~0#1_134| |v_threadThread3of4ForFork0_#in~arg.offset_4|) (= v_threadThread3of4ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre2#1_92|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_134|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_92|} OutVars{threadThread3of4ForFork0_#in~arg.offset=|v_threadThread3of4ForFork0_#in~arg.offset_4|, threadThread3of4ForFork0_~thread~0=v_threadThread3of4ForFork0_~thread~0_6, threadThread3of4ForFork0_thidvar0=v_threadThread3of4ForFork0_thidvar0_2, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_134|, threadThread3of4ForFork0_~arg.offset=v_threadThread3of4ForFork0_~arg.offset_6, threadThread3of4ForFork0_#res.base=|v_threadThread3of4ForFork0_#res.base_4|, threadThread3of4ForFork0_~arg.base=v_threadThread3of4ForFork0_~arg.base_6, threadThread3of4ForFork0_#in~arg.base=|v_threadThread3of4ForFork0_#in~arg.base_4|, threadThread3of4ForFork0_#res.offset=|v_threadThread3of4ForFork0_#res.offset_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_92|} AuxVars[] AssignedVars[threadThread3of4ForFork0_#in~arg.offset, threadThread3of4ForFork0_~thread~0, threadThread3of4ForFork0_thidvar0, threadThread3of4ForFork0_~arg.offset, threadThread3of4ForFork0_#res.base, threadThread3of4ForFork0_~arg.base, threadThread3of4ForFork0_#in~arg.base, threadThread3of4ForFork0_#res.offset] 165#[threadENTRY, L724-4, threadENTRY, threadENTRY]don't care [512] L724-4-->L724-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] 187#[threadENTRY, threadENTRY, L724-5, threadENTRY]don't care [583] L724-5-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_151| (+ |v_ULTIMATE.start_main_~i~0#1_152| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_152|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_80|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_151|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_60|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 209#[threadENTRY, threadENTRY, threadENTRY, L723-5]don't care [599] L723-5-->L724-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_159| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_110| .cse0))) (and (<= |v_ULTIMATE.start_main_~i~0#1_159| 5) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_110| .cse0 4) (select |v_#length_143| |v_ULTIMATE.start_main_~#t~0#1.base_130|)) (<= 0 .cse1) (= (+ |v_#pthreadsForks_57| 1) |v_#pthreadsForks_56|) (= |v_ULTIMATE.start_main_#t~pre2#1_105| |v_#pthreadsForks_57|) (= (select |v_#valid_198| |v_ULTIMATE.start_main_~#t~0#1.base_130|) 1) (= (store |v_#memory_int_110| |v_ULTIMATE.start_main_~#t~0#1.base_130| (store (select |v_#memory_int_110| |v_ULTIMATE.start_main_~#t~0#1.base_130|) .cse1 |v_ULTIMATE.start_main_#t~pre2#1_105|)) |v_#memory_int_109|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_159|, #pthreadsForks=|v_#pthreadsForks_57|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_110|, #valid=|v_#valid_198|, #memory_int=|v_#memory_int_110|, #length=|v_#length_143|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_130|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_159|, #pthreadsForks=|v_#pthreadsForks_56|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_110|, #valid=|v_#valid_198|, #memory_int=|v_#memory_int_109|, #length=|v_#length_143|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_130|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_105|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 233#[threadENTRY, threadENTRY, L724-3, threadENTRY]don't care [541] L724-3-->threadENTRY: Formula: (and (= |v_threadThread4of4ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_136|) (= v_threadThread4of4ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre2#1_94|) (= |v_threadThread4of4ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_136|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_94|} OutVars{threadThread4of4ForFork0_#res.offset=|v_threadThread4of4ForFork0_#res.offset_4|, threadThread4of4ForFork0_~arg.base=v_threadThread4of4ForFork0_~arg.base_6, threadThread4of4ForFork0_~thread~0=v_threadThread4of4ForFork0_~thread~0_6, threadThread4of4ForFork0_#res.base=|v_threadThread4of4ForFork0_#res.base_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_136|, threadThread4of4ForFork0_#in~arg.base=|v_threadThread4of4ForFork0_#in~arg.base_4|, threadThread4of4ForFork0_~arg.offset=v_threadThread4of4ForFork0_~arg.offset_6, threadThread4of4ForFork0_thidvar0=v_threadThread4of4ForFork0_thidvar0_2, threadThread4of4ForFork0_#in~arg.offset=|v_threadThread4of4ForFork0_#in~arg.offset_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_94|} AuxVars[] AssignedVars[threadThread4of4ForFork0_#res.offset, threadThread4of4ForFork0_~arg.base, threadThread4of4ForFork0_~thread~0, threadThread4of4ForFork0_#res.base, threadThread4of4ForFork0_#in~arg.base, threadThread4of4ForFork0_~arg.offset, threadThread4of4ForFork0_thidvar0, threadThread4of4ForFork0_#in~arg.offset] 263#[threadENTRY, threadENTRY, threadENTRY, L724-4, threadENTRY]don't care [512] L724-4-->L724-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] 305#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, L724-5]don't care [583] L724-5-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_151| (+ |v_ULTIMATE.start_main_~i~0#1_152| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_152|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_80|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_151|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_60|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 357#[threadENTRY, threadENTRY, L723-5, threadENTRY, threadENTRY]don't care [599] L723-5-->L724-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_159| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_110| .cse0))) (and (<= |v_ULTIMATE.start_main_~i~0#1_159| 5) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_110| .cse0 4) (select |v_#length_143| |v_ULTIMATE.start_main_~#t~0#1.base_130|)) (<= 0 .cse1) (= (+ |v_#pthreadsForks_57| 1) |v_#pthreadsForks_56|) (= |v_ULTIMATE.start_main_#t~pre2#1_105| |v_#pthreadsForks_57|) (= (select |v_#valid_198| |v_ULTIMATE.start_main_~#t~0#1.base_130|) 1) (= (store |v_#memory_int_110| |v_ULTIMATE.start_main_~#t~0#1.base_130| (store (select |v_#memory_int_110| |v_ULTIMATE.start_main_~#t~0#1.base_130|) .cse1 |v_ULTIMATE.start_main_#t~pre2#1_105|)) |v_#memory_int_109|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_159|, #pthreadsForks=|v_#pthreadsForks_57|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_110|, #valid=|v_#valid_198|, #memory_int=|v_#memory_int_110|, #length=|v_#length_143|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_130|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_159|, #pthreadsForks=|v_#pthreadsForks_56|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_110|, #valid=|v_#valid_198|, #memory_int=|v_#memory_int_109|, #length=|v_#length_143|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_130|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_105|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 409#[threadENTRY, L724-3, threadENTRY, threadENTRY, threadENTRY]don't care [536] L724-3-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 475#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES]don't care [2022-07-22 12:53:56,314 INFO L750 eck$LassoCheckResult]: Loop: 475#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES]don't care [537] ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 475#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES]don't care [2022-07-22 12:53:56,314 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:53:56,314 INFO L85 PathProgramCache]: Analyzing trace with hash 62267851, now seen corresponding path program 1 times [2022-07-22 12:53:56,315 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:53:56,315 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1353351278] [2022-07-22 12:53:56,315 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:53:56,315 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:53:56,360 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:53:56,361 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:53:56,393 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:53:56,401 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:53:56,402 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:53:56,402 INFO L85 PathProgramCache]: Analyzing trace with hash 568, now seen corresponding path program 1 times [2022-07-22 12:53:56,402 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:53:56,403 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1373369042] [2022-07-22 12:53:56,403 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:53:56,403 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:53:56,407 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:53:56,408 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:53:56,409 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:53:56,411 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:53:56,411 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:53:56,411 INFO L85 PathProgramCache]: Analyzing trace with hash 1930303918, now seen corresponding path program 1 times [2022-07-22 12:53:56,412 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:53:56,412 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [540211851] [2022-07-22 12:53:56,412 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:53:56,412 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:53:56,432 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:53:56,433 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:53:56,447 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:53:56,455 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:53:57,593 WARN L146 chiAutomizerObserver]: 4 thread instances were not sufficient, I will increase this number and restart the analysis [2022-07-22 12:53:57,612 INFO L144 ThreadInstanceAdder]: Constructed 5 joinOtherThreadTransitions. [2022-07-22 12:53:57,615 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 89 places, 87 transitions, 234 flow [2022-07-22 12:53:57,721 INFO L129 PetriNetUnfolder]: 99/667 cut-off events. [2022-07-22 12:53:57,721 INFO L130 PetriNetUnfolder]: For 110/110 co-relation queries the response was YES. [2022-07-22 12:53:57,723 INFO L84 FinitePrefix]: Finished finitePrefix Result has 778 conditions, 667 events. 99/667 cut-off events. For 110/110 co-relation queries the response was YES. Maximal size of possible extension queue 17. Compared 2745 event pairs, 23 based on Foata normal form. 0/585 useless extension candidates. Maximal degree in co-relation 417. Up to 80 conditions per place. [2022-07-22 12:53:57,724 INFO L82 GeneralOperation]: Start removeDead. Operand has 89 places, 87 transitions, 234 flow [2022-07-22 12:53:57,734 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 89 places, 87 transitions, 234 flow [2022-07-22 12:53:57,735 INFO L124 etLargeBlockEncoding]: Petri net LBE is using variable-based independence relation. [2022-07-22 12:53:57,735 INFO L131 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 89 places, 87 transitions, 234 flow [2022-07-22 12:53:57,735 INFO L110 LiptonReduction]: Starting Lipton reduction on Petri net that has 89 places, 87 transitions, 234 flow [2022-07-22 12:53:57,735 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 89 places, 87 transitions, 234 flow [2022-07-22 12:53:57,838 INFO L129 PetriNetUnfolder]: 99/667 cut-off events. [2022-07-22 12:53:57,838 INFO L130 PetriNetUnfolder]: For 110/110 co-relation queries the response was YES. [2022-07-22 12:53:57,841 INFO L84 FinitePrefix]: Finished finitePrefix Result has 778 conditions, 667 events. 99/667 cut-off events. For 110/110 co-relation queries the response was YES. Maximal size of possible extension queue 16. Compared 2773 event pairs, 23 based on Foata normal form. 0/585 useless extension candidates. Maximal degree in co-relation 417. Up to 80 conditions per place. [2022-07-22 12:53:57,863 INFO L116 LiptonReduction]: Number of co-enabled transitions 2400 [2022-07-22 12:53:59,337 INFO L131 LiptonReduction]: Checked pairs total: 3361 [2022-07-22 12:53:59,338 INFO L133 LiptonReduction]: Total number of compositions: 64 [2022-07-22 12:53:59,339 INFO L300 stractBuchiCegarLoop]: Interprodecural is true [2022-07-22 12:53:59,339 INFO L301 stractBuchiCegarLoop]: Hoare is false [2022-07-22 12:53:59,339 INFO L302 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2022-07-22 12:53:59,339 INFO L303 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2022-07-22 12:53:59,339 INFO L304 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2022-07-22 12:53:59,340 INFO L305 stractBuchiCegarLoop]: Difference is false [2022-07-22 12:53:59,340 INFO L306 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2022-07-22 12:53:59,340 INFO L310 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2022-07-22 12:53:59,340 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 0 states, but on-demand construction may add more states [2022-07-22 12:53:59,519 INFO L131 ngComponentsAnalysis]: Automaton has 32 accepting balls. 32 [2022-07-22 12:53:59,519 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:53:59,519 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:53:59,520 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [6, 5, 5, 1, 1, 1, 1, 1, 1, 1] [2022-07-22 12:53:59,520 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:53:59,520 INFO L332 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2022-07-22 12:53:59,520 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 1433 states, but on-demand construction may add more states [2022-07-22 12:53:59,547 INFO L131 ngComponentsAnalysis]: Automaton has 32 accepting balls. 32 [2022-07-22 12:53:59,548 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-22 12:53:59,548 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-22 12:53:59,549 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [6, 5, 5, 1, 1, 1, 1, 1, 1, 1] [2022-07-22 12:53:59,549 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-22 12:53:59,550 INFO L748 eck$LassoCheckResult]: Stem: 92#[ULTIMATE.startENTRY]don't care [763] ULTIMATE.startENTRY-->L723-5: Formula: (let ((.cse0 (select |v_#memory_int_145| 1))) (and (= |v_ULTIMATE.start_main_#in~argv#1.offset_71| |v_ULTIMATE.start_main_~argv#1.offset_79|) (= v_~x~0_204 0) (= |v_#NULL.offset_46| 0) (= |v_#NULL.base_46| 0) (< |v_#StackHeapBarrier_83| |v_ULTIMATE.start_main_~#t~0#1.base_177|) (= (select |v_#valid_265| |v_ULTIMATE.start_main_~#t~0#1.base_177|) 0) (= (select |v_#length_188| 1) 2) (= |v_ULTIMATE.start_main_#in~argv#1.base_71| |v_ULTIMATE.start_main_~argv#1.base_79|) (= (select (select |v_#memory_int_145| 2) 0) 0) (= |v_ULTIMATE.start_main_~i~0#1_218| 1) (= |v_#valid_264| (store |v_#valid_265| |v_ULTIMATE.start_main_~#t~0#1.base_177| 1)) (= (select |v_#valid_265| 1) 1) (= (select |v_#valid_265| 0) 0) (= (store |v_#length_188| |v_ULTIMATE.start_main_~#t~0#1.base_177| 24) |v_#length_187|) (= |v_ULTIMATE.start_#in~argv#1.base_46| |v_ULTIMATE.start_main_#in~argv#1.base_71|) (= (select |v_#length_188| 2) 1) (< 0 |v_#StackHeapBarrier_83|) (= |v_ULTIMATE.start_main_#in~argv#1.offset_71| |v_ULTIMATE.start_#in~argv#1.offset_46|) (= |v_ULTIMATE.start_main_~argc#1_73| |v_ULTIMATE.start_main_#in~argc#1_69|) (= 1 (select |v_#valid_265| 2)) (= (select .cse0 0) 48) (= (select .cse0 1) 0) (= |v_ULTIMATE.start_main_~#t~0#1.offset_147| 0) (= |v_ULTIMATE.start_#in~argc#1_46| |v_ULTIMATE.start_main_#in~argc#1_69|))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_46|, #StackHeapBarrier=|v_#StackHeapBarrier_83|, #valid=|v_#valid_265|, #memory_int=|v_#memory_int_145|, #length=|v_#length_188|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_46|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_46|} OutVars{#NULL.offset=|v_#NULL.offset_46|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_79|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_79|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_46|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_218|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_69|, #length=|v_#length_187|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_93|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_46|, ULTIMATE.start_main_#t~mem5#1=|v_ULTIMATE.start_main_#t~mem5#1_100|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_46|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_177|, ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_73|, ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_115|, ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_174|, ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_114|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_71|, #NULL.base=|v_#NULL.base_46|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_147|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_71|, #StackHeapBarrier=|v_#StackHeapBarrier_83|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_87|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_147|, #valid=|v_#valid_264|, #memory_int=|v_#memory_int_145|, ~x~0=v_~x~0_204} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~1#1, ULTIMATE.start_main_#res#1, ULTIMATE.start_main_#in~argv#1.offset, #NULL.offset, ULTIMATE.start_main_~argv#1.offset, #NULL.base, ULTIMATE.start_main_#t~pre2#1, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_#t~nondet3#1, ULTIMATE.start_main_~#t~0#1.offset, #valid, #length, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_#t~mem5#1, ULTIMATE.start_main_~#t~0#1.base, ~x~0] 95#[L723-5]don't care [733] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_196| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_129| .cse1))) (and (= (store |v_#memory_int_136| |v_ULTIMATE.start_main_~#t~0#1.base_153| (store (select |v_#memory_int_136| |v_ULTIMATE.start_main_~#t~0#1.base_153|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_139|)) |v_#memory_int_135|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_129| .cse1 4) (select |v_#length_167| |v_ULTIMATE.start_main_~#t~0#1.base_153|)) (= (select |v_#valid_232| |v_ULTIMATE.start_main_~#t~0#1.base_153|) 1) (<= 0 .cse0) (<= |v_ULTIMATE.start_main_~i~0#1_196| 5) (= |v_#pthreadsForks_72| (+ |v_#pthreadsForks_73| 1)) (= |v_ULTIMATE.start_main_#t~pre2#1_139| |v_#pthreadsForks_73|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_196|, #pthreadsForks=|v_#pthreadsForks_73|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_129|, #valid=|v_#valid_232|, #memory_int=|v_#memory_int_136|, #length=|v_#length_167|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_153|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_196|, #pthreadsForks=|v_#pthreadsForks_72|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_129|, #valid=|v_#valid_232|, #memory_int=|v_#memory_int_135|, #length=|v_#length_167|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_153|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_139|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 99#[L724-3]don't care [690] L724-3-->threadENTRY: Formula: (and (= |v_threadThread1of5ForFork0_#in~arg.base_4| 0) (= |v_threadThread1of5ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_175|) (= |v_ULTIMATE.start_main_#t~pre2#1_124| v_threadThread1of5ForFork0_thidvar0_2)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_175|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_124|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_175|, threadThread1of5ForFork0_#res.offset=|v_threadThread1of5ForFork0_#res.offset_4|, threadThread1of5ForFork0_~arg.base=v_threadThread1of5ForFork0_~arg.base_6, threadThread1of5ForFork0_#in~arg.base=|v_threadThread1of5ForFork0_#in~arg.base_4|, threadThread1of5ForFork0_#res.base=|v_threadThread1of5ForFork0_#res.base_4|, threadThread1of5ForFork0_~arg.offset=v_threadThread1of5ForFork0_~arg.offset_6, threadThread1of5ForFork0_~thread~0=v_threadThread1of5ForFork0_~thread~0_6, threadThread1of5ForFork0_thidvar0=v_threadThread1of5ForFork0_thidvar0_2, threadThread1of5ForFork0_#in~arg.offset=|v_threadThread1of5ForFork0_#in~arg.offset_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_124|} AuxVars[] AssignedVars[threadThread1of5ForFork0_#res.offset, threadThread1of5ForFork0_~arg.base, threadThread1of5ForFork0_#in~arg.base, threadThread1of5ForFork0_#res.base, threadThread1of5ForFork0_~arg.offset, threadThread1of5ForFork0_~thread~0, threadThread1of5ForFork0_thidvar0, threadThread1of5ForFork0_#in~arg.offset] 105#[L724-4, threadENTRY]don't care [659] L724-4-->L724-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] 107#[threadENTRY, L724-5]don't care [747] L724-5-->L723-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_207| 1) |v_ULTIMATE.start_main_~i~0#1_206|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_207|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_107|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_206|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_81|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 113#[threadENTRY, L723-5]don't care [733] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_196| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_129| .cse1))) (and (= (store |v_#memory_int_136| |v_ULTIMATE.start_main_~#t~0#1.base_153| (store (select |v_#memory_int_136| |v_ULTIMATE.start_main_~#t~0#1.base_153|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_139|)) |v_#memory_int_135|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_129| .cse1 4) (select |v_#length_167| |v_ULTIMATE.start_main_~#t~0#1.base_153|)) (= (select |v_#valid_232| |v_ULTIMATE.start_main_~#t~0#1.base_153|) 1) (<= 0 .cse0) (<= |v_ULTIMATE.start_main_~i~0#1_196| 5) (= |v_#pthreadsForks_72| (+ |v_#pthreadsForks_73| 1)) (= |v_ULTIMATE.start_main_#t~pre2#1_139| |v_#pthreadsForks_73|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_196|, #pthreadsForks=|v_#pthreadsForks_73|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_129|, #valid=|v_#valid_232|, #memory_int=|v_#memory_int_136|, #length=|v_#length_167|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_153|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_196|, #pthreadsForks=|v_#pthreadsForks_72|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_129|, #valid=|v_#valid_232|, #memory_int=|v_#memory_int_135|, #length=|v_#length_167|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_153|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_139|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 119#[threadENTRY, L724-3]don't care [691] L724-3-->threadENTRY: Formula: (and (= |v_threadThread2of5ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_177|) (= 0 |v_threadThread2of5ForFork0_#in~arg.base_4|) (= v_threadThread2of5ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre2#1_126|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_177|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_126|} OutVars{threadThread2of5ForFork0_~thread~0=v_threadThread2of5ForFork0_~thread~0_6, threadThread2of5ForFork0_#in~arg.offset=|v_threadThread2of5ForFork0_#in~arg.offset_4|, threadThread2of5ForFork0_#res.offset=|v_threadThread2of5ForFork0_#res.offset_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_177|, threadThread2of5ForFork0_~arg.base=v_threadThread2of5ForFork0_~arg.base_6, threadThread2of5ForFork0_#in~arg.base=|v_threadThread2of5ForFork0_#in~arg.base_4|, threadThread2of5ForFork0_thidvar0=v_threadThread2of5ForFork0_thidvar0_2, threadThread2of5ForFork0_#res.base=|v_threadThread2of5ForFork0_#res.base_4|, threadThread2of5ForFork0_~arg.offset=v_threadThread2of5ForFork0_~arg.offset_6, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_126|} AuxVars[] AssignedVars[threadThread2of5ForFork0_~thread~0, threadThread2of5ForFork0_#in~arg.offset, threadThread2of5ForFork0_#res.offset, threadThread2of5ForFork0_~arg.base, threadThread2of5ForFork0_#in~arg.base, threadThread2of5ForFork0_thidvar0, threadThread2of5ForFork0_#res.base, threadThread2of5ForFork0_~arg.offset] 129#[threadENTRY, L724-4, threadENTRY]don't care [659] L724-4-->L724-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] 137#[threadENTRY, L724-5, threadENTRY]don't care [747] L724-5-->L723-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_207| 1) |v_ULTIMATE.start_main_~i~0#1_206|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_207|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_107|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_206|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_81|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 149#[threadENTRY, L723-5, threadENTRY]don't care [733] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_196| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_129| .cse1))) (and (= (store |v_#memory_int_136| |v_ULTIMATE.start_main_~#t~0#1.base_153| (store (select |v_#memory_int_136| |v_ULTIMATE.start_main_~#t~0#1.base_153|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_139|)) |v_#memory_int_135|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_129| .cse1 4) (select |v_#length_167| |v_ULTIMATE.start_main_~#t~0#1.base_153|)) (= (select |v_#valid_232| |v_ULTIMATE.start_main_~#t~0#1.base_153|) 1) (<= 0 .cse0) (<= |v_ULTIMATE.start_main_~i~0#1_196| 5) (= |v_#pthreadsForks_72| (+ |v_#pthreadsForks_73| 1)) (= |v_ULTIMATE.start_main_#t~pre2#1_139| |v_#pthreadsForks_73|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_196|, #pthreadsForks=|v_#pthreadsForks_73|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_129|, #valid=|v_#valid_232|, #memory_int=|v_#memory_int_136|, #length=|v_#length_167|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_153|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_196|, #pthreadsForks=|v_#pthreadsForks_72|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_129|, #valid=|v_#valid_232|, #memory_int=|v_#memory_int_135|, #length=|v_#length_167|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_153|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_139|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 161#[threadENTRY, L724-3, threadENTRY]don't care [692] L724-3-->threadENTRY: Formula: (and (= |v_ULTIMATE.start_main_#t~pre2#1_128| v_threadThread3of5ForFork0_thidvar0_2) (= |v_ULTIMATE.start_main_~i~0#1_179| |v_threadThread3of5ForFork0_#in~arg.offset_4|) (= |v_threadThread3of5ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_179|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_128|} OutVars{threadThread3of5ForFork0_~arg.base=v_threadThread3of5ForFork0_~arg.base_6, threadThread3of5ForFork0_#res.offset=|v_threadThread3of5ForFork0_#res.offset_4|, threadThread3of5ForFork0_~arg.offset=v_threadThread3of5ForFork0_~arg.offset_6, threadThread3of5ForFork0_~thread~0=v_threadThread3of5ForFork0_~thread~0_6, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_179|, threadThread3of5ForFork0_thidvar0=v_threadThread3of5ForFork0_thidvar0_2, threadThread3of5ForFork0_#in~arg.base=|v_threadThread3of5ForFork0_#in~arg.base_4|, threadThread3of5ForFork0_#in~arg.offset=|v_threadThread3of5ForFork0_#in~arg.offset_4|, threadThread3of5ForFork0_#res.base=|v_threadThread3of5ForFork0_#res.base_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_128|} AuxVars[] AssignedVars[threadThread3of5ForFork0_~arg.base, threadThread3of5ForFork0_#res.offset, threadThread3of5ForFork0_~arg.offset, threadThread3of5ForFork0_~thread~0, threadThread3of5ForFork0_thidvar0, threadThread3of5ForFork0_#in~arg.base, threadThread3of5ForFork0_#in~arg.offset, threadThread3of5ForFork0_#res.base] 177#[threadENTRY, threadENTRY, L724-4, threadENTRY]don't care [659] L724-4-->L724-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] 195#[threadENTRY, L724-5, threadENTRY, threadENTRY]don't care [747] L724-5-->L723-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_207| 1) |v_ULTIMATE.start_main_~i~0#1_206|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_207|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_107|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_206|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_81|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 219#[L723-5, threadENTRY, threadENTRY, threadENTRY]don't care [733] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_196| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_129| .cse1))) (and (= (store |v_#memory_int_136| |v_ULTIMATE.start_main_~#t~0#1.base_153| (store (select |v_#memory_int_136| |v_ULTIMATE.start_main_~#t~0#1.base_153|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_139|)) |v_#memory_int_135|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_129| .cse1 4) (select |v_#length_167| |v_ULTIMATE.start_main_~#t~0#1.base_153|)) (= (select |v_#valid_232| |v_ULTIMATE.start_main_~#t~0#1.base_153|) 1) (<= 0 .cse0) (<= |v_ULTIMATE.start_main_~i~0#1_196| 5) (= |v_#pthreadsForks_72| (+ |v_#pthreadsForks_73| 1)) (= |v_ULTIMATE.start_main_#t~pre2#1_139| |v_#pthreadsForks_73|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_196|, #pthreadsForks=|v_#pthreadsForks_73|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_129|, #valid=|v_#valid_232|, #memory_int=|v_#memory_int_136|, #length=|v_#length_167|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_153|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_196|, #pthreadsForks=|v_#pthreadsForks_72|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_129|, #valid=|v_#valid_232|, #memory_int=|v_#memory_int_135|, #length=|v_#length_167|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_153|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_139|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 245#[threadENTRY, L724-3, threadENTRY, threadENTRY]don't care [693] L724-3-->threadENTRY: Formula: (and (= |v_ULTIMATE.start_main_#t~pre2#1_130| v_threadThread4of5ForFork0_thidvar0_2) (= |v_threadThread4of5ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_181|) (= |v_threadThread4of5ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_181|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_130|} OutVars{threadThread4of5ForFork0_#in~arg.base=|v_threadThread4of5ForFork0_#in~arg.base_4|, threadThread4of5ForFork0_thidvar0=v_threadThread4of5ForFork0_thidvar0_2, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_181|, threadThread4of5ForFork0_~arg.base=v_threadThread4of5ForFork0_~arg.base_6, threadThread4of5ForFork0_#res.offset=|v_threadThread4of5ForFork0_#res.offset_4|, threadThread4of5ForFork0_#in~arg.offset=|v_threadThread4of5ForFork0_#in~arg.offset_4|, threadThread4of5ForFork0_~thread~0=v_threadThread4of5ForFork0_~thread~0_6, threadThread4of5ForFork0_~arg.offset=v_threadThread4of5ForFork0_~arg.offset_6, threadThread4of5ForFork0_#res.base=|v_threadThread4of5ForFork0_#res.base_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_130|} AuxVars[] AssignedVars[threadThread4of5ForFork0_#in~arg.base, threadThread4of5ForFork0_thidvar0, threadThread4of5ForFork0_~arg.base, threadThread4of5ForFork0_#res.offset, threadThread4of5ForFork0_#in~arg.offset, threadThread4of5ForFork0_~thread~0, threadThread4of5ForFork0_~arg.offset, threadThread4of5ForFork0_#res.base] 277#[threadENTRY, threadENTRY, threadENTRY, L724-4, threadENTRY]don't care [659] L724-4-->L724-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] 319#[threadENTRY, threadENTRY, threadENTRY, L724-5, threadENTRY]don't care [747] L724-5-->L723-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_207| 1) |v_ULTIMATE.start_main_~i~0#1_206|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_207|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_107|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_206|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_81|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 367#[L723-5, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [733] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_196| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_129| .cse1))) (and (= (store |v_#memory_int_136| |v_ULTIMATE.start_main_~#t~0#1.base_153| (store (select |v_#memory_int_136| |v_ULTIMATE.start_main_~#t~0#1.base_153|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_139|)) |v_#memory_int_135|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_129| .cse1 4) (select |v_#length_167| |v_ULTIMATE.start_main_~#t~0#1.base_153|)) (= (select |v_#valid_232| |v_ULTIMATE.start_main_~#t~0#1.base_153|) 1) (<= 0 .cse0) (<= |v_ULTIMATE.start_main_~i~0#1_196| 5) (= |v_#pthreadsForks_72| (+ |v_#pthreadsForks_73| 1)) (= |v_ULTIMATE.start_main_#t~pre2#1_139| |v_#pthreadsForks_73|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_196|, #pthreadsForks=|v_#pthreadsForks_73|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_129|, #valid=|v_#valid_232|, #memory_int=|v_#memory_int_136|, #length=|v_#length_167|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_153|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_196|, #pthreadsForks=|v_#pthreadsForks_72|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_129|, #valid=|v_#valid_232|, #memory_int=|v_#memory_int_135|, #length=|v_#length_167|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_153|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_139|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 421#[threadENTRY, threadENTRY, threadENTRY, L724-3, threadENTRY]don't care [694] L724-3-->threadENTRY: Formula: (and (= |v_threadThread5of5ForFork0_#in~arg.base_4| 0) (= |v_threadThread5of5ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_183|) (= |v_ULTIMATE.start_main_#t~pre2#1_132| v_threadThread5of5ForFork0_thidvar0_2)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_183|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_132|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_183|, threadThread5of5ForFork0_#in~arg.base=|v_threadThread5of5ForFork0_#in~arg.base_4|, threadThread5of5ForFork0_#res.offset=|v_threadThread5of5ForFork0_#res.offset_4|, threadThread5of5ForFork0_thidvar0=v_threadThread5of5ForFork0_thidvar0_2, threadThread5of5ForFork0_~arg.base=v_threadThread5of5ForFork0_~arg.base_6, threadThread5of5ForFork0_~thread~0=v_threadThread5of5ForFork0_~thread~0_6, threadThread5of5ForFork0_#in~arg.offset=|v_threadThread5of5ForFork0_#in~arg.offset_4|, threadThread5of5ForFork0_#res.base=|v_threadThread5of5ForFork0_#res.base_4|, threadThread5of5ForFork0_~arg.offset=v_threadThread5of5ForFork0_~arg.offset_6, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_132|} AuxVars[] AssignedVars[threadThread5of5ForFork0_#in~arg.base, threadThread5of5ForFork0_#res.offset, threadThread5of5ForFork0_thidvar0, threadThread5of5ForFork0_~arg.base, threadThread5of5ForFork0_~thread~0, threadThread5of5ForFork0_#in~arg.offset, threadThread5of5ForFork0_#res.base, threadThread5of5ForFork0_~arg.offset] 487#[threadENTRY, L724-4, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [659] L724-4-->L724-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] 569#[threadENTRY, L724-5, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [747] L724-5-->L723-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_207| 1) |v_ULTIMATE.start_main_~i~0#1_206|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_207|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_107|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_206|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_81|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 673#[L723-5, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [733] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_196| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_129| .cse1))) (and (= (store |v_#memory_int_136| |v_ULTIMATE.start_main_~#t~0#1.base_153| (store (select |v_#memory_int_136| |v_ULTIMATE.start_main_~#t~0#1.base_153|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_139|)) |v_#memory_int_135|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_129| .cse1 4) (select |v_#length_167| |v_ULTIMATE.start_main_~#t~0#1.base_153|)) (= (select |v_#valid_232| |v_ULTIMATE.start_main_~#t~0#1.base_153|) 1) (<= 0 .cse0) (<= |v_ULTIMATE.start_main_~i~0#1_196| 5) (= |v_#pthreadsForks_72| (+ |v_#pthreadsForks_73| 1)) (= |v_ULTIMATE.start_main_#t~pre2#1_139| |v_#pthreadsForks_73|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_196|, #pthreadsForks=|v_#pthreadsForks_73|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_129|, #valid=|v_#valid_232|, #memory_int=|v_#memory_int_136|, #length=|v_#length_167|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_153|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_196|, #pthreadsForks=|v_#pthreadsForks_72|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_129|, #valid=|v_#valid_232|, #memory_int=|v_#memory_int_135|, #length=|v_#length_167|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_153|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_139|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 789#[threadENTRY, threadENTRY, L724-3, threadENTRY, threadENTRY, threadENTRY]don't care [688] L724-3-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 927#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, threadENTRY]don't care [2022-07-22 12:53:59,551 INFO L750 eck$LassoCheckResult]: Loop: 927#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, threadENTRY]don't care [689] ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 927#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, threadENTRY]don't care [2022-07-22 12:53:59,551 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:53:59,551 INFO L85 PathProgramCache]: Analyzing trace with hash 1825581176, now seen corresponding path program 1 times [2022-07-22 12:53:59,551 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:53:59,552 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1423953685] [2022-07-22 12:53:59,552 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:53:59,552 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:53:59,573 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 12:53:59,656 INFO L134 CoverageAnalysis]: Checked inductivity of 50 backedges. 33 proven. 17 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-22 12:53:59,656 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-07-22 12:53:59,657 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1423953685] [2022-07-22 12:53:59,657 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1423953685] provided 0 perfect and 1 imperfect interpolant sequences [2022-07-22 12:53:59,658 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1974047331] [2022-07-22 12:53:59,658 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:53:59,658 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-07-22 12:53:59,658 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-22 12:53:59,664 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:53:59,669 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:53:59,780 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-07-22 12:53:59,783 INFO L263 TraceCheckSpWp]: Trace formula consists of 174 conjuncts, 7 conjunts are in the unsatisfiable core [2022-07-22 12:53:59,789 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-07-22 12:53:59,837 INFO L134 CoverageAnalysis]: Checked inductivity of 50 backedges. 50 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-07-22 12:53:59,837 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-07-22 12:53:59,837 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1974047331] provided 1 perfect and 0 imperfect interpolant sequences [2022-07-22 12:53:59,838 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-07-22 12:53:59,838 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [7] total 8 [2022-07-22 12:53:59,838 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1265262920] [2022-07-22 12:53:59,839 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-07-22 12:53:59,846 INFO L753 eck$LassoCheckResult]: stem already infeasible [2022-07-22 12:53:59,846 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-22 12:53:59,846 INFO L85 PathProgramCache]: Analyzing trace with hash 720, now seen corresponding path program 1 times [2022-07-22 12:53:59,847 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-22 12:53:59,847 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [287615751] [2022-07-22 12:53:59,847 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-22 12:53:59,847 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-22 12:53:59,851 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:53:59,851 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-22 12:53:59,853 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-22 12:53:59,854 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-22 12:53:59,856 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-07-22 12:53:59,887 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-07-22 12:53:59,887 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=31, Invalid=41, Unknown=0, NotChecked=0, Total=72 [2022-07-22 12:53:59,890 INFO L87 Difference]: Start difference. First operand currently 1433 states, but on-demand construction may add more states Second operand has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-07-22 12:54:00,006 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-07-22 12:54:00,007 INFO L93 Difference]: Finished difference Result 1370 states and 3864 transitions. [2022-07-22 12:54:00,009 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1370 states and 3864 transitions. [2022-07-22 12:54:00,031 INFO L131 ngComponentsAnalysis]: Automaton has 0 accepting balls. 0 [2022-07-22 12:54:00,034 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1370 states to 0 states and 0 transitions. [2022-07-22 12:54:00,035 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 0 [2022-07-22 12:54:00,036 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 0 [2022-07-22 12:54:00,036 INFO L73 IsDeterministic]: Start isDeterministic. Operand 0 states and 0 transitions. [2022-07-22 12:54:00,036 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-07-22 12:54:00,036 INFO L220 hiAutomatonCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-07-22 12:54:00,037 INFO L242 hiAutomatonCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-07-22 12:54:00,038 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-07-22 12:54:00,042 INFO L425 stractBuchiCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-07-22 12:54:00,043 INFO L332 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2022-07-22 12:54:00,043 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 0 states and 0 transitions. [2022-07-22 12:54:00,043 INFO L131 ngComponentsAnalysis]: Automaton has 0 accepting balls. 0 [2022-07-22 12:54:00,043 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is true [2022-07-22 12:54:00,049 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer CFG 22.07 12:54:00 BoogieIcfgContainer [2022-07-22 12:54:00,050 INFO L132 PluginConnector]: ------------------------ END BuchiAutomizer---------------------------- [2022-07-22 12:54:00,051 INFO L158 Benchmark]: Toolchain (without parser) took 15230.56ms. Allocated memory was 158.3MB in the beginning and 261.1MB in the end (delta: 102.8MB). Free memory was 131.4MB in the beginning and 167.5MB in the end (delta: -36.1MB). Peak memory consumption was 67.3MB. Max. memory is 8.0GB. [2022-07-22 12:54:00,051 INFO L158 Benchmark]: CDTParser took 0.18ms. Allocated memory is still 158.3MB. Free memory is still 128.5MB. There was no memory consumed. Max. memory is 8.0GB. [2022-07-22 12:54:00,052 INFO L158 Benchmark]: CACSL2BoogieTranslator took 624.49ms. Allocated memory is still 158.3MB. Free memory was 131.1MB in the beginning and 112.6MB in the end (delta: 18.4MB). Peak memory consumption was 17.8MB. Max. memory is 8.0GB. [2022-07-22 12:54:00,053 INFO L158 Benchmark]: Boogie Procedure Inliner took 47.52ms. Allocated memory is still 158.3MB. Free memory was 112.5MB in the beginning and 110.7MB in the end (delta: 1.8MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-07-22 12:54:00,053 INFO L158 Benchmark]: Boogie Preprocessor took 30.32ms. Allocated memory is still 158.3MB. Free memory was 110.7MB in the beginning and 109.4MB in the end (delta: 1.3MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-07-22 12:54:00,054 INFO L158 Benchmark]: RCFGBuilder took 607.12ms. Allocated memory is still 158.3MB. Free memory was 109.2MB in the beginning and 133.2MB in the end (delta: -24.0MB). Peak memory consumption was 8.3MB. Max. memory is 8.0GB. [2022-07-22 12:54:00,055 INFO L158 Benchmark]: BuchiAutomizer took 13911.66ms. Allocated memory was 158.3MB in the beginning and 261.1MB in the end (delta: 102.8MB). Free memory was 132.7MB in the beginning and 167.5MB in the end (delta: -34.8MB). Peak memory consumption was 69.5MB. Max. memory is 8.0GB. [2022-07-22 12:54:00,058 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.18ms. Allocated memory is still 158.3MB. Free memory is still 128.5MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 624.49ms. Allocated memory is still 158.3MB. Free memory was 131.1MB in the beginning and 112.6MB in the end (delta: 18.4MB). Peak memory consumption was 17.8MB. Max. memory is 8.0GB. * Boogie Procedure Inliner took 47.52ms. Allocated memory is still 158.3MB. Free memory was 112.5MB in the beginning and 110.7MB in the end (delta: 1.8MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * Boogie Preprocessor took 30.32ms. Allocated memory is still 158.3MB. Free memory was 110.7MB in the beginning and 109.4MB in the end (delta: 1.3MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 607.12ms. Allocated memory is still 158.3MB. Free memory was 109.2MB in the beginning and 133.2MB in the end (delta: -24.0MB). Peak memory consumption was 8.3MB. Max. memory is 8.0GB. * BuchiAutomizer took 13911.66ms. Allocated memory was 158.3MB in the beginning and 261.1MB in the end (delta: 102.8MB). Free memory was 132.7MB in the beginning and 167.5MB in the end (delta: -34.8MB). Peak memory consumption was 69.5MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: Constructed decomposition of program Your program was decomposed into 1 terminating modules (1 trivial, 0 deterministic, 0 nondeterministic). 1 modules have a trivial ranking function, the largest among these consists of 8 locations. - StatisticsResult: Timing statistics BüchiAutomizer plugin needed 9.1s and 6 iterations. TraceHistogramMax:6. Analysis of lassos took 4.6s. Construction of modules took 0.0s. Büchi inclusion checks took 0.1s. Highest rank in rank-based complementation 0. Minimization of det autom 1. Minimization of nondet autom 0. Automata minimization No data available. Non-live state removal took 0.0s Buchi closure took 0.0s. 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, 47 SdHoareTripleChecker+Valid, 0.1s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 47 mSDsluCounter, 14 SdHoareTripleChecker+Invalid, 0.1s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 31 mSDsCounter, 3 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 91 IncrementalHoareTripleChecker+Invalid, 94 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 3 mSolverCounterUnsat, 6 mSDtfsCounter, 91 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown LassoAnalysisResults: nont4 unkn0 SFLI0 SFLT0 conc0 concLT0 SILN1 SILU0 SILI0 SILT0 lasso0 LassoPreprocessingBenchmarks: LassoTerminationAnalysisBenchmarks: not availableLassoTerminationAnalysisBenchmarks: LassoNonterminationAnalysisSatFixpoint: 0 LassoNonterminationAnalysisSatUnbounded: 0 LassoNonterminationAnalysisUnsat: 0 LassoNonterminationAnalysisUnknown: 0 LassoNonterminationAnalysisTime: 0.0s InitialAbstractionConstructionTime: 8.4s - TerminationAnalysisResult: Termination proven Buchi Automizer proved that your program is terminating * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer: - StatisticsResult: PetriNetLargeBlockEncoding benchmarks Lipton Reduction Statistics: ReductionTime: 1.7s, 57 PlacesBefore, 13 PlacesAfterwards, 59 TransitionsBefore, 12 TransitionsAfterwards, 280 CoEnabledTransitionPairs, 5 FixpointIterations, 22 TrivialSequentialCompositions, 21 ConcurrentSequentialCompositions, 0 TrivialYvCompositions, 4 ConcurrentYvCompositions, 3 ChoiceCompositions, 50 TotalNumberOfCompositions, 314 MoverChecksTotal, Independence Relation Statistics: CachedIndependenceRelation.Independence Queries: [ total: 293, positive: 287, positive conditional: 0, positive unconditional: 287, negative: 6, negative conditional: 0, negative unconditional: 6, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , CachedIndependenceRelation.Statistics on underlying relation: SyntacticIndependenceRelation.Independence Queries: [ total: 168, positive: 164, positive conditional: 0, positive unconditional: 164, negative: 4, negative conditional: 0, negative unconditional: 4, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , Cache Queries: [ total: 293, positive: 123, positive conditional: 0, positive unconditional: 123, negative: 2, negative conditional: 0, negative unconditional: 2, unknown: 168, unknown conditional: 0, unknown unconditional: 168] , Statistics on independence cache: Total cache size (in pairs): 6, Positive cache size: 5, Positive conditional cache size: 0, Positive unconditional cache size: 5, Negative cache size: 1, Negative conditional cache size: 0, Negative unconditional cache size: 1 - StatisticsResult: PetriNetLargeBlockEncoding benchmarks Lipton Reduction Statistics: ReductionTime: 1.5s, 65 PlacesBefore, 19 PlacesAfterwards, 66 TransitionsBefore, 17 TransitionsAfterwards, 720 CoEnabledTransitionPairs, 5 FixpointIterations, 19 TrivialSequentialCompositions, 26 ConcurrentSequentialCompositions, 0 TrivialYvCompositions, 4 ConcurrentYvCompositions, 3 ChoiceCompositions, 52 TotalNumberOfCompositions, 960 MoverChecksTotal, Independence Relation Statistics: CachedIndependenceRelation.Independence Queries: [ total: 857, positive: 845, positive conditional: 0, positive unconditional: 845, negative: 12, negative conditional: 0, negative unconditional: 12, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , CachedIndependenceRelation.Statistics on underlying relation: SyntacticIndependenceRelation.Independence Queries: [ total: 402, positive: 395, positive conditional: 0, positive unconditional: 395, negative: 7, negative conditional: 0, negative unconditional: 7, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , Cache Queries: [ total: 857, positive: 450, positive conditional: 0, positive unconditional: 450, negative: 5, negative conditional: 0, negative unconditional: 5, unknown: 402, unknown conditional: 0, unknown unconditional: 402] , Statistics on independence cache: Total cache size (in pairs): 21, Positive cache size: 20, Positive conditional cache size: 0, Positive unconditional cache size: 20, Negative cache size: 1, Negative conditional cache size: 0, Negative unconditional cache size: 1 - StatisticsResult: PetriNetLargeBlockEncoding benchmarks Lipton Reduction Statistics: ReductionTime: 1.6s, 73 PlacesBefore, 23 PlacesAfterwards, 73 TransitionsBefore, 20 TransitionsAfterwards, 1200 CoEnabledTransitionPairs, 6 FixpointIterations, 19 TrivialSequentialCompositions, 31 ConcurrentSequentialCompositions, 0 TrivialYvCompositions, 3 ConcurrentYvCompositions, 3 ChoiceCompositions, 56 TotalNumberOfCompositions, 1485 MoverChecksTotal, Independence Relation Statistics: CachedIndependenceRelation.Independence Queries: [ total: 1248, positive: 1230, positive conditional: 0, positive unconditional: 1230, negative: 18, negative conditional: 0, negative unconditional: 18, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , CachedIndependenceRelation.Statistics on underlying relation: SyntacticIndependenceRelation.Independence Queries: [ total: 626, positive: 619, positive conditional: 0, positive unconditional: 619, negative: 7, negative conditional: 0, negative unconditional: 7, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , Cache Queries: [ total: 1248, positive: 611, positive conditional: 0, positive unconditional: 611, negative: 11, negative conditional: 0, negative unconditional: 11, unknown: 626, unknown conditional: 0, unknown unconditional: 626] , Statistics on independence cache: Total cache size (in pairs): 28, Positive cache size: 26, Positive conditional cache size: 0, Positive unconditional cache size: 26, Negative cache size: 2, Negative conditional cache size: 0, Negative unconditional cache size: 2 - StatisticsResult: PetriNetLargeBlockEncoding benchmarks Lipton Reduction Statistics: ReductionTime: 1.6s, 81 PlacesBefore, 27 PlacesAfterwards, 80 TransitionsBefore, 23 TransitionsAfterwards, 1760 CoEnabledTransitionPairs, 6 FixpointIterations, 19 TrivialSequentialCompositions, 34 ConcurrentSequentialCompositions, 0 TrivialYvCompositions, 4 ConcurrentYvCompositions, 3 ChoiceCompositions, 60 TotalNumberOfCompositions, 2683 MoverChecksTotal, Independence Relation Statistics: CachedIndependenceRelation.Independence Queries: [ total: 2201, positive: 2176, positive conditional: 0, positive unconditional: 2176, negative: 25, negative conditional: 0, negative unconditional: 25, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , CachedIndependenceRelation.Statistics on underlying relation: SyntacticIndependenceRelation.Independence Queries: [ total: 974, positive: 962, positive conditional: 0, positive unconditional: 962, negative: 12, negative conditional: 0, negative unconditional: 12, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , Cache Queries: [ total: 2201, positive: 1214, positive conditional: 0, positive unconditional: 1214, negative: 13, negative conditional: 0, negative unconditional: 13, unknown: 974, unknown conditional: 0, unknown unconditional: 974] , Statistics on independence cache: Total cache size (in pairs): 49, Positive cache size: 46, Positive conditional cache size: 0, Positive unconditional cache size: 46, Negative cache size: 3, Negative conditional cache size: 0, Negative unconditional cache size: 3 - StatisticsResult: PetriNetLargeBlockEncoding benchmarks Lipton Reduction Statistics: ReductionTime: 1.6s, 89 PlacesBefore, 31 PlacesAfterwards, 87 TransitionsBefore, 26 TransitionsAfterwards, 2400 CoEnabledTransitionPairs, 5 FixpointIterations, 19 TrivialSequentialCompositions, 39 ConcurrentSequentialCompositions, 0 TrivialYvCompositions, 3 ConcurrentYvCompositions, 3 ChoiceCompositions, 64 TotalNumberOfCompositions, 3361 MoverChecksTotal, Independence Relation Statistics: CachedIndependenceRelation.Independence Queries: [ total: 2969, positive: 2943, positive conditional: 0, positive unconditional: 2943, negative: 26, negative conditional: 0, negative unconditional: 26, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , CachedIndependenceRelation.Statistics on underlying relation: SyntacticIndependenceRelation.Independence Queries: [ total: 1331, positive: 1316, positive conditional: 0, positive unconditional: 1316, negative: 15, negative conditional: 0, negative unconditional: 15, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , Cache Queries: [ total: 2969, positive: 1627, positive conditional: 0, positive unconditional: 1627, negative: 11, negative conditional: 0, negative unconditional: 11, unknown: 1331, unknown conditional: 0, unknown unconditional: 1331] , Statistics on independence cache: Total cache size (in pairs): 79, Positive cache size: 75, Positive conditional cache size: 0, Positive unconditional cache size: 75, Negative cache size: 4, Negative conditional cache size: 0, Negative unconditional cache size: 4 RESULT: Ultimate proved your program to be correct! [2022-07-22 12:54:00,125 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-07-22 12:54:00,329 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (1)] Forceful destruction successful, exit code 0 Received shutdown request...