/usr/bin/java -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data -tc ../../../trunk/examples/toolchains/BuchiAutomizerCInline.xml -s ../../../trunk/examples/settings/buchiAutomizer/concurrent-automaton-semanticLbe.epf -i ../../../trunk/examples/svcomp/pthread-deagle/floating_read-15.i -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-0d686a6 [2022-07-26 13:59:20,165 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-07-26 13:59:20,166 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-07-26 13:59:20,229 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-07-26 13:59:20,230 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-07-26 13:59:20,231 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-07-26 13:59:20,234 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-07-26 13:59:20,236 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-07-26 13:59:20,237 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-07-26 13:59:20,242 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-07-26 13:59:20,243 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-07-26 13:59:20,244 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-07-26 13:59:20,245 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-07-26 13:59:20,246 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-07-26 13:59:20,247 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-07-26 13:59:20,251 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-07-26 13:59:20,251 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-07-26 13:59:20,252 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-07-26 13:59:20,254 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-07-26 13:59:20,258 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-07-26 13:59:20,258 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-07-26 13:59:20,260 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-07-26 13:59:20,260 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-07-26 13:59:20,261 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-07-26 13:59:20,262 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-07-26 13:59:20,266 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-07-26 13:59:20,266 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-07-26 13:59:20,266 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-07-26 13:59:20,267 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-07-26 13:59:20,267 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-07-26 13:59:20,268 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-07-26 13:59:20,268 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-07-26 13:59:20,269 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-07-26 13:59:20,269 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-07-26 13:59:20,270 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-07-26 13:59:20,270 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-07-26 13:59:20,270 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-07-26 13:59:20,271 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-07-26 13:59:20,271 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-07-26 13:59:20,271 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-07-26 13:59:20,272 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-07-26 13:59:20,273 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-07-26 13:59:20,273 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/buchiAutomizer/concurrent-automaton-semanticLbe.epf [2022-07-26 13:59:20,299 INFO L113 SettingsManager]: Loading preferences was successful [2022-07-26 13:59:20,300 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-07-26 13:59:20,300 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-07-26 13:59:20,300 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-07-26 13:59:20,301 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-07-26 13:59:20,301 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-07-26 13:59:20,301 INFO L138 SettingsManager]: * Use SBE=true [2022-07-26 13:59:20,301 INFO L136 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2022-07-26 13:59:20,301 INFO L138 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2022-07-26 13:59:20,302 INFO L138 SettingsManager]: * Use old map elimination=false [2022-07-26 13:59:20,302 INFO L138 SettingsManager]: * Use external solver (rank synthesis)=false [2022-07-26 13:59:20,302 INFO L138 SettingsManager]: * Use only trivial implications for array writes=true [2022-07-26 13:59:20,302 INFO L138 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2022-07-26 13:59:20,302 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-07-26 13:59:20,302 INFO L138 SettingsManager]: * sizeof long=4 [2022-07-26 13:59:20,302 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-07-26 13:59:20,302 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-07-26 13:59:20,303 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-07-26 13:59:20,303 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-07-26 13:59:20,303 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2022-07-26 13:59:20,303 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2022-07-26 13:59:20,303 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2022-07-26 13:59:20,303 INFO L138 SettingsManager]: * sizeof long double=12 [2022-07-26 13:59:20,303 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-07-26 13:59:20,303 INFO L138 SettingsManager]: * Assume nondeterminstic values are in range=false [2022-07-26 13:59:20,303 INFO L138 SettingsManager]: * Use constant arrays=true [2022-07-26 13:59:20,303 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2022-07-26 13:59:20,303 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-07-26 13:59:20,304 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-07-26 13:59:20,304 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-07-26 13:59:20,304 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-07-26 13:59:20,304 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-07-26 13:59:20,304 INFO L138 SettingsManager]: * TransformationType=MODULO_NEIGHBOR WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release [2022-07-26 13:59:20,493 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-07-26 13:59:20,507 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-07-26 13:59:20,509 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-07-26 13:59:20,510 INFO L271 PluginConnector]: Initializing CDTParser... [2022-07-26 13:59:20,510 INFO L275 PluginConnector]: CDTParser initialized [2022-07-26 13:59:20,511 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/pthread-deagle/floating_read-15.i [2022-07-26 13:59:20,554 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/cd904cb90/1cf1cf6dbee6431e82e3caa3d5b5dd61/FLAG47566d6eb [2022-07-26 13:59:20,984 INFO L306 CDTParser]: Found 1 translation units. [2022-07-26 13:59:20,984 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/pthread-deagle/floating_read-15.i [2022-07-26 13:59:20,996 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/cd904cb90/1cf1cf6dbee6431e82e3caa3d5b5dd61/FLAG47566d6eb [2022-07-26 13:59:21,008 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/cd904cb90/1cf1cf6dbee6431e82e3caa3d5b5dd61 [2022-07-26 13:59:21,010 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-07-26 13:59:21,013 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-07-26 13:59:21,014 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-07-26 13:59:21,014 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-07-26 13:59:21,016 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-07-26 13:59:21,016 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 26.07 01:59:21" (1/1) ... [2022-07-26 13:59:21,018 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@17c7b954 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.07 01:59:21, skipping insertion in model container [2022-07-26 13:59:21,018 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 26.07 01:59:21" (1/1) ... [2022-07-26 13:59:21,022 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-07-26 13:59:21,054 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-07-26 13:59:21,294 WARN L1550 CHandler]: Possible shadowing of function thread [2022-07-26 13:59:21,302 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-15.i[31197,31210] [2022-07-26 13:59:21,304 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-07-26 13:59:21,307 INFO L203 MainTranslator]: Completed pre-run [2022-07-26 13:59:21,349 WARN L1550 CHandler]: Possible shadowing of function thread [2022-07-26 13:59:21,356 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-15.i[31197,31210] [2022-07-26 13:59:21,358 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-07-26 13:59:21,385 INFO L208 MainTranslator]: Completed translation [2022-07-26 13:59:21,385 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.07 01:59:21 WrapperNode [2022-07-26 13:59:21,385 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-07-26 13:59:21,386 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-07-26 13:59:21,386 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-07-26 13:59:21,386 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-07-26 13:59:21,390 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.07 01:59:21" (1/1) ... [2022-07-26 13:59:21,401 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.07 01:59:21" (1/1) ... [2022-07-26 13:59:21,412 INFO L137 Inliner]: procedures = 162, calls = 17, calls flagged for inlining = 2, calls inlined = 2, statements flattened = 52 [2022-07-26 13:59:21,412 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-07-26 13:59:21,413 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-07-26 13:59:21,413 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-07-26 13:59:21,413 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-07-26 13:59:21,418 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.07 01:59:21" (1/1) ... [2022-07-26 13:59:21,419 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.07 01:59:21" (1/1) ... [2022-07-26 13:59:21,422 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.07 01:59:21" (1/1) ... [2022-07-26 13:59:21,422 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.07 01:59:21" (1/1) ... [2022-07-26 13:59:21,432 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.07 01:59:21" (1/1) ... [2022-07-26 13:59:21,434 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.07 01:59:21" (1/1) ... [2022-07-26 13:59:21,435 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.07 01:59:21" (1/1) ... [2022-07-26 13:59:21,436 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-07-26 13:59:21,437 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-07-26 13:59:21,437 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-07-26 13:59:21,437 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-07-26 13:59:21,445 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.07 01:59:21" (1/1) ... [2022-07-26 13:59:21,453 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2022-07-26 13:59:21,462 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-07-26 13:59:21,472 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2022-07-26 13:59:21,479 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (1)] Waiting until timeout for monitored process [2022-07-26 13:59:21,496 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-07-26 13:59:21,496 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-07-26 13:59:21,496 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2022-07-26 13:59:21,496 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-07-26 13:59:21,496 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-07-26 13:59:21,496 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-07-26 13:59:21,496 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-07-26 13:59:21,496 INFO L130 BoogieDeclarations]: Found specification of procedure thread [2022-07-26 13:59:21,496 INFO L138 BoogieDeclarations]: Found implementation of procedure thread [2022-07-26 13:59:21,496 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2022-07-26 13:59:21,497 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-07-26 13:59:21,497 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-07-26 13:59:21,497 WARN L208 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to SingleStatement [2022-07-26 13:59:21,562 INFO L234 CfgBuilder]: Building ICFG [2022-07-26 13:59:21,563 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-07-26 13:59:21,658 INFO L275 CfgBuilder]: Performing block encoding [2022-07-26 13:59:21,661 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-07-26 13:59:21,661 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-07-26 13:59:21,663 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 26.07 01:59:21 BoogieIcfgContainer [2022-07-26 13:59:21,663 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-07-26 13:59:21,663 INFO L113 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2022-07-26 13:59:21,663 INFO L271 PluginConnector]: Initializing BuchiAutomizer... [2022-07-26 13:59:21,681 INFO L275 PluginConnector]: BuchiAutomizer initialized [2022-07-26 13:59:21,681 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2022-07-26 13:59:21,681 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "CDTParser AST 26.07 01:59:21" (1/3) ... [2022-07-26 13:59:21,682 INFO L205 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@29460b1f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 26.07 01:59:21, skipping insertion in model container [2022-07-26 13:59:21,682 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2022-07-26 13:59:21,682 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.07 01:59:21" (2/3) ... [2022-07-26 13:59:21,682 INFO L205 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@29460b1f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 26.07 01:59:21, skipping insertion in model container [2022-07-26 13:59:21,682 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2022-07-26 13:59:21,683 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 26.07 01:59:21" (3/3) ... [2022-07-26 13:59:21,683 INFO L322 chiAutomizerObserver]: Analyzing ICFG floating_read-15.i [2022-07-26 13:59:21,755 INFO L144 ThreadInstanceAdder]: Constructed 1 joinOtherThreadTransitions. [2022-07-26 13:59:21,786 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 57 places, 59 transitions, 126 flow [2022-07-26 13:59:21,825 INFO L129 PetriNetUnfolder]: 8/80 cut-off events. [2022-07-26 13:59:21,825 INFO L130 PetriNetUnfolder]: For 1/1 co-relation queries the response was YES. [2022-07-26 13:59:21,827 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-26 13:59:21,828 INFO L82 GeneralOperation]: Start removeDead. Operand has 57 places, 59 transitions, 126 flow [2022-07-26 13:59:21,837 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 57 places, 59 transitions, 126 flow [2022-07-26 13:59:21,839 INFO L115 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-07-26 13:59:21,849 INFO L131 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 57 places, 59 transitions, 126 flow [2022-07-26 13:59:21,853 INFO L110 LiptonReduction]: Starting Lipton reduction on Petri net that has 57 places, 59 transitions, 126 flow [2022-07-26 13:59:21,853 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 57 places, 59 transitions, 126 flow [2022-07-26 13:59:21,872 INFO L129 PetriNetUnfolder]: 8/80 cut-off events. [2022-07-26 13:59:21,872 INFO L130 PetriNetUnfolder]: For 1/1 co-relation queries the response was YES. [2022-07-26 13:59:21,874 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-26 13:59:21,875 INFO L116 LiptonReduction]: Number of co-enabled transitions 280 [2022-07-26 13:59:23,094 INFO L131 LiptonReduction]: Checked pairs total: 314 [2022-07-26 13:59:23,094 INFO L133 LiptonReduction]: Total number of compositions: 50 [2022-07-26 13:59:23,114 INFO L301 stractBuchiCegarLoop]: Interprodecural is true [2022-07-26 13:59:23,114 INFO L302 stractBuchiCegarLoop]: Hoare is false [2022-07-26 13:59:23,114 INFO L303 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2022-07-26 13:59:23,114 INFO L304 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2022-07-26 13:59:23,114 INFO L305 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2022-07-26 13:59:23,114 INFO L306 stractBuchiCegarLoop]: Difference is false [2022-07-26 13:59:23,114 INFO L307 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2022-07-26 13:59:23,114 INFO L311 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2022-07-26 13:59:23,115 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 0 states, but on-demand construction may add more states [2022-07-26 13:59:23,172 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 2 [2022-07-26 13:59:23,172 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 13:59:23,173 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 13:59:23,176 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [2, 1, 1, 1, 1] [2022-07-26 13:59:23,176 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 13:59:23,177 INFO L333 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2022-07-26 13:59:23,177 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 20 states, but on-demand construction may add more states [2022-07-26 13:59:23,179 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 2 [2022-07-26 13:59:23,179 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 13:59:23,179 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 13:59:23,180 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [2, 1, 1, 1, 1] [2022-07-26 13:59:23,180 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 13:59:23,184 INFO L733 eck$LassoCheckResult]: Stem: 60#[ULTIMATE.startENTRY]don't care [197] ULTIMATE.startENTRY-->L723-5: Formula: (let ((.cse0 (select |v_#memory_int_31| 1))) (and (= (store |v_#length_40| |v_ULTIMATE.start_main_~#t~0#1.base_35| 64) |v_#length_39|) (= |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) (= (select .cse0 1) 0) (= (select |v_#valid_53| 2) 1) (= v_~x~0_42 0) (= (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|) (= (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) (= |v_ULTIMATE.start_main_~i~0#1_48| 1))) 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_48|, 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_44|, 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_42} 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|) (= (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|)) (<= |v_ULTIMATE.start_main_~i~0#1_32| 15) (<= 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#[threadENTRY, L724-4]don't care [192] L724-4-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_38| (+ |v_ULTIMATE.start_main_~i~0#1_39| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_39|} 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_38|, 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|) (= (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|)) (<= |v_ULTIMATE.start_main_~i~0#1_32| 15) (<= 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-26 13:59:23,189 INFO L735 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-26 13:59:23,194 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 13:59:23,194 INFO L85 PathProgramCache]: Analyzing trace with hash -1887096902, now seen corresponding path program 1 times [2022-07-26 13:59:23,200 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 13:59:23,201 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1160105102] [2022-07-26 13:59:23,201 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 13:59:23,202 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 13:59:23,304 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:23,304 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 13:59:23,315 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:23,328 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 13:59:23,329 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 13:59:23,330 INFO L85 PathProgramCache]: Analyzing trace with hash 176, now seen corresponding path program 1 times [2022-07-26 13:59:23,330 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 13:59:23,330 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1695668414] [2022-07-26 13:59:23,330 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 13:59:23,330 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 13:59:23,336 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:23,336 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 13:59:23,338 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:23,339 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 13:59:23,339 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 13:59:23,340 INFO L85 PathProgramCache]: Analyzing trace with hash 1629538327, now seen corresponding path program 1 times [2022-07-26 13:59:23,340 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 13:59:23,340 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1142219407] [2022-07-26 13:59:23,340 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 13:59:23,340 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 13:59:23,355 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:23,355 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 13:59:23,363 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:23,366 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 13:59:23,745 WARN L146 chiAutomizerObserver]: 1 thread instances were not sufficient, I will increase this number and restart the analysis [2022-07-26 13:59:23,751 INFO L144 ThreadInstanceAdder]: Constructed 2 joinOtherThreadTransitions. [2022-07-26 13:59:23,753 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 65 places, 66 transitions, 150 flow [2022-07-26 13:59:23,763 INFO L129 PetriNetUnfolder]: 14/133 cut-off events. [2022-07-26 13:59:23,763 INFO L130 PetriNetUnfolder]: For 6/6 co-relation queries the response was YES. [2022-07-26 13:59:23,764 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-26 13:59:23,764 INFO L82 GeneralOperation]: Start removeDead. Operand has 65 places, 66 transitions, 150 flow [2022-07-26 13:59:23,765 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 65 places, 66 transitions, 150 flow [2022-07-26 13:59:23,765 INFO L115 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-07-26 13:59:23,765 INFO L131 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 65 places, 66 transitions, 150 flow [2022-07-26 13:59:23,765 INFO L110 LiptonReduction]: Starting Lipton reduction on Petri net that has 65 places, 66 transitions, 150 flow [2022-07-26 13:59:23,765 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 65 places, 66 transitions, 150 flow [2022-07-26 13:59:23,782 INFO L129 PetriNetUnfolder]: 14/133 cut-off events. [2022-07-26 13:59:23,782 INFO L130 PetriNetUnfolder]: For 6/6 co-relation queries the response was YES. [2022-07-26 13:59:23,783 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-26 13:59:23,783 INFO L116 LiptonReduction]: Number of co-enabled transitions 720 [2022-07-26 13:59:24,856 INFO L131 LiptonReduction]: Checked pairs total: 960 [2022-07-26 13:59:24,857 INFO L133 LiptonReduction]: Total number of compositions: 52 [2022-07-26 13:59:24,859 INFO L301 stractBuchiCegarLoop]: Interprodecural is true [2022-07-26 13:59:24,859 INFO L302 stractBuchiCegarLoop]: Hoare is false [2022-07-26 13:59:24,859 INFO L303 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2022-07-26 13:59:24,861 INFO L304 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2022-07-26 13:59:24,864 INFO L305 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2022-07-26 13:59:24,865 INFO L306 stractBuchiCegarLoop]: Difference is false [2022-07-26 13:59:24,865 INFO L307 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2022-07-26 13:59:24,865 INFO L311 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2022-07-26 13:59:24,865 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 0 states, but on-demand construction may add more states [2022-07-26 13:59:24,886 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 4 [2022-07-26 13:59:24,886 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 13:59:24,886 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 13:59:24,887 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [3, 2, 2, 1, 1, 1, 1] [2022-07-26 13:59:24,887 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 13:59:24,887 INFO L333 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2022-07-26 13:59:24,887 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 67 states, but on-demand construction may add more states [2022-07-26 13:59:24,894 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 4 [2022-07-26 13:59:24,894 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 13:59:24,894 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 13:59:24,894 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [3, 2, 2, 1, 1, 1, 1] [2022-07-26 13:59:24,894 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 13:59:24,895 INFO L733 eck$LassoCheckResult]: Stem: 68#[ULTIMATE.startENTRY]don't care [322] ULTIMATE.startENTRY-->L723-5: Formula: (let ((.cse0 (select |v_#memory_int_54| 1))) (and (= (select |v_#length_78| 2) 1) (= 1 (select |v_#valid_107| 1)) (= v_~x~0_106 0) (= 2 (select |v_#length_78| 1)) (= |v_ULTIMATE.start_main_#in~argv#1.offset_28| |v_ULTIMATE.start_#in~argv#1.offset_17|) (= |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|) (= |v_ULTIMATE.start_main_~i~0#1_86| 1) (= 0 (select .cse0 1)) (= (select |v_#valid_107| 0) 0) (= (store |v_#valid_107| |v_ULTIMATE.start_main_~#t~0#1.base_68| 1) |v_#valid_106|) (= (store |v_#length_78| |v_ULTIMATE.start_main_~#t~0#1.base_68| 64) |v_#length_77|) (= 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_86|, 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_77|, 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_106} 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_80| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_50| .cse1))) (and (= (select |v_#valid_90| |v_ULTIMATE.start_main_~#t~0#1.base_56|) 1) (<= |v_ULTIMATE.start_main_~i~0#1_80| 15) (= |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|))) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_50| .cse1 4) (select |v_#length_69| |v_ULTIMATE.start_main_~#t~0#1.base_56|)) (= |v_#pthreadsForks_26| |v_ULTIMATE.start_main_#t~pre2#1_45|) (<= 0 .cse0) (= |v_#pthreadsForks_25| (+ |v_#pthreadsForks_26| 1))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_80|, #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_80|, #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_threadThread1of2ForFork0_#in~arg.base_4| 0) (= v_threadThread1of2ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre2#1_32|) (= |v_ULTIMATE.start_main_~i~0#1_53| |v_threadThread1of2ForFork0_#in~arg.offset_4|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_53|, 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_53|, 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#[threadENTRY, L724-4]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_72| (+ |v_ULTIMATE.start_main_~i~0#1_73| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_73|} 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_72|, 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#[threadENTRY, L723-5]don't care [313] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_80| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_50| .cse1))) (and (= (select |v_#valid_90| |v_ULTIMATE.start_main_~#t~0#1.base_56|) 1) (<= |v_ULTIMATE.start_main_~i~0#1_80| 15) (= |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|))) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_50| .cse1 4) (select |v_#length_69| |v_ULTIMATE.start_main_~#t~0#1.base_56|)) (= |v_#pthreadsForks_26| |v_ULTIMATE.start_main_#t~pre2#1_45|) (<= 0 .cse0) (= |v_#pthreadsForks_25| (+ |v_#pthreadsForks_26| 1))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_80|, #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_80|, #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#[threadENTRY, L724-3]don't care [268] L724-3-->threadENTRY: Formula: (and (= |v_threadThread2of2ForFork0_#in~arg.base_4| 0) (= v_threadThread2of2ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre2#1_34|) (= |v_ULTIMATE.start_main_~i~0#1_55| |v_threadThread2of2ForFork0_#in~arg.offset_4|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_55|, 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_55|, 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, threadENTRY, L724-4]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, threadENTRY, L724-5]don't care [304] L724-5-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_72| (+ |v_ULTIMATE.start_main_~i~0#1_73| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_73|} 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_72|, 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, threadENTRY, L723-5]don't care [313] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_80| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_50| .cse1))) (and (= (select |v_#valid_90| |v_ULTIMATE.start_main_~#t~0#1.base_56|) 1) (<= |v_ULTIMATE.start_main_~i~0#1_80| 15) (= |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|))) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_50| .cse1 4) (select |v_#length_69| |v_ULTIMATE.start_main_~#t~0#1.base_56|)) (= |v_#pthreadsForks_26| |v_ULTIMATE.start_main_#t~pre2#1_45|) (<= 0 .cse0) (= |v_#pthreadsForks_25| (+ |v_#pthreadsForks_26| 1))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_80|, #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_80|, #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, threadENTRY, L724-3]don't care [265] L724-3-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 145#[threadENTRY, threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES]don't care [2022-07-26 13:59:24,895 INFO L735 eck$LassoCheckResult]: Loop: 145#[threadENTRY, threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES]don't care [266] ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 145#[threadENTRY, threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES]don't care [2022-07-26 13:59:24,895 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 13:59:24,895 INFO L85 PathProgramCache]: Analyzing trace with hash 1896290208, now seen corresponding path program 1 times [2022-07-26 13:59:24,895 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 13:59:24,896 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [244295407] [2022-07-26 13:59:24,896 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 13:59:24,896 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 13:59:24,928 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:24,929 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 13:59:24,938 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:24,953 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 13:59:24,954 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 13:59:24,954 INFO L85 PathProgramCache]: Analyzing trace with hash 297, now seen corresponding path program 1 times [2022-07-26 13:59:24,954 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 13:59:24,954 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [978297252] [2022-07-26 13:59:24,954 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 13:59:24,954 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 13:59:24,963 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:24,963 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 13:59:24,964 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:24,965 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 13:59:24,965 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 13:59:24,965 INFO L85 PathProgramCache]: Analyzing trace with hash -1344545430, now seen corresponding path program 1 times [2022-07-26 13:59:24,965 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 13:59:24,965 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1286308751] [2022-07-26 13:59:24,965 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 13:59:24,965 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 13:59:24,992 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:24,992 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 13:59:25,008 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:25,011 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 13:59:25,522 WARN L146 chiAutomizerObserver]: 2 thread instances were not sufficient, I will increase this number and restart the analysis [2022-07-26 13:59:25,530 INFO L144 ThreadInstanceAdder]: Constructed 3 joinOtherThreadTransitions. [2022-07-26 13:59:25,535 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 73 places, 73 transitions, 176 flow [2022-07-26 13:59:25,559 INFO L129 PetriNetUnfolder]: 25/219 cut-off events. [2022-07-26 13:59:25,559 INFO L130 PetriNetUnfolder]: For 19/19 co-relation queries the response was YES. [2022-07-26 13:59:25,560 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-26 13:59:25,560 INFO L82 GeneralOperation]: Start removeDead. Operand has 73 places, 73 transitions, 176 flow [2022-07-26 13:59:25,561 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 73 places, 73 transitions, 176 flow [2022-07-26 13:59:25,561 INFO L115 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-07-26 13:59:25,562 INFO L131 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 73 places, 73 transitions, 176 flow [2022-07-26 13:59:25,562 INFO L110 LiptonReduction]: Starting Lipton reduction on Petri net that has 73 places, 73 transitions, 176 flow [2022-07-26 13:59:25,562 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 73 places, 73 transitions, 176 flow [2022-07-26 13:59:25,582 INFO L129 PetriNetUnfolder]: 25/219 cut-off events. [2022-07-26 13:59:25,582 INFO L130 PetriNetUnfolder]: For 19/19 co-relation queries the response was YES. [2022-07-26 13:59:25,582 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-26 13:59:25,584 INFO L116 LiptonReduction]: Number of co-enabled transitions 1200 [2022-07-26 13:59:26,662 INFO L131 LiptonReduction]: Checked pairs total: 1485 [2022-07-26 13:59:26,662 INFO L133 LiptonReduction]: Total number of compositions: 56 [2022-07-26 13:59:26,664 INFO L301 stractBuchiCegarLoop]: Interprodecural is true [2022-07-26 13:59:26,664 INFO L302 stractBuchiCegarLoop]: Hoare is false [2022-07-26 13:59:26,664 INFO L303 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2022-07-26 13:59:26,664 INFO L304 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2022-07-26 13:59:26,664 INFO L305 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2022-07-26 13:59:26,664 INFO L306 stractBuchiCegarLoop]: Difference is false [2022-07-26 13:59:26,664 INFO L307 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2022-07-26 13:59:26,664 INFO L311 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2022-07-26 13:59:26,664 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 0 states, but on-demand construction may add more states [2022-07-26 13:59:26,718 INFO L131 ngComponentsAnalysis]: Automaton has 8 accepting balls. 8 [2022-07-26 13:59:26,718 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 13:59:26,718 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 13:59:26,718 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [4, 3, 3, 1, 1, 1, 1, 1] [2022-07-26 13:59:26,718 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 13:59:26,719 INFO L333 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2022-07-26 13:59:26,719 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 185 states, but on-demand construction may add more states [2022-07-26 13:59:26,730 INFO L131 ngComponentsAnalysis]: Automaton has 8 accepting balls. 8 [2022-07-26 13:59:26,730 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 13:59:26,730 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 13:59:26,730 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [4, 3, 3, 1, 1, 1, 1, 1] [2022-07-26 13:59:26,731 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 13:59:26,731 INFO L733 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) (= (select |v_#valid_161| |v_ULTIMATE.start_main_~#t~0#1.base_103|) 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)) (= |v_ULTIMATE.start_main_~i~0#1_131| 1) (= |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) (= (store |v_#length_116| |v_ULTIMATE.start_main_~#t~0#1.base_103| 64) |v_#length_115|) (= 2 (select |v_#length_116| 1)) (= v_~x~0_185 0) (= (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_131|, 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_112|, 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_185} 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_113| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_73| .cse1))) (and (= |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_113| 15) (= (select |v_#valid_134| |v_ULTIMATE.start_main_~#t~0#1.base_85|) 1) (<= 0 .cse0) (= |v_#memory_int_76| (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_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_113|, #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_113|, #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_threadThread1of3ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre2#1_58|) (= |v_ULTIMATE.start_main_~i~0#1_92| |v_threadThread1of3ForFork0_#in~arg.offset_4|) (= |v_threadThread1of3ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_92|, 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_92|, 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#[L724-5, threadENTRY]don't care [438] L724-5-->L723-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_110| 1) |v_ULTIMATE.start_main_~i~0#1_109|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_110|} 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_109|, 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_113| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_73| .cse1))) (and (= |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_113| 15) (= (select |v_#valid_134| |v_ULTIMATE.start_main_~#t~0#1.base_85|) 1) (<= 0 .cse0) (= |v_#memory_int_76| (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_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_113|, #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_113|, #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#[L724-3, threadENTRY]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_94| |v_threadThread2of3ForFork0_#in~arg.offset_4|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_94|, 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_94|, 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#[threadENTRY, threadENTRY, L724-4]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_110| 1) |v_ULTIMATE.start_main_~i~0#1_109|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_110|} 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_109|, 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_113| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_73| .cse1))) (and (= |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_113| 15) (= (select |v_#valid_134| |v_ULTIMATE.start_main_~#t~0#1.base_85|) 1) (<= 0 .cse0) (= |v_#memory_int_76| (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_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_113|, #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_113|, #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_threadThread3of3ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre2#1_62|) (= |v_ULTIMATE.start_main_~i~0#1_96| |v_threadThread3of3ForFork0_#in~arg.offset_4|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_96|, 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_96|, 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#[threadENTRY, 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] 181#[threadENTRY, L724-5, threadENTRY, threadENTRY]don't care [438] L724-5-->L723-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_110| 1) |v_ULTIMATE.start_main_~i~0#1_109|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_110|} 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_109|, 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, L723-5, threadENTRY, threadENTRY]don't care [443] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_113| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_73| .cse1))) (and (= |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_113| 15) (= (select |v_#valid_134| |v_ULTIMATE.start_main_~#t~0#1.base_85|) 1) (<= 0 .cse0) (= |v_#memory_int_76| (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_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_113|, #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_113|, #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, L724-3, threadENTRY, threadENTRY]don't care [395] L724-3-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 261#[threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, threadENTRY, threadENTRY]don't care [2022-07-26 13:59:26,731 INFO L735 eck$LassoCheckResult]: Loop: 261#[threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, threadENTRY, threadENTRY]don't care [396] ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 261#[threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, threadENTRY, threadENTRY]don't care [2022-07-26 13:59:26,732 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 13:59:26,732 INFO L85 PathProgramCache]: Analyzing trace with hash -922135252, now seen corresponding path program 1 times [2022-07-26 13:59:26,732 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 13:59:26,732 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [385279538] [2022-07-26 13:59:26,732 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 13:59:26,732 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 13:59:26,758 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:26,759 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 13:59:26,766 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:26,769 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 13:59:26,769 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 13:59:26,769 INFO L85 PathProgramCache]: Analyzing trace with hash 427, now seen corresponding path program 1 times [2022-07-26 13:59:26,769 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 13:59:26,769 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [827522501] [2022-07-26 13:59:26,769 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 13:59:26,769 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 13:59:26,772 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:26,772 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 13:59:26,772 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:26,773 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 13:59:26,773 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 13:59:26,774 INFO L85 PathProgramCache]: Analyzing trace with hash 1478578656, now seen corresponding path program 1 times [2022-07-26 13:59:26,774 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 13:59:26,774 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [128617150] [2022-07-26 13:59:26,774 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 13:59:26,774 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 13:59:26,784 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:26,784 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 13:59:26,790 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:26,793 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 13:59:27,455 WARN L146 chiAutomizerObserver]: 3 thread instances were not sufficient, I will increase this number and restart the analysis [2022-07-26 13:59:27,469 INFO L144 ThreadInstanceAdder]: Constructed 4 joinOtherThreadTransitions. [2022-07-26 13:59:27,489 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 81 places, 80 transitions, 204 flow [2022-07-26 13:59:27,507 INFO L129 PetriNetUnfolder]: 48/373 cut-off events. [2022-07-26 13:59:27,508 INFO L130 PetriNetUnfolder]: For 48/48 co-relation queries the response was YES. [2022-07-26 13:59:27,508 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-26 13:59:27,508 INFO L82 GeneralOperation]: Start removeDead. Operand has 81 places, 80 transitions, 204 flow [2022-07-26 13:59:27,511 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 81 places, 80 transitions, 204 flow [2022-07-26 13:59:27,516 INFO L115 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-07-26 13:59:27,516 INFO L131 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 81 places, 80 transitions, 204 flow [2022-07-26 13:59:27,516 INFO L110 LiptonReduction]: Starting Lipton reduction on Petri net that has 81 places, 80 transitions, 204 flow [2022-07-26 13:59:27,516 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 81 places, 80 transitions, 204 flow [2022-07-26 13:59:27,536 INFO L129 PetriNetUnfolder]: 48/373 cut-off events. [2022-07-26 13:59:27,536 INFO L130 PetriNetUnfolder]: For 48/48 co-relation queries the response was YES. [2022-07-26 13:59:27,538 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-26 13:59:27,542 INFO L116 LiptonReduction]: Number of co-enabled transitions 1760 [2022-07-26 13:59:28,593 INFO L131 LiptonReduction]: Checked pairs total: 2683 [2022-07-26 13:59:28,594 INFO L133 LiptonReduction]: Total number of compositions: 60 [2022-07-26 13:59:28,595 INFO L301 stractBuchiCegarLoop]: Interprodecural is true [2022-07-26 13:59:28,595 INFO L302 stractBuchiCegarLoop]: Hoare is false [2022-07-26 13:59:28,595 INFO L303 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2022-07-26 13:59:28,595 INFO L304 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2022-07-26 13:59:28,595 INFO L305 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2022-07-26 13:59:28,595 INFO L306 stractBuchiCegarLoop]: Difference is false [2022-07-26 13:59:28,595 INFO L307 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2022-07-26 13:59:28,595 INFO L311 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2022-07-26 13:59:28,595 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 0 states, but on-demand construction may add more states [2022-07-26 13:59:28,645 INFO L131 ngComponentsAnalysis]: Automaton has 16 accepting balls. 16 [2022-07-26 13:59:28,645 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 13:59:28,645 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 13:59:28,646 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [5, 4, 4, 1, 1, 1, 1, 1, 1] [2022-07-26 13:59:28,646 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 13:59:28,646 INFO L333 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2022-07-26 13:59:28,646 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 511 states, but on-demand construction may add more states [2022-07-26 13:59:28,652 INFO L131 ngComponentsAnalysis]: Automaton has 16 accepting balls. 16 [2022-07-26 13:59:28,652 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 13:59:28,652 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 13:59:28,652 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [5, 4, 4, 1, 1, 1, 1, 1, 1] [2022-07-26 13:59:28,652 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 13:59:28,653 INFO L733 eck$LassoCheckResult]: Stem: 84#[ULTIMATE.startENTRY]don't care [605] ULTIMATE.startENTRY-->L723-5: Formula: (let ((.cse0 (select |v_#memory_int_117| 1))) (and (= (store |v_#length_154| |v_ULTIMATE.start_main_~#t~0#1.base_140| 64) |v_#length_153|) (= 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) (= |v_ULTIMATE.start_main_~i~0#1_175| 1) (= |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) (= 2 (select |v_#length_154| 1)) (= |v_ULTIMATE.start_#in~argv#1.base_37| |v_ULTIMATE.start_main_#in~argv#1.base_58|) (= v_~x~0_278 0) (< 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_175|, 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_147|, 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_278} 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_167| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_110| .cse0))) (and (= (+ |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) (<= (+ |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) (= (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|) (<= |v_ULTIMATE.start_main_~i~0#1_167| 15)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_167|, #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_167|, #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_138|) (= |v_threadThread1of4ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_138|, 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_138|, 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#[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] 99#[L724-5, threadENTRY]don't care [583] L724-5-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_159| (+ |v_ULTIMATE.start_main_~i~0#1_160| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_160|} 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_159|, 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#[L723-5, threadENTRY]don't care [599] L723-5-->L724-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_167| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_110| .cse0))) (and (= (+ |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) (<= (+ |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) (= (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|) (<= |v_ULTIMATE.start_main_~i~0#1_167| 15)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_167|, #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_167|, #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#[L724-3, threadENTRY]don't care [539] L724-3-->threadENTRY: Formula: (and (= |v_threadThread2of4ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_140|) (= 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_140|, 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_140|, 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#[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] 129#[L724-5, threadENTRY, threadENTRY]don't care [583] L724-5-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_159| (+ |v_ULTIMATE.start_main_~i~0#1_160| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_160|} 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_159|, 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#[L723-5, threadENTRY, threadENTRY]don't care [599] L723-5-->L724-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_167| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_110| .cse0))) (and (= (+ |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) (<= (+ |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) (= (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|) (<= |v_ULTIMATE.start_main_~i~0#1_167| 15)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_167|, #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_167|, #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#[L724-3, threadENTRY, threadENTRY]don't care [540] L724-3-->threadENTRY: Formula: (and (= |v_threadThread3of4ForFork0_#in~arg.base_4| 0) (= |v_ULTIMATE.start_main_~i~0#1_142| |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_142|, 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_142|, 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, 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] 187#[threadENTRY, threadENTRY, threadENTRY, L724-5]don't care [583] L724-5-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_159| (+ |v_ULTIMATE.start_main_~i~0#1_160| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_160|} 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_159|, 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_167| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_110| .cse0))) (and (= (+ |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) (<= (+ |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) (= (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|) (<= |v_ULTIMATE.start_main_~i~0#1_167| 15)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_167|, #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_167|, #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#[L724-3, threadENTRY, threadENTRY, threadENTRY]don't care [541] L724-3-->threadENTRY: Formula: (and (= |v_threadThread4of4ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_144|) (= 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_144|, 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_144|, 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, L724-4, threadENTRY, 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] 305#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, L724-5]don't care [583] L724-5-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_159| (+ |v_ULTIMATE.start_main_~i~0#1_160| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_160|} 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_159|, 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_167| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_110| .cse0))) (and (= (+ |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) (<= (+ |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) (= (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|) (<= |v_ULTIMATE.start_main_~i~0#1_167| 15)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_167|, #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_167|, #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, threadENTRY, threadENTRY, L724-3, threadENTRY]don't care [536] L724-3-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 475#[ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [2022-07-26 13:59:28,653 INFO L735 eck$LassoCheckResult]: Loop: 475#[ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [537] ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 475#[ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [2022-07-26 13:59:28,653 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 13:59:28,653 INFO L85 PathProgramCache]: Analyzing trace with hash 62267851, now seen corresponding path program 1 times [2022-07-26 13:59:28,654 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 13:59:28,654 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1040437927] [2022-07-26 13:59:28,654 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 13:59:28,654 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 13:59:28,667 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:28,667 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 13:59:28,676 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:28,680 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 13:59:28,680 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 13:59:28,680 INFO L85 PathProgramCache]: Analyzing trace with hash 568, now seen corresponding path program 1 times [2022-07-26 13:59:28,681 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 13:59:28,681 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1483943714] [2022-07-26 13:59:28,681 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 13:59:28,681 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 13:59:28,683 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:28,684 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 13:59:28,684 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:28,685 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 13:59:28,685 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 13:59:28,685 INFO L85 PathProgramCache]: Analyzing trace with hash 1930303918, now seen corresponding path program 1 times [2022-07-26 13:59:28,685 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 13:59:28,686 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [281166284] [2022-07-26 13:59:28,686 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 13:59:28,686 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 13:59:28,696 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:28,697 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 13:59:28,704 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:28,708 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 13:59:29,799 WARN L146 chiAutomizerObserver]: 4 thread instances were not sufficient, I will increase this number and restart the analysis [2022-07-26 13:59:29,811 INFO L144 ThreadInstanceAdder]: Constructed 5 joinOtherThreadTransitions. [2022-07-26 13:59:29,813 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 89 places, 87 transitions, 234 flow [2022-07-26 13:59:29,857 INFO L129 PetriNetUnfolder]: 99/667 cut-off events. [2022-07-26 13:59:29,858 INFO L130 PetriNetUnfolder]: For 110/110 co-relation queries the response was YES. [2022-07-26 13:59:29,859 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-26 13:59:29,860 INFO L82 GeneralOperation]: Start removeDead. Operand has 89 places, 87 transitions, 234 flow [2022-07-26 13:59:29,865 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 89 places, 87 transitions, 234 flow [2022-07-26 13:59:29,865 INFO L115 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-07-26 13:59:29,865 INFO L131 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 89 places, 87 transitions, 234 flow [2022-07-26 13:59:29,866 INFO L110 LiptonReduction]: Starting Lipton reduction on Petri net that has 89 places, 87 transitions, 234 flow [2022-07-26 13:59:29,866 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 89 places, 87 transitions, 234 flow [2022-07-26 13:59:29,903 INFO L129 PetriNetUnfolder]: 99/667 cut-off events. [2022-07-26 13:59:29,903 INFO L130 PetriNetUnfolder]: For 110/110 co-relation queries the response was YES. [2022-07-26 13:59:29,905 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-26 13:59:29,912 INFO L116 LiptonReduction]: Number of co-enabled transitions 2400 [2022-07-26 13:59:31,065 INFO L131 LiptonReduction]: Checked pairs total: 3361 [2022-07-26 13:59:31,066 INFO L133 LiptonReduction]: Total number of compositions: 64 [2022-07-26 13:59:31,067 INFO L301 stractBuchiCegarLoop]: Interprodecural is true [2022-07-26 13:59:31,067 INFO L302 stractBuchiCegarLoop]: Hoare is false [2022-07-26 13:59:31,067 INFO L303 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2022-07-26 13:59:31,067 INFO L304 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2022-07-26 13:59:31,067 INFO L305 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2022-07-26 13:59:31,067 INFO L306 stractBuchiCegarLoop]: Difference is false [2022-07-26 13:59:31,067 INFO L307 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2022-07-26 13:59:31,067 INFO L311 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2022-07-26 13:59:31,067 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 0 states, but on-demand construction may add more states [2022-07-26 13:59:31,151 INFO L131 ngComponentsAnalysis]: Automaton has 32 accepting balls. 32 [2022-07-26 13:59:31,152 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 13:59:31,152 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 13:59:31,152 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [6, 5, 5, 1, 1, 1, 1, 1, 1, 1] [2022-07-26 13:59:31,152 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 13:59:31,152 INFO L333 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2022-07-26 13:59:31,152 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 1433 states, but on-demand construction may add more states [2022-07-26 13:59:31,166 INFO L131 ngComponentsAnalysis]: Automaton has 32 accepting balls. 32 [2022-07-26 13:59:31,167 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 13:59:31,167 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 13:59:31,167 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [6, 5, 5, 1, 1, 1, 1, 1, 1, 1] [2022-07-26 13:59:31,168 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 13:59:31,168 INFO L733 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_386 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|) (= (store |v_#length_188| |v_ULTIMATE.start_main_~#t~0#1.base_177| 64) |v_#length_187|) (= (select (select |v_#memory_int_145| 2) 0) 0) (= |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) (= |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_~i~0#1_238| 1) (= |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_238|, 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_190|, 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_386} 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_204| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~0#1.offset_129|))) (and (= (select |v_#valid_232| |v_ULTIMATE.start_main_~#t~0#1.base_153|) 1) (<= |v_ULTIMATE.start_main_~i~0#1_204| 15) (= (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|) (<= 0 .cse0) (= |v_#pthreadsForks_72| (+ |v_#pthreadsForks_73| 1)) (= |v_ULTIMATE.start_main_#t~pre2#1_139| |v_#pthreadsForks_73|) (<= (+ .cse1 |v_ULTIMATE.start_main_~#t~0#1.offset_129| 4) (select |v_#length_167| |v_ULTIMATE.start_main_~#t~0#1.base_153|))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_204|, #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_204|, #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.offset_4| |v_ULTIMATE.start_main_~i~0#1_183|) (= |v_threadThread1of5ForFork0_#in~arg.base_4| 0) (= |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_183|, 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_183|, 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#[L724-5, threadENTRY]don't care [747] L724-5-->L723-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_215| 1) |v_ULTIMATE.start_main_~i~0#1_214|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_215|} 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_214|, 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#[L723-5, threadENTRY]don't care [733] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_204| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~0#1.offset_129|))) (and (= (select |v_#valid_232| |v_ULTIMATE.start_main_~#t~0#1.base_153|) 1) (<= |v_ULTIMATE.start_main_~i~0#1_204| 15) (= (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|) (<= 0 .cse0) (= |v_#pthreadsForks_72| (+ |v_#pthreadsForks_73| 1)) (= |v_ULTIMATE.start_main_#t~pre2#1_139| |v_#pthreadsForks_73|) (<= (+ .cse1 |v_ULTIMATE.start_main_~#t~0#1.offset_129| 4) (select |v_#length_167| |v_ULTIMATE.start_main_~#t~0#1.base_153|))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_204|, #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_204|, #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#[L724-3, threadENTRY]don't care [691] L724-3-->threadENTRY: Formula: (and (= 0 |v_threadThread2of5ForFork0_#in~arg.base_4|) (= |v_threadThread2of5ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_185|) (= 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_185|, 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_185|, 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, threadENTRY, L724-4]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#[L724-5, threadENTRY, threadENTRY]don't care [747] L724-5-->L723-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_215| 1) |v_ULTIMATE.start_main_~i~0#1_214|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_215|} 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_214|, 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, threadENTRY, L723-5]don't care [733] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_204| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~0#1.offset_129|))) (and (= (select |v_#valid_232| |v_ULTIMATE.start_main_~#t~0#1.base_153|) 1) (<= |v_ULTIMATE.start_main_~i~0#1_204| 15) (= (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|) (<= 0 .cse0) (= |v_#pthreadsForks_72| (+ |v_#pthreadsForks_73| 1)) (= |v_ULTIMATE.start_main_#t~pre2#1_139| |v_#pthreadsForks_73|) (<= (+ .cse1 |v_ULTIMATE.start_main_~#t~0#1.offset_129| 4) (select |v_#length_167| |v_ULTIMATE.start_main_~#t~0#1.base_153|))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_204|, #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_204|, #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, threadENTRY, L724-3]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_187| |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_187|, 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_187|, 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, threadENTRY, L724-4]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_215| 1) |v_ULTIMATE.start_main_~i~0#1_214|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_215|} 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_214|, 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#[threadENTRY, threadENTRY, L723-5, threadENTRY]don't care [733] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_204| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~0#1.offset_129|))) (and (= (select |v_#valid_232| |v_ULTIMATE.start_main_~#t~0#1.base_153|) 1) (<= |v_ULTIMATE.start_main_~i~0#1_204| 15) (= (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|) (<= 0 .cse0) (= |v_#pthreadsForks_72| (+ |v_#pthreadsForks_73| 1)) (= |v_ULTIMATE.start_main_#t~pre2#1_139| |v_#pthreadsForks_73|) (<= (+ .cse1 |v_ULTIMATE.start_main_~#t~0#1.offset_129| 4) (select |v_#length_167| |v_ULTIMATE.start_main_~#t~0#1.base_153|))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_204|, #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_204|, #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_threadThread4of5ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_189|) (= |v_ULTIMATE.start_main_#t~pre2#1_130| v_threadThread4of5ForFork0_thidvar0_2) (= |v_threadThread4of5ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_189|, 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_189|, 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#[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] 319#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, L724-5]don't care [747] L724-5-->L723-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_215| 1) |v_ULTIMATE.start_main_~i~0#1_214|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_215|} 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_214|, 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#[threadENTRY, threadENTRY, threadENTRY, L723-5, threadENTRY]don't care [733] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_204| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~0#1.offset_129|))) (and (= (select |v_#valid_232| |v_ULTIMATE.start_main_~#t~0#1.base_153|) 1) (<= |v_ULTIMATE.start_main_~i~0#1_204| 15) (= (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|) (<= 0 .cse0) (= |v_#pthreadsForks_72| (+ |v_#pthreadsForks_73| 1)) (= |v_ULTIMATE.start_main_#t~pre2#1_139| |v_#pthreadsForks_73|) (<= (+ .cse1 |v_ULTIMATE.start_main_~#t~0#1.offset_129| 4) (select |v_#length_167| |v_ULTIMATE.start_main_~#t~0#1.base_153|))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_204|, #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_204|, #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, threadENTRY, L724-3]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_191|) (= |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_191|, 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_191|, 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_215| 1) |v_ULTIMATE.start_main_~i~0#1_214|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_215|} 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_214|, 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#[threadENTRY, threadENTRY, L723-5, threadENTRY, threadENTRY, threadENTRY]don't care [733] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_204| 4))) (let ((.cse0 (+ .cse1 |v_ULTIMATE.start_main_~#t~0#1.offset_129|))) (and (= (select |v_#valid_232| |v_ULTIMATE.start_main_~#t~0#1.base_153|) 1) (<= |v_ULTIMATE.start_main_~i~0#1_204| 15) (= (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|) (<= 0 .cse0) (= |v_#pthreadsForks_72| (+ |v_#pthreadsForks_73| 1)) (= |v_ULTIMATE.start_main_#t~pre2#1_139| |v_#pthreadsForks_73|) (<= (+ .cse1 |v_ULTIMATE.start_main_~#t~0#1.offset_129| 4) (select |v_#length_167| |v_ULTIMATE.start_main_~#t~0#1.base_153|))))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_204|, #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_204|, #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, threadENTRY, threadENTRY, threadENTRY, L724-3]don't care [688] L724-3-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 927#[threadENTRY, threadENTRY, threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, threadENTRY, threadENTRY]don't care [2022-07-26 13:59:31,169 INFO L735 eck$LassoCheckResult]: Loop: 927#[threadENTRY, threadENTRY, threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, threadENTRY, 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, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, threadENTRY, threadENTRY]don't care [2022-07-26 13:59:31,169 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 13:59:31,169 INFO L85 PathProgramCache]: Analyzing trace with hash 1825581176, now seen corresponding path program 1 times [2022-07-26 13:59:31,169 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 13:59:31,170 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [152622695] [2022-07-26 13:59:31,170 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 13:59:31,170 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 13:59:31,193 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:31,193 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 13:59:31,200 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:31,204 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 13:59:31,205 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 13:59:31,205 INFO L85 PathProgramCache]: Analyzing trace with hash 720, now seen corresponding path program 1 times [2022-07-26 13:59:31,205 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 13:59:31,205 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1435879979] [2022-07-26 13:59:31,205 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 13:59:31,205 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 13:59:31,207 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:31,207 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 13:59:31,208 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:31,209 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 13:59:31,209 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 13:59:31,209 INFO L85 PathProgramCache]: Analyzing trace with hash 758442297, now seen corresponding path program 1 times [2022-07-26 13:59:31,209 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 13:59:31,209 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [76166998] [2022-07-26 13:59:31,209 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 13:59:31,210 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 13:59:31,219 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:31,219 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 13:59:31,226 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:31,230 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 13:59:32,782 WARN L146 chiAutomizerObserver]: 5 thread instances were not sufficient, I will increase this number and restart the analysis [2022-07-26 13:59:32,792 INFO L144 ThreadInstanceAdder]: Constructed 6 joinOtherThreadTransitions. [2022-07-26 13:59:32,795 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 97 places, 94 transitions, 266 flow [2022-07-26 13:59:32,890 INFO L129 PetriNetUnfolder]: 214/1249 cut-off events. [2022-07-26 13:59:32,890 INFO L130 PetriNetUnfolder]: For 242/242 co-relation queries the response was YES. [2022-07-26 13:59:32,893 INFO L84 FinitePrefix]: Finished finitePrefix Result has 1481 conditions, 1249 events. 214/1249 cut-off events. For 242/242 co-relation queries the response was YES. Maximal size of possible extension queue 30. Compared 6773 event pairs, 72 based on Foata normal form. 0/1100 useless extension candidates. Maximal degree in co-relation 765. Up to 192 conditions per place. [2022-07-26 13:59:32,893 INFO L82 GeneralOperation]: Start removeDead. Operand has 97 places, 94 transitions, 266 flow [2022-07-26 13:59:32,905 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 97 places, 94 transitions, 266 flow [2022-07-26 13:59:32,905 INFO L115 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-07-26 13:59:32,906 INFO L131 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 97 places, 94 transitions, 266 flow [2022-07-26 13:59:32,906 INFO L110 LiptonReduction]: Starting Lipton reduction on Petri net that has 97 places, 94 transitions, 266 flow [2022-07-26 13:59:32,906 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 97 places, 94 transitions, 266 flow [2022-07-26 13:59:33,039 INFO L129 PetriNetUnfolder]: 214/1249 cut-off events. [2022-07-26 13:59:33,039 INFO L130 PetriNetUnfolder]: For 242/242 co-relation queries the response was YES. [2022-07-26 13:59:33,042 INFO L84 FinitePrefix]: Finished finitePrefix Result has 1481 conditions, 1249 events. 214/1249 cut-off events. For 242/242 co-relation queries the response was YES. Maximal size of possible extension queue 30. Compared 6725 event pairs, 72 based on Foata normal form. 0/1100 useless extension candidates. Maximal degree in co-relation 765. Up to 192 conditions per place. [2022-07-26 13:59:33,057 INFO L116 LiptonReduction]: Number of co-enabled transitions 3120 [2022-07-26 13:59:34,447 INFO L131 LiptonReduction]: Checked pairs total: 4981 [2022-07-26 13:59:34,448 INFO L133 LiptonReduction]: Total number of compositions: 68 [2022-07-26 13:59:34,449 INFO L301 stractBuchiCegarLoop]: Interprodecural is true [2022-07-26 13:59:34,449 INFO L302 stractBuchiCegarLoop]: Hoare is false [2022-07-26 13:59:34,449 INFO L303 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2022-07-26 13:59:34,449 INFO L304 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2022-07-26 13:59:34,449 INFO L305 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2022-07-26 13:59:34,449 INFO L306 stractBuchiCegarLoop]: Difference is false [2022-07-26 13:59:34,449 INFO L307 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2022-07-26 13:59:34,449 INFO L311 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2022-07-26 13:59:34,449 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 0 states, but on-demand construction may add more states [2022-07-26 13:59:34,683 INFO L131 ngComponentsAnalysis]: Automaton has 64 accepting balls. 64 [2022-07-26 13:59:34,683 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 13:59:34,683 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 13:59:34,684 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [7, 6, 6, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-26 13:59:34,684 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 13:59:34,684 INFO L333 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2022-07-26 13:59:34,684 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 4087 states, but on-demand construction may add more states [2022-07-26 13:59:34,725 INFO L131 ngComponentsAnalysis]: Automaton has 64 accepting balls. 64 [2022-07-26 13:59:34,725 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 13:59:34,725 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 13:59:34,726 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [7, 6, 6, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-26 13:59:34,727 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 13:59:34,728 INFO L733 eck$LassoCheckResult]: Stem: 100#[ULTIMATE.startENTRY]don't care [932] ULTIMATE.startENTRY-->L723-5: Formula: (let ((.cse0 (select |v_#memory_int_176| 1))) (and (< 0 |v_#StackHeapBarrier_102|) (= (store |v_#valid_317| |v_ULTIMATE.start_main_~#t~0#1.base_210| 1) |v_#valid_316|) (< |v_#StackHeapBarrier_102| |v_ULTIMATE.start_main_~#t~0#1.base_210|) (= |v_ULTIMATE.start_main_#in~argv#1.offset_86| |v_ULTIMATE.start_main_~argv#1.offset_94|) (= |v_ULTIMATE.start_main_#in~argv#1.base_86| |v_ULTIMATE.start_main_~argv#1.base_94|) (= (store |v_#length_228| |v_ULTIMATE.start_main_~#t~0#1.base_210| 64) |v_#length_227|) (= |v_ULTIMATE.start_main_~i~0#1_300| 1) (= (select |v_#valid_317| 1) 1) (= |v_#NULL.base_59| 0) (= |v_#NULL.offset_59| 0) (= v_~x~0_510 0) (= |v_ULTIMATE.start_#in~argv#1.base_57| |v_ULTIMATE.start_main_#in~argv#1.base_86|) (= |v_ULTIMATE.start_main_#in~argv#1.offset_86| |v_ULTIMATE.start_#in~argv#1.offset_57|) (= 0 (select (select |v_#memory_int_176| 2) 0)) (= (select .cse0 1) 0) (= (select |v_#valid_317| |v_ULTIMATE.start_main_~#t~0#1.base_210|) 0) (= |v_ULTIMATE.start_main_~#t~0#1.offset_176| 0) (= (select |v_#valid_317| 0) 0) (= (select |v_#valid_317| 2) 1) (= |v_ULTIMATE.start_#in~argc#1_57| |v_ULTIMATE.start_main_#in~argc#1_84|) (= |v_ULTIMATE.start_main_~argc#1_88| |v_ULTIMATE.start_main_#in~argc#1_84|) (= (select |v_#length_228| 1) 2) (= (select |v_#length_228| 2) 1) (= 48 (select .cse0 0)))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_57|, #StackHeapBarrier=|v_#StackHeapBarrier_102|, #valid=|v_#valid_317|, #memory_int=|v_#memory_int_176|, #length=|v_#length_228|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_57|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_57|} OutVars{#NULL.offset=|v_#NULL.offset_59|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_94|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_94|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_57|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_300|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_84|, #length=|v_#length_227|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_110|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_57|, ULTIMATE.start_main_#t~mem5#1=|v_ULTIMATE.start_main_#t~mem5#1_123|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_57|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_210|, ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_88|, ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_139|, ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_233|, ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_137|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_86|, #NULL.base=|v_#NULL.base_59|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_185|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_86|, #StackHeapBarrier=|v_#StackHeapBarrier_102|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_105|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_176|, #valid=|v_#valid_316|, #memory_int=|v_#memory_int_176|, ~x~0=v_~x~0_510} 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] 103#[L723-5]don't care [910] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_274| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_160| .cse1))) (and (= (select |v_#valid_292| |v_ULTIMATE.start_main_~#t~0#1.base_192|) 1) (= |v_ULTIMATE.start_main_#t~pre2#1_177| |v_#pthreadsForks_90|) (= (+ |v_#pthreadsForks_90| 1) |v_#pthreadsForks_89|) (<= 0 .cse0) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_160| .cse1 4) (select |v_#length_207| |v_ULTIMATE.start_main_~#t~0#1.base_192|)) (<= |v_ULTIMATE.start_main_~i~0#1_274| 15) (= (store |v_#memory_int_167| |v_ULTIMATE.start_main_~#t~0#1.base_192| (store (select |v_#memory_int_167| |v_ULTIMATE.start_main_~#t~0#1.base_192|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_177|)) |v_#memory_int_166|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_274|, #pthreadsForks=|v_#pthreadsForks_90|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_160|, #valid=|v_#valid_292|, #memory_int=|v_#memory_int_167|, #length=|v_#length_207|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_192|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_274|, #pthreadsForks=|v_#pthreadsForks_89|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_160|, #valid=|v_#valid_292|, #memory_int=|v_#memory_int_166|, #length=|v_#length_207|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_192|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_177|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 107#[L724-3]don't care [853] L724-3-->threadENTRY: Formula: (and (= |v_ULTIMATE.start_main_#t~pre2#1_162| v_threadThread1of6ForFork0_thidvar0_2) (= |v_threadThread1of6ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_247|) (= |v_threadThread1of6ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_247|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_162|} OutVars{threadThread1of6ForFork0_~thread~0=v_threadThread1of6ForFork0_~thread~0_6, threadThread1of6ForFork0_#res.offset=|v_threadThread1of6ForFork0_#res.offset_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_247|, threadThread1of6ForFork0_#res.base=|v_threadThread1of6ForFork0_#res.base_4|, threadThread1of6ForFork0_#in~arg.offset=|v_threadThread1of6ForFork0_#in~arg.offset_4|, threadThread1of6ForFork0_thidvar0=v_threadThread1of6ForFork0_thidvar0_2, threadThread1of6ForFork0_#in~arg.base=|v_threadThread1of6ForFork0_#in~arg.base_4|, threadThread1of6ForFork0_~arg.offset=v_threadThread1of6ForFork0_~arg.offset_6, threadThread1of6ForFork0_~arg.base=v_threadThread1of6ForFork0_~arg.base_6, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_162|} AuxVars[] AssignedVars[threadThread1of6ForFork0_~thread~0, threadThread1of6ForFork0_#res.offset, threadThread1of6ForFork0_#res.base, threadThread1of6ForFork0_#in~arg.offset, threadThread1of6ForFork0_thidvar0, threadThread1of6ForFork0_#in~arg.base, threadThread1of6ForFork0_~arg.offset, threadThread1of6ForFork0_~arg.base] 113#[L724-4, threadENTRY]don't care [817] 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] 115#[L724-5, threadENTRY]don't care [909] L724-5-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_270| (+ |v_ULTIMATE.start_main_~i~0#1_271| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_271|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_129|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_270|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_97|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 119#[L723-5, threadENTRY]don't care [910] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_274| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_160| .cse1))) (and (= (select |v_#valid_292| |v_ULTIMATE.start_main_~#t~0#1.base_192|) 1) (= |v_ULTIMATE.start_main_#t~pre2#1_177| |v_#pthreadsForks_90|) (= (+ |v_#pthreadsForks_90| 1) |v_#pthreadsForks_89|) (<= 0 .cse0) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_160| .cse1 4) (select |v_#length_207| |v_ULTIMATE.start_main_~#t~0#1.base_192|)) (<= |v_ULTIMATE.start_main_~i~0#1_274| 15) (= (store |v_#memory_int_167| |v_ULTIMATE.start_main_~#t~0#1.base_192| (store (select |v_#memory_int_167| |v_ULTIMATE.start_main_~#t~0#1.base_192|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_177|)) |v_#memory_int_166|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_274|, #pthreadsForks=|v_#pthreadsForks_90|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_160|, #valid=|v_#valid_292|, #memory_int=|v_#memory_int_167|, #length=|v_#length_207|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_192|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_274|, #pthreadsForks=|v_#pthreadsForks_89|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_160|, #valid=|v_#valid_292|, #memory_int=|v_#memory_int_166|, #length=|v_#length_207|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_192|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_177|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 125#[L724-3, threadENTRY]don't care [854] L724-3-->threadENTRY: Formula: (and (= |v_ULTIMATE.start_main_#t~pre2#1_164| v_threadThread2of6ForFork0_thidvar0_2) (= 0 |v_threadThread2of6ForFork0_#in~arg.base_4|) (= |v_threadThread2of6ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_249|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_249|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_164|} OutVars{threadThread2of6ForFork0_~arg.offset=v_threadThread2of6ForFork0_~arg.offset_6, threadThread2of6ForFork0_#res.offset=|v_threadThread2of6ForFork0_#res.offset_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_249|, threadThread2of6ForFork0_#in~arg.base=|v_threadThread2of6ForFork0_#in~arg.base_4|, threadThread2of6ForFork0_#res.base=|v_threadThread2of6ForFork0_#res.base_4|, threadThread2of6ForFork0_#in~arg.offset=|v_threadThread2of6ForFork0_#in~arg.offset_4|, threadThread2of6ForFork0_~thread~0=v_threadThread2of6ForFork0_~thread~0_6, threadThread2of6ForFork0_thidvar0=v_threadThread2of6ForFork0_thidvar0_2, threadThread2of6ForFork0_~arg.base=v_threadThread2of6ForFork0_~arg.base_6, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_164|} AuxVars[] AssignedVars[threadThread2of6ForFork0_~arg.offset, threadThread2of6ForFork0_#res.offset, threadThread2of6ForFork0_#in~arg.base, threadThread2of6ForFork0_#res.base, threadThread2of6ForFork0_#in~arg.offset, threadThread2of6ForFork0_~thread~0, threadThread2of6ForFork0_thidvar0, threadThread2of6ForFork0_~arg.base] 135#[threadENTRY, threadENTRY, L724-4]don't care [817] 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] 143#[threadENTRY, threadENTRY, L724-5]don't care [909] L724-5-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_270| (+ |v_ULTIMATE.start_main_~i~0#1_271| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_271|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_129|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_270|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_97|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 151#[threadENTRY, threadENTRY, L723-5]don't care [910] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_274| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_160| .cse1))) (and (= (select |v_#valid_292| |v_ULTIMATE.start_main_~#t~0#1.base_192|) 1) (= |v_ULTIMATE.start_main_#t~pre2#1_177| |v_#pthreadsForks_90|) (= (+ |v_#pthreadsForks_90| 1) |v_#pthreadsForks_89|) (<= 0 .cse0) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_160| .cse1 4) (select |v_#length_207| |v_ULTIMATE.start_main_~#t~0#1.base_192|)) (<= |v_ULTIMATE.start_main_~i~0#1_274| 15) (= (store |v_#memory_int_167| |v_ULTIMATE.start_main_~#t~0#1.base_192| (store (select |v_#memory_int_167| |v_ULTIMATE.start_main_~#t~0#1.base_192|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_177|)) |v_#memory_int_166|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_274|, #pthreadsForks=|v_#pthreadsForks_90|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_160|, #valid=|v_#valid_292|, #memory_int=|v_#memory_int_167|, #length=|v_#length_207|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_192|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_274|, #pthreadsForks=|v_#pthreadsForks_89|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_160|, #valid=|v_#valid_292|, #memory_int=|v_#memory_int_166|, #length=|v_#length_207|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_192|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_177|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 165#[threadENTRY, threadENTRY, L724-3]don't care [855] L724-3-->threadENTRY: Formula: (and (= |v_ULTIMATE.start_main_~i~0#1_251| |v_threadThread3of6ForFork0_#in~arg.offset_4|) (= |v_ULTIMATE.start_main_#t~pre2#1_166| v_threadThread3of6ForFork0_thidvar0_2) (= |v_threadThread3of6ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_251|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_166|} OutVars{threadThread3of6ForFork0_#in~arg.base=|v_threadThread3of6ForFork0_#in~arg.base_4|, threadThread3of6ForFork0_#res.base=|v_threadThread3of6ForFork0_#res.base_4|, threadThread3of6ForFork0_~arg.offset=v_threadThread3of6ForFork0_~arg.offset_6, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_251|, threadThread3of6ForFork0_#res.offset=|v_threadThread3of6ForFork0_#res.offset_4|, threadThread3of6ForFork0_~thread~0=v_threadThread3of6ForFork0_~thread~0_6, threadThread3of6ForFork0_#in~arg.offset=|v_threadThread3of6ForFork0_#in~arg.offset_4|, threadThread3of6ForFork0_thidvar0=v_threadThread3of6ForFork0_thidvar0_2, threadThread3of6ForFork0_~arg.base=v_threadThread3of6ForFork0_~arg.base_6, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_166|} AuxVars[] AssignedVars[threadThread3of6ForFork0_#in~arg.base, threadThread3of6ForFork0_#res.base, threadThread3of6ForFork0_~arg.offset, threadThread3of6ForFork0_#res.offset, threadThread3of6ForFork0_~thread~0, threadThread3of6ForFork0_#in~arg.offset, threadThread3of6ForFork0_thidvar0, threadThread3of6ForFork0_~arg.base] 183#[threadENTRY, threadENTRY, threadENTRY, L724-4]don't care [817] 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] 201#[L724-5, threadENTRY, threadENTRY, threadENTRY]don't care [909] L724-5-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_270| (+ |v_ULTIMATE.start_main_~i~0#1_271| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_271|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_129|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_270|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_97|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 223#[threadENTRY, threadENTRY, threadENTRY, L723-5]don't care [910] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_274| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_160| .cse1))) (and (= (select |v_#valid_292| |v_ULTIMATE.start_main_~#t~0#1.base_192|) 1) (= |v_ULTIMATE.start_main_#t~pre2#1_177| |v_#pthreadsForks_90|) (= (+ |v_#pthreadsForks_90| 1) |v_#pthreadsForks_89|) (<= 0 .cse0) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_160| .cse1 4) (select |v_#length_207| |v_ULTIMATE.start_main_~#t~0#1.base_192|)) (<= |v_ULTIMATE.start_main_~i~0#1_274| 15) (= (store |v_#memory_int_167| |v_ULTIMATE.start_main_~#t~0#1.base_192| (store (select |v_#memory_int_167| |v_ULTIMATE.start_main_~#t~0#1.base_192|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_177|)) |v_#memory_int_166|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_274|, #pthreadsForks=|v_#pthreadsForks_90|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_160|, #valid=|v_#valid_292|, #memory_int=|v_#memory_int_167|, #length=|v_#length_207|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_192|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_274|, #pthreadsForks=|v_#pthreadsForks_89|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_160|, #valid=|v_#valid_292|, #memory_int=|v_#memory_int_166|, #length=|v_#length_207|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_192|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_177|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 251#[threadENTRY, threadENTRY, threadENTRY, L724-3]don't care [856] L724-3-->threadENTRY: Formula: (and (= |v_threadThread4of6ForFork0_#in~arg.base_4| 0) (= |v_ULTIMATE.start_main_#t~pre2#1_168| v_threadThread4of6ForFork0_thidvar0_2) (= |v_threadThread4of6ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_253|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_253|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_168|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_253|, threadThread4of6ForFork0_#res.base=|v_threadThread4of6ForFork0_#res.base_4|, threadThread4of6ForFork0_#in~arg.offset=|v_threadThread4of6ForFork0_#in~arg.offset_4|, threadThread4of6ForFork0_thidvar0=v_threadThread4of6ForFork0_thidvar0_2, threadThread4of6ForFork0_~thread~0=v_threadThread4of6ForFork0_~thread~0_6, threadThread4of6ForFork0_#res.offset=|v_threadThread4of6ForFork0_#res.offset_4|, threadThread4of6ForFork0_~arg.offset=v_threadThread4of6ForFork0_~arg.offset_6, threadThread4of6ForFork0_#in~arg.base=|v_threadThread4of6ForFork0_#in~arg.base_4|, threadThread4of6ForFork0_~arg.base=v_threadThread4of6ForFork0_~arg.base_6, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_168|} AuxVars[] AssignedVars[threadThread4of6ForFork0_#res.base, threadThread4of6ForFork0_#in~arg.offset, threadThread4of6ForFork0_thidvar0, threadThread4of6ForFork0_~thread~0, threadThread4of6ForFork0_#res.offset, threadThread4of6ForFork0_~arg.offset, threadThread4of6ForFork0_#in~arg.base, threadThread4of6ForFork0_~arg.base] 283#[threadENTRY, threadENTRY, L724-4, threadENTRY, threadENTRY]don't care [817] 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] 323#[threadENTRY, threadENTRY, L724-5, threadENTRY, threadENTRY]don't care [909] L724-5-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_270| (+ |v_ULTIMATE.start_main_~i~0#1_271| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_271|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_129|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_270|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_97|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 371#[threadENTRY, threadENTRY, L723-5, threadENTRY, threadENTRY]don't care [910] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_274| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_160| .cse1))) (and (= (select |v_#valid_292| |v_ULTIMATE.start_main_~#t~0#1.base_192|) 1) (= |v_ULTIMATE.start_main_#t~pre2#1_177| |v_#pthreadsForks_90|) (= (+ |v_#pthreadsForks_90| 1) |v_#pthreadsForks_89|) (<= 0 .cse0) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_160| .cse1 4) (select |v_#length_207| |v_ULTIMATE.start_main_~#t~0#1.base_192|)) (<= |v_ULTIMATE.start_main_~i~0#1_274| 15) (= (store |v_#memory_int_167| |v_ULTIMATE.start_main_~#t~0#1.base_192| (store (select |v_#memory_int_167| |v_ULTIMATE.start_main_~#t~0#1.base_192|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_177|)) |v_#memory_int_166|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_274|, #pthreadsForks=|v_#pthreadsForks_90|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_160|, #valid=|v_#valid_292|, #memory_int=|v_#memory_int_167|, #length=|v_#length_207|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_192|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_274|, #pthreadsForks=|v_#pthreadsForks_89|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_160|, #valid=|v_#valid_292|, #memory_int=|v_#memory_int_166|, #length=|v_#length_207|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_192|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_177|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 427#[threadENTRY, threadENTRY, threadENTRY, L724-3, threadENTRY]don't care [857] L724-3-->threadENTRY: Formula: (and (= |v_threadThread5of6ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_255|) (= |v_ULTIMATE.start_main_#t~pre2#1_170| v_threadThread5of6ForFork0_thidvar0_2) (= |v_threadThread5of6ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_255|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_170|} OutVars{threadThread5of6ForFork0_thidvar0=v_threadThread5of6ForFork0_thidvar0_2, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_255|, threadThread5of6ForFork0_#in~arg.offset=|v_threadThread5of6ForFork0_#in~arg.offset_4|, threadThread5of6ForFork0_~thread~0=v_threadThread5of6ForFork0_~thread~0_6, threadThread5of6ForFork0_~arg.offset=v_threadThread5of6ForFork0_~arg.offset_6, threadThread5of6ForFork0_#res.base=|v_threadThread5of6ForFork0_#res.base_4|, threadThread5of6ForFork0_~arg.base=v_threadThread5of6ForFork0_~arg.base_6, threadThread5of6ForFork0_#res.offset=|v_threadThread5of6ForFork0_#res.offset_4|, threadThread5of6ForFork0_#in~arg.base=|v_threadThread5of6ForFork0_#in~arg.base_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_170|} AuxVars[] AssignedVars[threadThread5of6ForFork0_thidvar0, threadThread5of6ForFork0_#in~arg.offset, threadThread5of6ForFork0_~thread~0, threadThread5of6ForFork0_~arg.offset, threadThread5of6ForFork0_#res.base, threadThread5of6ForFork0_~arg.base, threadThread5of6ForFork0_#res.offset, threadThread5of6ForFork0_#in~arg.base] 493#[threadENTRY, threadENTRY, threadENTRY, L724-4, threadENTRY, threadENTRY]don't care [817] 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] 575#[threadENTRY, L724-5, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [909] L724-5-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_270| (+ |v_ULTIMATE.start_main_~i~0#1_271| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_271|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_129|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_270|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_97|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 677#[threadENTRY, threadENTRY, threadENTRY, L723-5, threadENTRY, threadENTRY]don't care [910] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_274| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_160| .cse1))) (and (= (select |v_#valid_292| |v_ULTIMATE.start_main_~#t~0#1.base_192|) 1) (= |v_ULTIMATE.start_main_#t~pre2#1_177| |v_#pthreadsForks_90|) (= (+ |v_#pthreadsForks_90| 1) |v_#pthreadsForks_89|) (<= 0 .cse0) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_160| .cse1 4) (select |v_#length_207| |v_ULTIMATE.start_main_~#t~0#1.base_192|)) (<= |v_ULTIMATE.start_main_~i~0#1_274| 15) (= (store |v_#memory_int_167| |v_ULTIMATE.start_main_~#t~0#1.base_192| (store (select |v_#memory_int_167| |v_ULTIMATE.start_main_~#t~0#1.base_192|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_177|)) |v_#memory_int_166|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_274|, #pthreadsForks=|v_#pthreadsForks_90|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_160|, #valid=|v_#valid_292|, #memory_int=|v_#memory_int_167|, #length=|v_#length_207|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_192|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_274|, #pthreadsForks=|v_#pthreadsForks_89|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_160|, #valid=|v_#valid_292|, #memory_int=|v_#memory_int_166|, #length=|v_#length_207|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_192|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_177|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 795#[threadENTRY, L724-3, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [858] L724-3-->threadENTRY: Formula: (and (= |v_threadThread6of6ForFork0_#in~arg.base_4| 0) (= v_threadThread6of6ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre2#1_172|) (= |v_threadThread6of6ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_257|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_257|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_172|} OutVars{threadThread6of6ForFork0_#in~arg.offset=|v_threadThread6of6ForFork0_#in~arg.offset_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_257|, threadThread6of6ForFork0_~thread~0=v_threadThread6of6ForFork0_~thread~0_6, threadThread6of6ForFork0_#res.base=|v_threadThread6of6ForFork0_#res.base_4|, threadThread6of6ForFork0_thidvar0=v_threadThread6of6ForFork0_thidvar0_2, threadThread6of6ForFork0_~arg.offset=v_threadThread6of6ForFork0_~arg.offset_6, threadThread6of6ForFork0_#res.offset=|v_threadThread6of6ForFork0_#res.offset_4|, threadThread6of6ForFork0_~arg.base=v_threadThread6of6ForFork0_~arg.base_6, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_172|, threadThread6of6ForFork0_#in~arg.base=|v_threadThread6of6ForFork0_#in~arg.base_4|} AuxVars[] AssignedVars[threadThread6of6ForFork0_#in~arg.offset, threadThread6of6ForFork0_~thread~0, threadThread6of6ForFork0_#res.base, threadThread6of6ForFork0_thidvar0, threadThread6of6ForFork0_~arg.offset, threadThread6of6ForFork0_#res.offset, threadThread6of6ForFork0_~arg.base, threadThread6of6ForFork0_#in~arg.base] 933#[threadENTRY, threadENTRY, L724-4, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [817] 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] 1103#[threadENTRY, threadENTRY, L724-5, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [909] L724-5-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_270| (+ |v_ULTIMATE.start_main_~i~0#1_271| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_271|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_129|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_270|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_97|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 1317#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, L723-5]don't care [910] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_274| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_160| .cse1))) (and (= (select |v_#valid_292| |v_ULTIMATE.start_main_~#t~0#1.base_192|) 1) (= |v_ULTIMATE.start_main_#t~pre2#1_177| |v_#pthreadsForks_90|) (= (+ |v_#pthreadsForks_90| 1) |v_#pthreadsForks_89|) (<= 0 .cse0) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_160| .cse1 4) (select |v_#length_207| |v_ULTIMATE.start_main_~#t~0#1.base_192|)) (<= |v_ULTIMATE.start_main_~i~0#1_274| 15) (= (store |v_#memory_int_167| |v_ULTIMATE.start_main_~#t~0#1.base_192| (store (select |v_#memory_int_167| |v_ULTIMATE.start_main_~#t~0#1.base_192|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_177|)) |v_#memory_int_166|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_274|, #pthreadsForks=|v_#pthreadsForks_90|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_160|, #valid=|v_#valid_292|, #memory_int=|v_#memory_int_167|, #length=|v_#length_207|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_192|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_274|, #pthreadsForks=|v_#pthreadsForks_89|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_160|, #valid=|v_#valid_292|, #memory_int=|v_#memory_int_166|, #length=|v_#length_207|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_192|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_177|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 1569#[threadENTRY, threadENTRY, L724-3, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [851] L724-3-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 1861#[threadENTRY, threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [2022-07-26 13:59:34,728 INFO L735 eck$LassoCheckResult]: Loop: 1861#[threadENTRY, threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [852] ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 1861#[threadENTRY, threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [2022-07-26 13:59:34,728 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 13:59:34,728 INFO L85 PathProgramCache]: Analyzing trace with hash 528130217, now seen corresponding path program 1 times [2022-07-26 13:59:34,729 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 13:59:34,729 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [572289724] [2022-07-26 13:59:34,729 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 13:59:34,729 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 13:59:34,750 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:34,751 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 13:59:34,775 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:34,790 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 13:59:34,790 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 13:59:34,790 INFO L85 PathProgramCache]: Analyzing trace with hash 883, now seen corresponding path program 1 times [2022-07-26 13:59:34,790 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 13:59:34,790 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [530928998] [2022-07-26 13:59:34,790 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 13:59:34,790 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 13:59:34,794 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:34,794 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 13:59:34,794 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:34,796 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 13:59:34,797 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 13:59:34,797 INFO L85 PathProgramCache]: Analyzing trace with hash -807831605, now seen corresponding path program 1 times [2022-07-26 13:59:34,798 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 13:59:34,800 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [354777506] [2022-07-26 13:59:34,800 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 13:59:34,800 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 13:59:34,814 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:34,814 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 13:59:34,829 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:34,837 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 13:59:37,021 WARN L146 chiAutomizerObserver]: 6 thread instances were not sufficient, I will increase this number and restart the analysis [2022-07-26 13:59:37,033 INFO L144 ThreadInstanceAdder]: Constructed 7 joinOtherThreadTransitions. [2022-07-26 13:59:37,036 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 105 places, 101 transitions, 300 flow [2022-07-26 13:59:37,192 INFO L129 PetriNetUnfolder]: 473/2423 cut-off events. [2022-07-26 13:59:37,192 INFO L130 PetriNetUnfolder]: For 525/525 co-relation queries the response was YES. [2022-07-26 13:59:37,200 INFO L84 FinitePrefix]: Finished finitePrefix Result has 2921 conditions, 2423 events. 473/2423 cut-off events. For 525/525 co-relation queries the response was YES. Maximal size of possible extension queue 59. Compared 16274 event pairs, 201 based on Foata normal form. 0/2143 useless extension candidates. Maximal degree in co-relation 1466. Up to 448 conditions per place. [2022-07-26 13:59:37,201 INFO L82 GeneralOperation]: Start removeDead. Operand has 105 places, 101 transitions, 300 flow [2022-07-26 13:59:37,219 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 105 places, 101 transitions, 300 flow [2022-07-26 13:59:37,219 INFO L115 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-07-26 13:59:37,219 INFO L131 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 105 places, 101 transitions, 300 flow [2022-07-26 13:59:37,220 INFO L110 LiptonReduction]: Starting Lipton reduction on Petri net that has 105 places, 101 transitions, 300 flow [2022-07-26 13:59:37,221 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 105 places, 101 transitions, 300 flow [2022-07-26 13:59:37,403 INFO L129 PetriNetUnfolder]: 473/2423 cut-off events. [2022-07-26 13:59:37,404 INFO L130 PetriNetUnfolder]: For 525/525 co-relation queries the response was YES. [2022-07-26 13:59:37,410 INFO L84 FinitePrefix]: Finished finitePrefix Result has 2921 conditions, 2423 events. 473/2423 cut-off events. For 525/525 co-relation queries the response was YES. Maximal size of possible extension queue 57. Compared 16505 event pairs, 201 based on Foata normal form. 0/2143 useless extension candidates. Maximal degree in co-relation 1466. Up to 448 conditions per place. [2022-07-26 13:59:37,428 INFO L116 LiptonReduction]: Number of co-enabled transitions 3920 [2022-07-26 13:59:38,732 INFO L131 LiptonReduction]: Checked pairs total: 6701 [2022-07-26 13:59:38,732 INFO L133 LiptonReduction]: Total number of compositions: 72 [2022-07-26 13:59:38,734 INFO L301 stractBuchiCegarLoop]: Interprodecural is true [2022-07-26 13:59:38,734 INFO L302 stractBuchiCegarLoop]: Hoare is false [2022-07-26 13:59:38,734 INFO L303 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2022-07-26 13:59:38,734 INFO L304 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2022-07-26 13:59:38,734 INFO L305 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2022-07-26 13:59:38,734 INFO L306 stractBuchiCegarLoop]: Difference is false [2022-07-26 13:59:38,734 INFO L307 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2022-07-26 13:59:38,734 INFO L311 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2022-07-26 13:59:38,734 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 0 states, but on-demand construction may add more states [2022-07-26 13:59:39,386 INFO L131 ngComponentsAnalysis]: Automaton has 128 accepting balls. 128 [2022-07-26 13:59:39,387 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 13:59:39,387 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 13:59:39,388 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [8, 7, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-26 13:59:39,388 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 13:59:39,388 INFO L333 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2022-07-26 13:59:39,388 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 11825 states, but on-demand construction may add more states [2022-07-26 13:59:39,557 INFO L131 ngComponentsAnalysis]: Automaton has 128 accepting balls. 128 [2022-07-26 13:59:39,557 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 13:59:39,557 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 13:59:39,561 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [8, 7, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-26 13:59:39,561 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 13:59:39,563 INFO L733 eck$LassoCheckResult]: Stem: 108#[ULTIMATE.startENTRY]don't care [1112] ULTIMATE.startENTRY-->L723-5: Formula: (let ((.cse0 (select |v_#memory_int_212| 1))) (and (= (select |v_#valid_365| |v_ULTIMATE.start_main_~#t~0#1.base_245|) 0) (= (store |v_#length_266| |v_ULTIMATE.start_main_~#t~0#1.base_245| 64) |v_#length_265|) (= |v_ULTIMATE.start_#in~argv#1.offset_70| |v_ULTIMATE.start_main_#in~argv#1.offset_101|) (= |v_#NULL.offset_66| 0) (< 0 |v_#StackHeapBarrier_117|) (= |v_ULTIMATE.start_main_~argc#1_105| |v_ULTIMATE.start_main_#in~argc#1_99|) (= (select |v_#length_266| 2) 1) (< |v_#StackHeapBarrier_117| |v_ULTIMATE.start_main_~#t~0#1.base_245|) (= |v_ULTIMATE.start_main_~#t~0#1.offset_207| 0) (= 2 (select |v_#length_266| 1)) (= |v_ULTIMATE.start_main_~argv#1.offset_111| |v_ULTIMATE.start_main_#in~argv#1.offset_101|) (= |v_ULTIMATE.start_#in~argv#1.base_70| |v_ULTIMATE.start_main_#in~argv#1.base_101|) (= (select |v_#valid_365| 0) 0) (= |v_ULTIMATE.start_#in~argc#1_70| |v_ULTIMATE.start_main_#in~argc#1_99|) (= (select .cse0 0) 48) (= (store |v_#valid_365| |v_ULTIMATE.start_main_~#t~0#1.base_245| 1) |v_#valid_364|) (= (select |v_#valid_365| 2) 1) (= (select |v_#valid_365| 1) 1) (= (select (select |v_#memory_int_212| 2) 0) 0) (= |v_ULTIMATE.start_main_~i~0#1_359| 1) (= (select .cse0 1) 0) (= |v_#NULL.base_66| 0) (= |v_ULTIMATE.start_main_~argv#1.base_111| |v_ULTIMATE.start_main_#in~argv#1.base_101|) (= v_~x~0_650 0))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_70|, #StackHeapBarrier=|v_#StackHeapBarrier_117|, #valid=|v_#valid_365|, #memory_int=|v_#memory_int_212|, #length=|v_#length_266|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_70|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_70|} OutVars{#NULL.offset=|v_#NULL.offset_66|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_111|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_111|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_70|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_359|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_99|, #length=|v_#length_265|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_129|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_70|, ULTIMATE.start_main_#t~mem5#1=|v_ULTIMATE.start_main_#t~mem5#1_152|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_70|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_245|, ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_105|, ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_166|, ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_272|, ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_162|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_101|, #NULL.base=|v_#NULL.base_66|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_231|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_101|, #StackHeapBarrier=|v_#StackHeapBarrier_117|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_128|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_207|, #valid=|v_#valid_364|, #memory_int=|v_#memory_int_212|, ~x~0=v_~x~0_650} 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] 111#[L723-5]don't care [1078] L723-5-->L724-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_333| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_189| .cse0))) (and (<= |v_ULTIMATE.start_main_~i~0#1_333| 15) (= (+ |v_#pthreadsForks_108| 1) |v_#pthreadsForks_107|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_189| .cse0 4) (select |v_#length_245| |v_ULTIMATE.start_main_~#t~0#1.base_223|)) (= (select |v_#valid_336| |v_ULTIMATE.start_main_~#t~0#1.base_223|) 1) (<= 0 .cse1) (= (store |v_#memory_int_197| |v_ULTIMATE.start_main_~#t~0#1.base_223| (store (select |v_#memory_int_197| |v_ULTIMATE.start_main_~#t~0#1.base_223|) .cse1 |v_ULTIMATE.start_main_#t~pre2#1_221|)) |v_#memory_int_196|) (= |v_ULTIMATE.start_main_#t~pre2#1_221| |v_#pthreadsForks_108|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_333|, #pthreadsForks=|v_#pthreadsForks_108|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_189|, #valid=|v_#valid_336|, #memory_int=|v_#memory_int_197|, #length=|v_#length_245|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_223|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_333|, #pthreadsForks=|v_#pthreadsForks_107|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_189|, #valid=|v_#valid_336|, #memory_int=|v_#memory_int_196|, #length=|v_#length_245|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_223|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_221|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 115#[L724-3]don't care [1027] L724-3-->threadENTRY: Formula: (and (= |v_ULTIMATE.start_main_#t~pre2#1_202| v_threadThread1of7ForFork0_thidvar0_2) (= |v_threadThread1of7ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_310|) (= |v_threadThread1of7ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_310|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_202|} OutVars{threadThread1of7ForFork0_#res.base=|v_threadThread1of7ForFork0_#res.base_4|, threadThread1of7ForFork0_thidvar0=v_threadThread1of7ForFork0_thidvar0_2, threadThread1of7ForFork0_#in~arg.base=|v_threadThread1of7ForFork0_#in~arg.base_4|, threadThread1of7ForFork0_~arg.base=v_threadThread1of7ForFork0_~arg.base_6, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_310|, threadThread1of7ForFork0_~thread~0=v_threadThread1of7ForFork0_~thread~0_6, threadThread1of7ForFork0_~arg.offset=v_threadThread1of7ForFork0_~arg.offset_6, threadThread1of7ForFork0_#in~arg.offset=|v_threadThread1of7ForFork0_#in~arg.offset_4|, threadThread1of7ForFork0_#res.offset=|v_threadThread1of7ForFork0_#res.offset_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_202|} AuxVars[] AssignedVars[threadThread1of7ForFork0_#res.base, threadThread1of7ForFork0_thidvar0, threadThread1of7ForFork0_#in~arg.base, threadThread1of7ForFork0_~arg.base, threadThread1of7ForFork0_~thread~0, threadThread1of7ForFork0_~arg.offset, threadThread1of7ForFork0_#in~arg.offset, threadThread1of7ForFork0_#res.offset] 121#[threadENTRY, L724-4]don't care [986] 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] 125#[L724-5, threadENTRY]don't care [1101] L724-5-->L723-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_348| 1) |v_ULTIMATE.start_main_~i~0#1_347|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_348|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_158|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_347|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_122|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 129#[threadENTRY, L723-5]don't care [1078] L723-5-->L724-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_333| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_189| .cse0))) (and (<= |v_ULTIMATE.start_main_~i~0#1_333| 15) (= (+ |v_#pthreadsForks_108| 1) |v_#pthreadsForks_107|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_189| .cse0 4) (select |v_#length_245| |v_ULTIMATE.start_main_~#t~0#1.base_223|)) (= (select |v_#valid_336| |v_ULTIMATE.start_main_~#t~0#1.base_223|) 1) (<= 0 .cse1) (= (store |v_#memory_int_197| |v_ULTIMATE.start_main_~#t~0#1.base_223| (store (select |v_#memory_int_197| |v_ULTIMATE.start_main_~#t~0#1.base_223|) .cse1 |v_ULTIMATE.start_main_#t~pre2#1_221|)) |v_#memory_int_196|) (= |v_ULTIMATE.start_main_#t~pre2#1_221| |v_#pthreadsForks_108|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_333|, #pthreadsForks=|v_#pthreadsForks_108|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_189|, #valid=|v_#valid_336|, #memory_int=|v_#memory_int_197|, #length=|v_#length_245|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_223|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_333|, #pthreadsForks=|v_#pthreadsForks_107|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_189|, #valid=|v_#valid_336|, #memory_int=|v_#memory_int_196|, #length=|v_#length_245|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_223|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_221|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 135#[threadENTRY, L724-3]don't care [1028] L724-3-->threadENTRY: Formula: (and (= |v_threadThread2of7ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_312|) (= |v_threadThread2of7ForFork0_#in~arg.base_4| 0) (= |v_ULTIMATE.start_main_#t~pre2#1_204| v_threadThread2of7ForFork0_thidvar0_2)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_312|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_204|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_312|, threadThread2of7ForFork0_#in~arg.base=|v_threadThread2of7ForFork0_#in~arg.base_4|, threadThread2of7ForFork0_~arg.base=v_threadThread2of7ForFork0_~arg.base_6, threadThread2of7ForFork0_#res.base=|v_threadThread2of7ForFork0_#res.base_4|, threadThread2of7ForFork0_~arg.offset=v_threadThread2of7ForFork0_~arg.offset_6, threadThread2of7ForFork0_#in~arg.offset=|v_threadThread2of7ForFork0_#in~arg.offset_4|, threadThread2of7ForFork0_thidvar0=v_threadThread2of7ForFork0_thidvar0_2, threadThread2of7ForFork0_~thread~0=v_threadThread2of7ForFork0_~thread~0_6, threadThread2of7ForFork0_#res.offset=|v_threadThread2of7ForFork0_#res.offset_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_204|} AuxVars[] AssignedVars[threadThread2of7ForFork0_#in~arg.base, threadThread2of7ForFork0_~arg.base, threadThread2of7ForFork0_#res.base, threadThread2of7ForFork0_~arg.offset, threadThread2of7ForFork0_#in~arg.offset, threadThread2of7ForFork0_thidvar0, threadThread2of7ForFork0_~thread~0, threadThread2of7ForFork0_#res.offset] 145#[threadENTRY, threadENTRY, L724-4]don't care [986] 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] 155#[threadENTRY, threadENTRY, L724-5]don't care [1101] L724-5-->L723-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_348| 1) |v_ULTIMATE.start_main_~i~0#1_347|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_348|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_158|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_347|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_122|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 165#[threadENTRY, threadENTRY, L723-5]don't care [1078] L723-5-->L724-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_333| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_189| .cse0))) (and (<= |v_ULTIMATE.start_main_~i~0#1_333| 15) (= (+ |v_#pthreadsForks_108| 1) |v_#pthreadsForks_107|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_189| .cse0 4) (select |v_#length_245| |v_ULTIMATE.start_main_~#t~0#1.base_223|)) (= (select |v_#valid_336| |v_ULTIMATE.start_main_~#t~0#1.base_223|) 1) (<= 0 .cse1) (= (store |v_#memory_int_197| |v_ULTIMATE.start_main_~#t~0#1.base_223| (store (select |v_#memory_int_197| |v_ULTIMATE.start_main_~#t~0#1.base_223|) .cse1 |v_ULTIMATE.start_main_#t~pre2#1_221|)) |v_#memory_int_196|) (= |v_ULTIMATE.start_main_#t~pre2#1_221| |v_#pthreadsForks_108|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_333|, #pthreadsForks=|v_#pthreadsForks_108|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_189|, #valid=|v_#valid_336|, #memory_int=|v_#memory_int_197|, #length=|v_#length_245|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_223|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_333|, #pthreadsForks=|v_#pthreadsForks_107|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_189|, #valid=|v_#valid_336|, #memory_int=|v_#memory_int_196|, #length=|v_#length_245|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_223|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_221|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 177#[threadENTRY, threadENTRY, L724-3]don't care [1029] L724-3-->threadENTRY: Formula: (and (= v_threadThread3of7ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre2#1_206|) (= |v_threadThread3of7ForFork0_#in~arg.base_4| 0) (= |v_ULTIMATE.start_main_~i~0#1_314| |v_threadThread3of7ForFork0_#in~arg.offset_4|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_314|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_206|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_314|, threadThread3of7ForFork0_#res.base=|v_threadThread3of7ForFork0_#res.base_4|, threadThread3of7ForFork0_~arg.offset=v_threadThread3of7ForFork0_~arg.offset_6, threadThread3of7ForFork0_#res.offset=|v_threadThread3of7ForFork0_#res.offset_4|, threadThread3of7ForFork0_~thread~0=v_threadThread3of7ForFork0_~thread~0_6, threadThread3of7ForFork0_~arg.base=v_threadThread3of7ForFork0_~arg.base_6, threadThread3of7ForFork0_#in~arg.offset=|v_threadThread3of7ForFork0_#in~arg.offset_4|, threadThread3of7ForFork0_#in~arg.base=|v_threadThread3of7ForFork0_#in~arg.base_4|, threadThread3of7ForFork0_thidvar0=v_threadThread3of7ForFork0_thidvar0_2, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_206|} AuxVars[] AssignedVars[threadThread3of7ForFork0_#res.base, threadThread3of7ForFork0_~arg.offset, threadThread3of7ForFork0_#res.offset, threadThread3of7ForFork0_~thread~0, threadThread3of7ForFork0_~arg.base, threadThread3of7ForFork0_#in~arg.offset, threadThread3of7ForFork0_#in~arg.base, threadThread3of7ForFork0_thidvar0] 193#[threadENTRY, threadENTRY, threadENTRY, L724-4]don't care [986] 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] 211#[threadENTRY, threadENTRY, threadENTRY, L724-5]don't care [1101] L724-5-->L723-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_348| 1) |v_ULTIMATE.start_main_~i~0#1_347|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_348|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_158|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_347|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_122|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 235#[threadENTRY, L723-5, threadENTRY, threadENTRY]don't care [1078] L723-5-->L724-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_333| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_189| .cse0))) (and (<= |v_ULTIMATE.start_main_~i~0#1_333| 15) (= (+ |v_#pthreadsForks_108| 1) |v_#pthreadsForks_107|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_189| .cse0 4) (select |v_#length_245| |v_ULTIMATE.start_main_~#t~0#1.base_223|)) (= (select |v_#valid_336| |v_ULTIMATE.start_main_~#t~0#1.base_223|) 1) (<= 0 .cse1) (= (store |v_#memory_int_197| |v_ULTIMATE.start_main_~#t~0#1.base_223| (store (select |v_#memory_int_197| |v_ULTIMATE.start_main_~#t~0#1.base_223|) .cse1 |v_ULTIMATE.start_main_#t~pre2#1_221|)) |v_#memory_int_196|) (= |v_ULTIMATE.start_main_#t~pre2#1_221| |v_#pthreadsForks_108|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_333|, #pthreadsForks=|v_#pthreadsForks_108|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_189|, #valid=|v_#valid_336|, #memory_int=|v_#memory_int_197|, #length=|v_#length_245|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_223|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_333|, #pthreadsForks=|v_#pthreadsForks_107|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_189|, #valid=|v_#valid_336|, #memory_int=|v_#memory_int_196|, #length=|v_#length_245|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_223|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_221|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 261#[threadENTRY, L724-3, threadENTRY, threadENTRY]don't care [1030] L724-3-->threadENTRY: Formula: (and (= |v_threadThread4of7ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_316|) (= |v_ULTIMATE.start_main_#t~pre2#1_208| v_threadThread4of7ForFork0_thidvar0_2) (= |v_threadThread4of7ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_316|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_208|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_316|, threadThread4of7ForFork0_~arg.base=v_threadThread4of7ForFork0_~arg.base_6, threadThread4of7ForFork0_#res.base=|v_threadThread4of7ForFork0_#res.base_4|, threadThread4of7ForFork0_~arg.offset=v_threadThread4of7ForFork0_~arg.offset_6, threadThread4of7ForFork0_thidvar0=v_threadThread4of7ForFork0_thidvar0_2, threadThread4of7ForFork0_#in~arg.base=|v_threadThread4of7ForFork0_#in~arg.base_4|, threadThread4of7ForFork0_~thread~0=v_threadThread4of7ForFork0_~thread~0_6, threadThread4of7ForFork0_#in~arg.offset=|v_threadThread4of7ForFork0_#in~arg.offset_4|, threadThread4of7ForFork0_#res.offset=|v_threadThread4of7ForFork0_#res.offset_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_208|} AuxVars[] AssignedVars[threadThread4of7ForFork0_~arg.base, threadThread4of7ForFork0_#res.base, threadThread4of7ForFork0_~arg.offset, threadThread4of7ForFork0_thidvar0, threadThread4of7ForFork0_#in~arg.base, threadThread4of7ForFork0_~thread~0, threadThread4of7ForFork0_#in~arg.offset, threadThread4of7ForFork0_#res.offset] 293#[threadENTRY, threadENTRY, threadENTRY, L724-4, threadENTRY]don't care [986] 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] 335#[L724-5, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1101] L724-5-->L723-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_348| 1) |v_ULTIMATE.start_main_~i~0#1_347|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_348|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_158|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_347|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_122|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 383#[L723-5, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1078] L723-5-->L724-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_333| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_189| .cse0))) (and (<= |v_ULTIMATE.start_main_~i~0#1_333| 15) (= (+ |v_#pthreadsForks_108| 1) |v_#pthreadsForks_107|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_189| .cse0 4) (select |v_#length_245| |v_ULTIMATE.start_main_~#t~0#1.base_223|)) (= (select |v_#valid_336| |v_ULTIMATE.start_main_~#t~0#1.base_223|) 1) (<= 0 .cse1) (= (store |v_#memory_int_197| |v_ULTIMATE.start_main_~#t~0#1.base_223| (store (select |v_#memory_int_197| |v_ULTIMATE.start_main_~#t~0#1.base_223|) .cse1 |v_ULTIMATE.start_main_#t~pre2#1_221|)) |v_#memory_int_196|) (= |v_ULTIMATE.start_main_#t~pre2#1_221| |v_#pthreadsForks_108|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_333|, #pthreadsForks=|v_#pthreadsForks_108|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_189|, #valid=|v_#valid_336|, #memory_int=|v_#memory_int_197|, #length=|v_#length_245|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_223|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_333|, #pthreadsForks=|v_#pthreadsForks_107|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_189|, #valid=|v_#valid_336|, #memory_int=|v_#memory_int_196|, #length=|v_#length_245|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_223|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_221|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 437#[threadENTRY, threadENTRY, threadENTRY, L724-3, threadENTRY]don't care [1031] L724-3-->threadENTRY: Formula: (and (= |v_threadThread5of7ForFork0_#in~arg.base_4| 0) (= |v_threadThread5of7ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_318|) (= |v_ULTIMATE.start_main_#t~pre2#1_210| v_threadThread5of7ForFork0_thidvar0_2)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_318|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_210|} OutVars{threadThread5of7ForFork0_#in~arg.offset=|v_threadThread5of7ForFork0_#in~arg.offset_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_318|, threadThread5of7ForFork0_~arg.base=v_threadThread5of7ForFork0_~arg.base_6, threadThread5of7ForFork0_thidvar0=v_threadThread5of7ForFork0_thidvar0_2, threadThread5of7ForFork0_~arg.offset=v_threadThread5of7ForFork0_~arg.offset_6, threadThread5of7ForFork0_#in~arg.base=|v_threadThread5of7ForFork0_#in~arg.base_4|, threadThread5of7ForFork0_#res.base=|v_threadThread5of7ForFork0_#res.base_4|, threadThread5of7ForFork0_#res.offset=|v_threadThread5of7ForFork0_#res.offset_4|, threadThread5of7ForFork0_~thread~0=v_threadThread5of7ForFork0_~thread~0_6, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_210|} AuxVars[] AssignedVars[threadThread5of7ForFork0_#in~arg.offset, threadThread5of7ForFork0_~arg.base, threadThread5of7ForFork0_thidvar0, threadThread5of7ForFork0_~arg.offset, threadThread5of7ForFork0_#in~arg.base, threadThread5of7ForFork0_#res.base, threadThread5of7ForFork0_#res.offset, threadThread5of7ForFork0_~thread~0] 503#[L724-4, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [986] 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] 585#[L724-5, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1101] L724-5-->L723-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_348| 1) |v_ULTIMATE.start_main_~i~0#1_347|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_348|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_158|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_347|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_122|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 687#[threadENTRY, L723-5, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1078] L723-5-->L724-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_333| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_189| .cse0))) (and (<= |v_ULTIMATE.start_main_~i~0#1_333| 15) (= (+ |v_#pthreadsForks_108| 1) |v_#pthreadsForks_107|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_189| .cse0 4) (select |v_#length_245| |v_ULTIMATE.start_main_~#t~0#1.base_223|)) (= (select |v_#valid_336| |v_ULTIMATE.start_main_~#t~0#1.base_223|) 1) (<= 0 .cse1) (= (store |v_#memory_int_197| |v_ULTIMATE.start_main_~#t~0#1.base_223| (store (select |v_#memory_int_197| |v_ULTIMATE.start_main_~#t~0#1.base_223|) .cse1 |v_ULTIMATE.start_main_#t~pre2#1_221|)) |v_#memory_int_196|) (= |v_ULTIMATE.start_main_#t~pre2#1_221| |v_#pthreadsForks_108|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_333|, #pthreadsForks=|v_#pthreadsForks_108|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_189|, #valid=|v_#valid_336|, #memory_int=|v_#memory_int_197|, #length=|v_#length_245|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_223|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_333|, #pthreadsForks=|v_#pthreadsForks_107|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_189|, #valid=|v_#valid_336|, #memory_int=|v_#memory_int_196|, #length=|v_#length_245|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_223|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_221|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 803#[threadENTRY, L724-3, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1032] L724-3-->threadENTRY: Formula: (and (= |v_threadThread6of7ForFork0_#in~arg.base_4| 0) (= |v_threadThread6of7ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_320|) (= v_threadThread6of7ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre2#1_212|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_320|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_212|} OutVars{threadThread6of7ForFork0_#res.offset=|v_threadThread6of7ForFork0_#res.offset_4|, threadThread6of7ForFork0_~thread~0=v_threadThread6of7ForFork0_~thread~0_6, threadThread6of7ForFork0_~arg.offset=v_threadThread6of7ForFork0_~arg.offset_6, threadThread6of7ForFork0_thidvar0=v_threadThread6of7ForFork0_thidvar0_2, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_320|, threadThread6of7ForFork0_#res.base=|v_threadThread6of7ForFork0_#res.base_4|, threadThread6of7ForFork0_#in~arg.base=|v_threadThread6of7ForFork0_#in~arg.base_4|, threadThread6of7ForFork0_~arg.base=v_threadThread6of7ForFork0_~arg.base_6, threadThread6of7ForFork0_#in~arg.offset=|v_threadThread6of7ForFork0_#in~arg.offset_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_212|} AuxVars[] AssignedVars[threadThread6of7ForFork0_#res.offset, threadThread6of7ForFork0_~thread~0, threadThread6of7ForFork0_~arg.offset, threadThread6of7ForFork0_thidvar0, threadThread6of7ForFork0_#res.base, threadThread6of7ForFork0_#in~arg.base, threadThread6of7ForFork0_~arg.base, threadThread6of7ForFork0_#in~arg.offset] 941#[threadENTRY, threadENTRY, threadENTRY, L724-4, threadENTRY, threadENTRY, threadENTRY]don't care [986] 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] 1111#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, L724-5]don't care [1101] L724-5-->L723-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_348| 1) |v_ULTIMATE.start_main_~i~0#1_347|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_348|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_158|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_347|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_122|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 1325#[threadENTRY, threadENTRY, threadENTRY, L723-5, threadENTRY, threadENTRY, threadENTRY]don't care [1078] L723-5-->L724-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_333| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_189| .cse0))) (and (<= |v_ULTIMATE.start_main_~i~0#1_333| 15) (= (+ |v_#pthreadsForks_108| 1) |v_#pthreadsForks_107|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_189| .cse0 4) (select |v_#length_245| |v_ULTIMATE.start_main_~#t~0#1.base_223|)) (= (select |v_#valid_336| |v_ULTIMATE.start_main_~#t~0#1.base_223|) 1) (<= 0 .cse1) (= (store |v_#memory_int_197| |v_ULTIMATE.start_main_~#t~0#1.base_223| (store (select |v_#memory_int_197| |v_ULTIMATE.start_main_~#t~0#1.base_223|) .cse1 |v_ULTIMATE.start_main_#t~pre2#1_221|)) |v_#memory_int_196|) (= |v_ULTIMATE.start_main_#t~pre2#1_221| |v_#pthreadsForks_108|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_333|, #pthreadsForks=|v_#pthreadsForks_108|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_189|, #valid=|v_#valid_336|, #memory_int=|v_#memory_int_197|, #length=|v_#length_245|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_223|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_333|, #pthreadsForks=|v_#pthreadsForks_107|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_189|, #valid=|v_#valid_336|, #memory_int=|v_#memory_int_196|, #length=|v_#length_245|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_223|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_221|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 1577#[threadENTRY, threadENTRY, threadENTRY, L724-3, threadENTRY, threadENTRY, threadENTRY]don't care [1033] L724-3-->threadENTRY: Formula: (and (= |v_ULTIMATE.start_main_#t~pre2#1_214| v_threadThread7of7ForFork0_thidvar0_2) (= |v_threadThread7of7ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_322|) (= |v_threadThread7of7ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_322|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_214|} OutVars{threadThread7of7ForFork0_#res.base=|v_threadThread7of7ForFork0_#res.base_4|, threadThread7of7ForFork0_~arg.offset=v_threadThread7of7ForFork0_~arg.offset_6, threadThread7of7ForFork0_#in~arg.base=|v_threadThread7of7ForFork0_#in~arg.base_4|, threadThread7of7ForFork0_#res.offset=|v_threadThread7of7ForFork0_#res.offset_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_322|, threadThread7of7ForFork0_~arg.base=v_threadThread7of7ForFork0_~arg.base_6, threadThread7of7ForFork0_thidvar0=v_threadThread7of7ForFork0_thidvar0_2, threadThread7of7ForFork0_~thread~0=v_threadThread7of7ForFork0_~thread~0_6, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_214|, threadThread7of7ForFork0_#in~arg.offset=|v_threadThread7of7ForFork0_#in~arg.offset_4|} AuxVars[] AssignedVars[threadThread7of7ForFork0_#res.base, threadThread7of7ForFork0_~arg.offset, threadThread7of7ForFork0_#in~arg.base, threadThread7of7ForFork0_#res.offset, threadThread7of7ForFork0_~arg.base, threadThread7of7ForFork0_thidvar0, threadThread7of7ForFork0_~thread~0, threadThread7of7ForFork0_#in~arg.offset] 1869#[L724-4, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [986] 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] 2227#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, L724-5]don't care [1101] L724-5-->L723-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_348| 1) |v_ULTIMATE.start_main_~i~0#1_347|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_348|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_158|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_347|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_122|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 2673#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, L723-5, threadENTRY, threadENTRY, threadENTRY]don't care [1078] L723-5-->L724-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_333| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_189| .cse0))) (and (<= |v_ULTIMATE.start_main_~i~0#1_333| 15) (= (+ |v_#pthreadsForks_108| 1) |v_#pthreadsForks_107|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_189| .cse0 4) (select |v_#length_245| |v_ULTIMATE.start_main_~#t~0#1.base_223|)) (= (select |v_#valid_336| |v_ULTIMATE.start_main_~#t~0#1.base_223|) 1) (<= 0 .cse1) (= (store |v_#memory_int_197| |v_ULTIMATE.start_main_~#t~0#1.base_223| (store (select |v_#memory_int_197| |v_ULTIMATE.start_main_~#t~0#1.base_223|) .cse1 |v_ULTIMATE.start_main_#t~pre2#1_221|)) |v_#memory_int_196|) (= |v_ULTIMATE.start_main_#t~pre2#1_221| |v_#pthreadsForks_108|)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_333|, #pthreadsForks=|v_#pthreadsForks_108|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_189|, #valid=|v_#valid_336|, #memory_int=|v_#memory_int_197|, #length=|v_#length_245|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_223|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_333|, #pthreadsForks=|v_#pthreadsForks_107|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_189|, #valid=|v_#valid_336|, #memory_int=|v_#memory_int_196|, #length=|v_#length_245|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_223|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_221|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 3209#[threadENTRY, L724-3, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1025] L724-3-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 3835#[threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [2022-07-26 13:59:39,563 INFO L735 eck$LassoCheckResult]: Loop: 3835#[threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1026] ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 3835#[threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [2022-07-26 13:59:39,563 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 13:59:39,563 INFO L85 PathProgramCache]: Analyzing trace with hash -1500280361, now seen corresponding path program 1 times [2022-07-26 13:59:39,563 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 13:59:39,566 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1861984856] [2022-07-26 13:59:39,566 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 13:59:39,566 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 13:59:39,591 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:39,591 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 13:59:39,597 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:39,601 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 13:59:39,612 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 13:59:39,613 INFO L85 PathProgramCache]: Analyzing trace with hash 1057, now seen corresponding path program 1 times [2022-07-26 13:59:39,613 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 13:59:39,613 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1177522627] [2022-07-26 13:59:39,613 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 13:59:39,613 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 13:59:39,615 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:39,615 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 13:59:39,616 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:39,617 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 13:59:39,617 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 13:59:39,617 INFO L85 PathProgramCache]: Analyzing trace with hash 735950091, now seen corresponding path program 1 times [2022-07-26 13:59:39,617 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 13:59:39,617 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1640826153] [2022-07-26 13:59:39,617 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 13:59:39,617 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 13:59:39,630 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:39,631 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 13:59:39,640 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:39,644 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 13:59:43,467 WARN L146 chiAutomizerObserver]: 7 thread instances were not sufficient, I will increase this number and restart the analysis [2022-07-26 13:59:43,480 INFO L144 ThreadInstanceAdder]: Constructed 8 joinOtherThreadTransitions. [2022-07-26 13:59:43,482 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 113 places, 108 transitions, 336 flow [2022-07-26 13:59:43,865 INFO L129 PetriNetUnfolder]: 1052/4813 cut-off events. [2022-07-26 13:59:43,865 INFO L130 PetriNetUnfolder]: For 1136/1136 co-relation queries the response was YES. [2022-07-26 13:59:43,885 INFO L84 FinitePrefix]: Finished finitePrefix Result has 5898 conditions, 4813 events. 1052/4813 cut-off events. For 1136/1136 co-relation queries the response was YES. Maximal size of possible extension queue 107. Compared 39097 event pairs, 522 based on Foata normal form. 0/4274 useless extension candidates. Maximal degree in co-relation 2906. Up to 1024 conditions per place. [2022-07-26 13:59:43,885 INFO L82 GeneralOperation]: Start removeDead. Operand has 113 places, 108 transitions, 336 flow [2022-07-26 13:59:43,930 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 113 places, 108 transitions, 336 flow [2022-07-26 13:59:43,930 INFO L115 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-07-26 13:59:43,931 INFO L131 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 113 places, 108 transitions, 336 flow [2022-07-26 13:59:43,931 INFO L110 LiptonReduction]: Starting Lipton reduction on Petri net that has 113 places, 108 transitions, 336 flow [2022-07-26 13:59:43,931 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 113 places, 108 transitions, 336 flow [2022-07-26 13:59:44,259 INFO L129 PetriNetUnfolder]: 1052/4813 cut-off events. [2022-07-26 13:59:44,259 INFO L130 PetriNetUnfolder]: For 1136/1136 co-relation queries the response was YES. [2022-07-26 13:59:44,278 INFO L84 FinitePrefix]: Finished finitePrefix Result has 5898 conditions, 4813 events. 1052/4813 cut-off events. For 1136/1136 co-relation queries the response was YES. Maximal size of possible extension queue 104. Compared 39156 event pairs, 522 based on Foata normal form. 0/4274 useless extension candidates. Maximal degree in co-relation 2906. Up to 1024 conditions per place. [2022-07-26 13:59:44,332 INFO L116 LiptonReduction]: Number of co-enabled transitions 4800 [2022-07-26 13:59:45,743 INFO L131 LiptonReduction]: Checked pairs total: 8324 [2022-07-26 13:59:45,743 INFO L133 LiptonReduction]: Total number of compositions: 76 [2022-07-26 13:59:45,744 INFO L301 stractBuchiCegarLoop]: Interprodecural is true [2022-07-26 13:59:45,744 INFO L302 stractBuchiCegarLoop]: Hoare is false [2022-07-26 13:59:45,744 INFO L303 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2022-07-26 13:59:45,744 INFO L304 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2022-07-26 13:59:45,744 INFO L305 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2022-07-26 13:59:45,744 INFO L306 stractBuchiCegarLoop]: Difference is false [2022-07-26 13:59:45,744 INFO L307 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2022-07-26 13:59:45,744 INFO L311 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2022-07-26 13:59:45,744 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 0 states, but on-demand construction may add more states [2022-07-26 13:59:48,149 INFO L131 ngComponentsAnalysis]: Automaton has 256 accepting balls. 256 [2022-07-26 13:59:48,149 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 13:59:48,149 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 13:59:48,150 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [9, 8, 8, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-26 13:59:48,150 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 13:59:48,150 INFO L333 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2022-07-26 13:59:48,150 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 34591 states, but on-demand construction may add more states [2022-07-26 13:59:48,709 INFO L131 ngComponentsAnalysis]: Automaton has 256 accepting balls. 256 [2022-07-26 13:59:48,709 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 13:59:48,709 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 13:59:48,709 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [9, 8, 8, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-26 13:59:48,709 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 13:59:48,710 INFO L733 eck$LassoCheckResult]: Stem: 116#[ULTIMATE.startENTRY]don't care [1303] ULTIMATE.startENTRY-->L723-5: Formula: (let ((.cse0 (select |v_#memory_int_247| 1))) (and (< |v_#StackHeapBarrier_130| |v_ULTIMATE.start_main_~#t~0#1.base_282|) (= |v_#NULL.base_75| 0) (= |v_ULTIMATE.start_#in~argv#1.offset_83| |v_ULTIMATE.start_main_#in~argv#1.offset_118|) (= (select (select |v_#memory_int_247| 2) 0) 0) (= |v_ULTIMATE.start_main_~i~0#1_447| 1) (= |v_ULTIMATE.start_#in~argv#1.base_83| |v_ULTIMATE.start_main_#in~argv#1.base_118|) (= (store |v_#length_302| |v_ULTIMATE.start_main_~#t~0#1.base_282| 64) |v_#length_301|) (= |v_ULTIMATE.start_main_#in~argc#1_112| |v_ULTIMATE.start_#in~argc#1_83|) (= (select |v_#valid_417| 1) 1) (= v_~x~0_834 0) (= (select .cse0 0) 48) (= (select |v_#valid_417| 0) 0) (= 2 (select |v_#length_302| 1)) (< 0 |v_#StackHeapBarrier_130|) (= (select |v_#valid_417| |v_ULTIMATE.start_main_~#t~0#1.base_282|) 0) (= (select .cse0 1) 0) (= |v_ULTIMATE.start_main_~#t~0#1.offset_238| 0) (= |v_ULTIMATE.start_main_~argv#1.base_130| |v_ULTIMATE.start_main_#in~argv#1.base_118|) (= |v_ULTIMATE.start_main_~argv#1.offset_130| |v_ULTIMATE.start_main_#in~argv#1.offset_118|) (= |v_ULTIMATE.start_main_#in~argc#1_112| |v_ULTIMATE.start_main_~argc#1_120|) (= (select |v_#valid_417| 2) 1) (= (select |v_#length_302| 2) 1) (= |v_#NULL.offset_75| 0) (= |v_#valid_416| (store |v_#valid_417| |v_ULTIMATE.start_main_~#t~0#1.base_282| 1)))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_83|, #StackHeapBarrier=|v_#StackHeapBarrier_130|, #valid=|v_#valid_417|, #memory_int=|v_#memory_int_247|, #length=|v_#length_302|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_83|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_83|} OutVars{#NULL.offset=|v_#NULL.offset_75|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_130|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_130|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_83|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_447|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_112|, #length=|v_#length_301|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_150|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_83|, ULTIMATE.start_main_#t~mem5#1=|v_ULTIMATE.start_main_#t~mem5#1_183|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_83|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_282|, ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_120|, ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_196|, ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_337|, ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_185|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_118|, #NULL.base=|v_#NULL.base_75|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_281|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_118|, #StackHeapBarrier=|v_#StackHeapBarrier_130|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_152|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_238|, #valid=|v_#valid_416|, #memory_int=|v_#memory_int_247|, ~x~0=v_~x~0_834} 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] 119#[L723-5]don't care [1288] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_411| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_228| .cse1))) (and (= (store |v_#memory_int_240| |v_ULTIMATE.start_main_~#t~0#1.base_270| (store (select |v_#memory_int_240| |v_ULTIMATE.start_main_~#t~0#1.base_270|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_275|)) |v_#memory_int_239|) (<= 0 .cse0) (= (select |v_#valid_402| |v_ULTIMATE.start_main_~#t~0#1.base_270|) 1) (= (+ |v_#pthreadsForks_129| 1) |v_#pthreadsForks_128|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_228| 4 .cse1) (select |v_#length_291| |v_ULTIMATE.start_main_~#t~0#1.base_270|)) (= |v_ULTIMATE.start_main_#t~pre2#1_275| |v_#pthreadsForks_129|) (<= |v_ULTIMATE.start_main_~i~0#1_411| 15)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_411|, #pthreadsForks=|v_#pthreadsForks_129|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_228|, #valid=|v_#valid_402|, #memory_int=|v_#memory_int_240|, #length=|v_#length_291|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_270|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_411|, #pthreadsForks=|v_#pthreadsForks_128|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_228|, #valid=|v_#valid_402|, #memory_int=|v_#memory_int_239|, #length=|v_#length_291|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_270|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_275|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 123#[L724-3]don't care [1212] L724-3-->threadENTRY: Formula: (and (= |v_threadThread1of8ForFork0_#in~arg.base_4| 0) (= |v_threadThread1of8ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_370|) (= |v_ULTIMATE.start_main_#t~pre2#1_250| v_threadThread1of8ForFork0_thidvar0_2)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_370|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_250|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_370|, threadThread1of8ForFork0_~arg.base=v_threadThread1of8ForFork0_~arg.base_6, threadThread1of8ForFork0_#in~arg.base=|v_threadThread1of8ForFork0_#in~arg.base_4|, threadThread1of8ForFork0_#in~arg.offset=|v_threadThread1of8ForFork0_#in~arg.offset_4|, threadThread1of8ForFork0_#res.offset=|v_threadThread1of8ForFork0_#res.offset_4|, threadThread1of8ForFork0_#res.base=|v_threadThread1of8ForFork0_#res.base_4|, threadThread1of8ForFork0_~arg.offset=v_threadThread1of8ForFork0_~arg.offset_6, threadThread1of8ForFork0_~thread~0=v_threadThread1of8ForFork0_~thread~0_6, threadThread1of8ForFork0_thidvar0=v_threadThread1of8ForFork0_thidvar0_2, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_250|} AuxVars[] AssignedVars[threadThread1of8ForFork0_~arg.base, threadThread1of8ForFork0_#in~arg.base, threadThread1of8ForFork0_#in~arg.offset, threadThread1of8ForFork0_#res.offset, threadThread1of8ForFork0_#res.base, threadThread1of8ForFork0_~arg.offset, threadThread1of8ForFork0_~thread~0, threadThread1of8ForFork0_thidvar0] 129#[L724-4, threadENTRY]don't care [1166] 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] 133#[threadENTRY, L724-5]don't care [1280] L724-5-->L723-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_400| 1) |v_ULTIMATE.start_main_~i~0#1_399|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_400|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_186|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_399|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_144|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 137#[L723-5, threadENTRY]don't care [1288] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_411| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_228| .cse1))) (and (= (store |v_#memory_int_240| |v_ULTIMATE.start_main_~#t~0#1.base_270| (store (select |v_#memory_int_240| |v_ULTIMATE.start_main_~#t~0#1.base_270|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_275|)) |v_#memory_int_239|) (<= 0 .cse0) (= (select |v_#valid_402| |v_ULTIMATE.start_main_~#t~0#1.base_270|) 1) (= (+ |v_#pthreadsForks_129| 1) |v_#pthreadsForks_128|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_228| 4 .cse1) (select |v_#length_291| |v_ULTIMATE.start_main_~#t~0#1.base_270|)) (= |v_ULTIMATE.start_main_#t~pre2#1_275| |v_#pthreadsForks_129|) (<= |v_ULTIMATE.start_main_~i~0#1_411| 15)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_411|, #pthreadsForks=|v_#pthreadsForks_129|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_228|, #valid=|v_#valid_402|, #memory_int=|v_#memory_int_240|, #length=|v_#length_291|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_270|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_411|, #pthreadsForks=|v_#pthreadsForks_128|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_228|, #valid=|v_#valid_402|, #memory_int=|v_#memory_int_239|, #length=|v_#length_291|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_270|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_275|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 143#[L724-3, threadENTRY]don't care [1213] L724-3-->threadENTRY: Formula: (and (= |v_threadThread2of8ForFork0_#in~arg.base_4| 0) (= |v_threadThread2of8ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_372|) (= |v_ULTIMATE.start_main_#t~pre2#1_252| v_threadThread2of8ForFork0_thidvar0_2)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_372|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_252|} OutVars{threadThread2of8ForFork0_thidvar0=v_threadThread2of8ForFork0_thidvar0_2, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_372|, threadThread2of8ForFork0_#in~arg.base=|v_threadThread2of8ForFork0_#in~arg.base_4|, threadThread2of8ForFork0_~arg.base=v_threadThread2of8ForFork0_~arg.base_6, threadThread2of8ForFork0_#res.offset=|v_threadThread2of8ForFork0_#res.offset_4|, threadThread2of8ForFork0_~arg.offset=v_threadThread2of8ForFork0_~arg.offset_6, threadThread2of8ForFork0_~thread~0=v_threadThread2of8ForFork0_~thread~0_6, threadThread2of8ForFork0_#in~arg.offset=|v_threadThread2of8ForFork0_#in~arg.offset_4|, threadThread2of8ForFork0_#res.base=|v_threadThread2of8ForFork0_#res.base_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_252|} AuxVars[] AssignedVars[threadThread2of8ForFork0_thidvar0, threadThread2of8ForFork0_#in~arg.base, threadThread2of8ForFork0_~arg.base, threadThread2of8ForFork0_#res.offset, threadThread2of8ForFork0_~arg.offset, threadThread2of8ForFork0_~thread~0, threadThread2of8ForFork0_#in~arg.offset, threadThread2of8ForFork0_#res.base] 153#[L724-4, threadENTRY, threadENTRY]don't care [1166] 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] 161#[threadENTRY, L724-5, threadENTRY]don't care [1280] L724-5-->L723-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_400| 1) |v_ULTIMATE.start_main_~i~0#1_399|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_400|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_186|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_399|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_144|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 171#[L723-5, threadENTRY, threadENTRY]don't care [1288] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_411| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_228| .cse1))) (and (= (store |v_#memory_int_240| |v_ULTIMATE.start_main_~#t~0#1.base_270| (store (select |v_#memory_int_240| |v_ULTIMATE.start_main_~#t~0#1.base_270|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_275|)) |v_#memory_int_239|) (<= 0 .cse0) (= (select |v_#valid_402| |v_ULTIMATE.start_main_~#t~0#1.base_270|) 1) (= (+ |v_#pthreadsForks_129| 1) |v_#pthreadsForks_128|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_228| 4 .cse1) (select |v_#length_291| |v_ULTIMATE.start_main_~#t~0#1.base_270|)) (= |v_ULTIMATE.start_main_#t~pre2#1_275| |v_#pthreadsForks_129|) (<= |v_ULTIMATE.start_main_~i~0#1_411| 15)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_411|, #pthreadsForks=|v_#pthreadsForks_129|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_228|, #valid=|v_#valid_402|, #memory_int=|v_#memory_int_240|, #length=|v_#length_291|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_270|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_411|, #pthreadsForks=|v_#pthreadsForks_128|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_228|, #valid=|v_#valid_402|, #memory_int=|v_#memory_int_239|, #length=|v_#length_291|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_270|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_275|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 183#[threadENTRY, threadENTRY, L724-3]don't care [1214] L724-3-->threadENTRY: Formula: (and (= |v_ULTIMATE.start_main_~i~0#1_374| |v_threadThread3of8ForFork0_#in~arg.offset_4|) (= v_threadThread3of8ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre2#1_254|) (= |v_threadThread3of8ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_374|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_254|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_374|, threadThread3of8ForFork0_#in~arg.offset=|v_threadThread3of8ForFork0_#in~arg.offset_4|, threadThread3of8ForFork0_#res.offset=|v_threadThread3of8ForFork0_#res.offset_4|, threadThread3of8ForFork0_#in~arg.base=|v_threadThread3of8ForFork0_#in~arg.base_4|, threadThread3of8ForFork0_~arg.offset=v_threadThread3of8ForFork0_~arg.offset_6, threadThread3of8ForFork0_thidvar0=v_threadThread3of8ForFork0_thidvar0_2, threadThread3of8ForFork0_~arg.base=v_threadThread3of8ForFork0_~arg.base_6, threadThread3of8ForFork0_~thread~0=v_threadThread3of8ForFork0_~thread~0_6, threadThread3of8ForFork0_#res.base=|v_threadThread3of8ForFork0_#res.base_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_254|} AuxVars[] AssignedVars[threadThread3of8ForFork0_#in~arg.offset, threadThread3of8ForFork0_#res.offset, threadThread3of8ForFork0_#in~arg.base, threadThread3of8ForFork0_~arg.offset, threadThread3of8ForFork0_thidvar0, threadThread3of8ForFork0_~arg.base, threadThread3of8ForFork0_~thread~0, threadThread3of8ForFork0_#res.base] 199#[threadENTRY, threadENTRY, L724-4, threadENTRY]don't care [1166] 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] 219#[threadENTRY, threadENTRY, L724-5, threadENTRY]don't care [1280] L724-5-->L723-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_400| 1) |v_ULTIMATE.start_main_~i~0#1_399|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_400|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_186|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_399|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_144|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 241#[threadENTRY, threadENTRY, L723-5, threadENTRY]don't care [1288] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_411| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_228| .cse1))) (and (= (store |v_#memory_int_240| |v_ULTIMATE.start_main_~#t~0#1.base_270| (store (select |v_#memory_int_240| |v_ULTIMATE.start_main_~#t~0#1.base_270|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_275|)) |v_#memory_int_239|) (<= 0 .cse0) (= (select |v_#valid_402| |v_ULTIMATE.start_main_~#t~0#1.base_270|) 1) (= (+ |v_#pthreadsForks_129| 1) |v_#pthreadsForks_128|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_228| 4 .cse1) (select |v_#length_291| |v_ULTIMATE.start_main_~#t~0#1.base_270|)) (= |v_ULTIMATE.start_main_#t~pre2#1_275| |v_#pthreadsForks_129|) (<= |v_ULTIMATE.start_main_~i~0#1_411| 15)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_411|, #pthreadsForks=|v_#pthreadsForks_129|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_228|, #valid=|v_#valid_402|, #memory_int=|v_#memory_int_240|, #length=|v_#length_291|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_270|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_411|, #pthreadsForks=|v_#pthreadsForks_128|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_228|, #valid=|v_#valid_402|, #memory_int=|v_#memory_int_239|, #length=|v_#length_291|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_270|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_275|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 267#[threadENTRY, threadENTRY, L724-3, threadENTRY]don't care [1215] L724-3-->threadENTRY: Formula: (and (= |v_ULTIMATE.start_main_#t~pre2#1_256| v_threadThread4of8ForFork0_thidvar0_2) (= |v_threadThread4of8ForFork0_#in~arg.base_4| 0) (= |v_threadThread4of8ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_376|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_376|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_256|} OutVars{threadThread4of8ForFork0_#in~arg.offset=|v_threadThread4of8ForFork0_#in~arg.offset_4|, threadThread4of8ForFork0_~thread~0=v_threadThread4of8ForFork0_~thread~0_6, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_376|, threadThread4of8ForFork0_~arg.base=v_threadThread4of8ForFork0_~arg.base_6, threadThread4of8ForFork0_#res.offset=|v_threadThread4of8ForFork0_#res.offset_4|, threadThread4of8ForFork0_#in~arg.base=|v_threadThread4of8ForFork0_#in~arg.base_4|, threadThread4of8ForFork0_~arg.offset=v_threadThread4of8ForFork0_~arg.offset_6, threadThread4of8ForFork0_thidvar0=v_threadThread4of8ForFork0_thidvar0_2, threadThread4of8ForFork0_#res.base=|v_threadThread4of8ForFork0_#res.base_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_256|} AuxVars[] AssignedVars[threadThread4of8ForFork0_#in~arg.offset, threadThread4of8ForFork0_~thread~0, threadThread4of8ForFork0_~arg.base, threadThread4of8ForFork0_#res.offset, threadThread4of8ForFork0_#in~arg.base, threadThread4of8ForFork0_~arg.offset, threadThread4of8ForFork0_thidvar0, threadThread4of8ForFork0_#res.base] 301#[threadENTRY, threadENTRY, L724-4, threadENTRY, threadENTRY]don't care [1166] 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] 343#[L724-5, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1280] L724-5-->L723-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_400| 1) |v_ULTIMATE.start_main_~i~0#1_399|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_400|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_186|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_399|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_144|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 391#[L723-5, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1288] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_411| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_228| .cse1))) (and (= (store |v_#memory_int_240| |v_ULTIMATE.start_main_~#t~0#1.base_270| (store (select |v_#memory_int_240| |v_ULTIMATE.start_main_~#t~0#1.base_270|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_275|)) |v_#memory_int_239|) (<= 0 .cse0) (= (select |v_#valid_402| |v_ULTIMATE.start_main_~#t~0#1.base_270|) 1) (= (+ |v_#pthreadsForks_129| 1) |v_#pthreadsForks_128|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_228| 4 .cse1) (select |v_#length_291| |v_ULTIMATE.start_main_~#t~0#1.base_270|)) (= |v_ULTIMATE.start_main_#t~pre2#1_275| |v_#pthreadsForks_129|) (<= |v_ULTIMATE.start_main_~i~0#1_411| 15)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_411|, #pthreadsForks=|v_#pthreadsForks_129|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_228|, #valid=|v_#valid_402|, #memory_int=|v_#memory_int_240|, #length=|v_#length_291|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_270|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_411|, #pthreadsForks=|v_#pthreadsForks_128|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_228|, #valid=|v_#valid_402|, #memory_int=|v_#memory_int_239|, #length=|v_#length_291|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_270|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_275|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 445#[threadENTRY, threadENTRY, L724-3, threadENTRY, threadENTRY]don't care [1216] L724-3-->threadENTRY: Formula: (and (= |v_threadThread5of8ForFork0_#in~arg.base_4| 0) (= |v_threadThread5of8ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_378|) (= |v_ULTIMATE.start_main_#t~pre2#1_258| v_threadThread5of8ForFork0_thidvar0_2)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_378|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_258|} OutVars{threadThread5of8ForFork0_#res.offset=|v_threadThread5of8ForFork0_#res.offset_4|, threadThread5of8ForFork0_~arg.base=v_threadThread5of8ForFork0_~arg.base_6, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_378|, threadThread5of8ForFork0_~thread~0=v_threadThread5of8ForFork0_~thread~0_6, threadThread5of8ForFork0_#in~arg.offset=|v_threadThread5of8ForFork0_#in~arg.offset_4|, threadThread5of8ForFork0_#in~arg.base=|v_threadThread5of8ForFork0_#in~arg.base_4|, threadThread5of8ForFork0_thidvar0=v_threadThread5of8ForFork0_thidvar0_2, threadThread5of8ForFork0_#res.base=|v_threadThread5of8ForFork0_#res.base_4|, threadThread5of8ForFork0_~arg.offset=v_threadThread5of8ForFork0_~arg.offset_6, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_258|} AuxVars[] AssignedVars[threadThread5of8ForFork0_#res.offset, threadThread5of8ForFork0_~arg.base, threadThread5of8ForFork0_~thread~0, threadThread5of8ForFork0_#in~arg.offset, threadThread5of8ForFork0_#in~arg.base, threadThread5of8ForFork0_thidvar0, threadThread5of8ForFork0_#res.base, threadThread5of8ForFork0_~arg.offset] 511#[threadENTRY, threadENTRY, threadENTRY, L724-4, threadENTRY, threadENTRY]don't care [1166] 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] 595#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, L724-5]don't care [1280] L724-5-->L723-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_400| 1) |v_ULTIMATE.start_main_~i~0#1_399|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_400|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_186|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_399|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_144|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 697#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, L723-5]don't care [1288] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_411| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_228| .cse1))) (and (= (store |v_#memory_int_240| |v_ULTIMATE.start_main_~#t~0#1.base_270| (store (select |v_#memory_int_240| |v_ULTIMATE.start_main_~#t~0#1.base_270|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_275|)) |v_#memory_int_239|) (<= 0 .cse0) (= (select |v_#valid_402| |v_ULTIMATE.start_main_~#t~0#1.base_270|) 1) (= (+ |v_#pthreadsForks_129| 1) |v_#pthreadsForks_128|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_228| 4 .cse1) (select |v_#length_291| |v_ULTIMATE.start_main_~#t~0#1.base_270|)) (= |v_ULTIMATE.start_main_#t~pre2#1_275| |v_#pthreadsForks_129|) (<= |v_ULTIMATE.start_main_~i~0#1_411| 15)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_411|, #pthreadsForks=|v_#pthreadsForks_129|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_228|, #valid=|v_#valid_402|, #memory_int=|v_#memory_int_240|, #length=|v_#length_291|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_270|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_411|, #pthreadsForks=|v_#pthreadsForks_128|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_228|, #valid=|v_#valid_402|, #memory_int=|v_#memory_int_239|, #length=|v_#length_291|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_270|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_275|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 813#[threadENTRY, threadENTRY, threadENTRY, L724-3, threadENTRY, threadENTRY]don't care [1217] L724-3-->threadENTRY: Formula: (and (= |v_ULTIMATE.start_main_#t~pre2#1_260| v_threadThread6of8ForFork0_thidvar0_2) (= |v_threadThread6of8ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_380|) (= |v_threadThread6of8ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_380|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_260|} OutVars{threadThread6of8ForFork0_#in~arg.base=|v_threadThread6of8ForFork0_#in~arg.base_4|, threadThread6of8ForFork0_#res.base=|v_threadThread6of8ForFork0_#res.base_4|, threadThread6of8ForFork0_~arg.base=v_threadThread6of8ForFork0_~arg.base_6, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_380|, threadThread6of8ForFork0_~thread~0=v_threadThread6of8ForFork0_~thread~0_6, threadThread6of8ForFork0_thidvar0=v_threadThread6of8ForFork0_thidvar0_2, threadThread6of8ForFork0_#res.offset=|v_threadThread6of8ForFork0_#res.offset_4|, threadThread6of8ForFork0_#in~arg.offset=|v_threadThread6of8ForFork0_#in~arg.offset_4|, threadThread6of8ForFork0_~arg.offset=v_threadThread6of8ForFork0_~arg.offset_6, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_260|} AuxVars[] AssignedVars[threadThread6of8ForFork0_#in~arg.base, threadThread6of8ForFork0_#res.base, threadThread6of8ForFork0_~arg.base, threadThread6of8ForFork0_~thread~0, threadThread6of8ForFork0_thidvar0, threadThread6of8ForFork0_#res.offset, threadThread6of8ForFork0_#in~arg.offset, threadThread6of8ForFork0_~arg.offset] 951#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, L724-4, threadENTRY, threadENTRY]don't care [1166] 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] 1123#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, L724-5, threadENTRY, threadENTRY]don't care [1280] L724-5-->L723-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_400| 1) |v_ULTIMATE.start_main_~i~0#1_399|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_400|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_186|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_399|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_144|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 1337#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, L723-5, threadENTRY, threadENTRY]don't care [1288] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_411| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_228| .cse1))) (and (= (store |v_#memory_int_240| |v_ULTIMATE.start_main_~#t~0#1.base_270| (store (select |v_#memory_int_240| |v_ULTIMATE.start_main_~#t~0#1.base_270|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_275|)) |v_#memory_int_239|) (<= 0 .cse0) (= (select |v_#valid_402| |v_ULTIMATE.start_main_~#t~0#1.base_270|) 1) (= (+ |v_#pthreadsForks_129| 1) |v_#pthreadsForks_128|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_228| 4 .cse1) (select |v_#length_291| |v_ULTIMATE.start_main_~#t~0#1.base_270|)) (= |v_ULTIMATE.start_main_#t~pre2#1_275| |v_#pthreadsForks_129|) (<= |v_ULTIMATE.start_main_~i~0#1_411| 15)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_411|, #pthreadsForks=|v_#pthreadsForks_129|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_228|, #valid=|v_#valid_402|, #memory_int=|v_#memory_int_240|, #length=|v_#length_291|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_270|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_411|, #pthreadsForks=|v_#pthreadsForks_128|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_228|, #valid=|v_#valid_402|, #memory_int=|v_#memory_int_239|, #length=|v_#length_291|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_270|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_275|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 1587#[threadENTRY, threadENTRY, L724-3, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1218] L724-3-->threadENTRY: Formula: (and (= |v_threadThread7of8ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_382|) (= |v_threadThread7of8ForFork0_#in~arg.base_4| 0) (= v_threadThread7of8ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre2#1_262|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_382|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_262|} OutVars{threadThread7of8ForFork0_thidvar0=v_threadThread7of8ForFork0_thidvar0_2, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_382|, threadThread7of8ForFork0_#in~arg.base=|v_threadThread7of8ForFork0_#in~arg.base_4|, threadThread7of8ForFork0_#res.offset=|v_threadThread7of8ForFork0_#res.offset_4|, threadThread7of8ForFork0_#in~arg.offset=|v_threadThread7of8ForFork0_#in~arg.offset_4|, threadThread7of8ForFork0_~thread~0=v_threadThread7of8ForFork0_~thread~0_6, threadThread7of8ForFork0_~arg.offset=v_threadThread7of8ForFork0_~arg.offset_6, threadThread7of8ForFork0_#res.base=|v_threadThread7of8ForFork0_#res.base_4|, threadThread7of8ForFork0_~arg.base=v_threadThread7of8ForFork0_~arg.base_6, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_262|} AuxVars[] AssignedVars[threadThread7of8ForFork0_thidvar0, threadThread7of8ForFork0_#in~arg.base, threadThread7of8ForFork0_#res.offset, threadThread7of8ForFork0_#in~arg.offset, threadThread7of8ForFork0_~thread~0, threadThread7of8ForFork0_~arg.offset, threadThread7of8ForFork0_#res.base, threadThread7of8ForFork0_~arg.base] 1879#[L724-4, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1166] 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] 2237#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, L724-5]don't care [1280] L724-5-->L723-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_400| 1) |v_ULTIMATE.start_main_~i~0#1_399|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_400|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_186|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_399|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_144|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 2683#[L723-5, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1288] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_411| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_228| .cse1))) (and (= (store |v_#memory_int_240| |v_ULTIMATE.start_main_~#t~0#1.base_270| (store (select |v_#memory_int_240| |v_ULTIMATE.start_main_~#t~0#1.base_270|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_275|)) |v_#memory_int_239|) (<= 0 .cse0) (= (select |v_#valid_402| |v_ULTIMATE.start_main_~#t~0#1.base_270|) 1) (= (+ |v_#pthreadsForks_129| 1) |v_#pthreadsForks_128|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_228| 4 .cse1) (select |v_#length_291| |v_ULTIMATE.start_main_~#t~0#1.base_270|)) (= |v_ULTIMATE.start_main_#t~pre2#1_275| |v_#pthreadsForks_129|) (<= |v_ULTIMATE.start_main_~i~0#1_411| 15)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_411|, #pthreadsForks=|v_#pthreadsForks_129|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_228|, #valid=|v_#valid_402|, #memory_int=|v_#memory_int_240|, #length=|v_#length_291|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_270|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_411|, #pthreadsForks=|v_#pthreadsForks_128|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_228|, #valid=|v_#valid_402|, #memory_int=|v_#memory_int_239|, #length=|v_#length_291|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_270|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_275|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 3219#[L724-3, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1219] L724-3-->threadENTRY: Formula: (and (= |v_ULTIMATE.start_main_#t~pre2#1_264| v_threadThread8of8ForFork0_thidvar0_2) (= |v_threadThread8of8ForFork0_#in~arg.base_4| 0) (= |v_threadThread8of8ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_384|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_384|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_264|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_384|, threadThread8of8ForFork0_#in~arg.offset=|v_threadThread8of8ForFork0_#in~arg.offset_4|, threadThread8of8ForFork0_#res.offset=|v_threadThread8of8ForFork0_#res.offset_4|, threadThread8of8ForFork0_~arg.base=v_threadThread8of8ForFork0_~arg.base_6, threadThread8of8ForFork0_~thread~0=v_threadThread8of8ForFork0_~thread~0_6, threadThread8of8ForFork0_thidvar0=v_threadThread8of8ForFork0_thidvar0_2, threadThread8of8ForFork0_#res.base=|v_threadThread8of8ForFork0_#res.base_4|, threadThread8of8ForFork0_#in~arg.base=|v_threadThread8of8ForFork0_#in~arg.base_4|, threadThread8of8ForFork0_~arg.offset=v_threadThread8of8ForFork0_~arg.offset_6, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_264|} AuxVars[] AssignedVars[threadThread8of8ForFork0_#in~arg.offset, threadThread8of8ForFork0_#res.offset, threadThread8of8ForFork0_~arg.base, threadThread8of8ForFork0_~thread~0, threadThread8of8ForFork0_thidvar0, threadThread8of8ForFork0_#res.base, threadThread8of8ForFork0_#in~arg.base, threadThread8of8ForFork0_~arg.offset] 3845#[threadENTRY, L724-4, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1166] 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] 4599#[threadENTRY, L724-5, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1280] L724-5-->L723-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_400| 1) |v_ULTIMATE.start_main_~i~0#1_399|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_400|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_186|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_399|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_144|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 5533#[threadENTRY, L723-5, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1288] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_411| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_228| .cse1))) (and (= (store |v_#memory_int_240| |v_ULTIMATE.start_main_~#t~0#1.base_270| (store (select |v_#memory_int_240| |v_ULTIMATE.start_main_~#t~0#1.base_270|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_275|)) |v_#memory_int_239|) (<= 0 .cse0) (= (select |v_#valid_402| |v_ULTIMATE.start_main_~#t~0#1.base_270|) 1) (= (+ |v_#pthreadsForks_129| 1) |v_#pthreadsForks_128|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_228| 4 .cse1) (select |v_#length_291| |v_ULTIMATE.start_main_~#t~0#1.base_270|)) (= |v_ULTIMATE.start_main_#t~pre2#1_275| |v_#pthreadsForks_129|) (<= |v_ULTIMATE.start_main_~i~0#1_411| 15)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_411|, #pthreadsForks=|v_#pthreadsForks_129|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_228|, #valid=|v_#valid_402|, #memory_int=|v_#memory_int_240|, #length=|v_#length_291|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_270|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_411|, #pthreadsForks=|v_#pthreadsForks_128|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_228|, #valid=|v_#valid_402|, #memory_int=|v_#memory_int_239|, #length=|v_#length_291|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_270|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_275|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 6675#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, L724-3]don't care [1210] L724-3-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 8025#[threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [2022-07-26 13:59:48,710 INFO L735 eck$LassoCheckResult]: Loop: 8025#[threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1211] ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 8025#[threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [2022-07-26 13:59:48,710 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 13:59:48,711 INFO L85 PathProgramCache]: Analyzing trace with hash 537451956, now seen corresponding path program 1 times [2022-07-26 13:59:48,711 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 13:59:48,711 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [506058260] [2022-07-26 13:59:48,711 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 13:59:48,711 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 13:59:48,733 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:48,733 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 13:59:48,756 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:48,761 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 13:59:48,761 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 13:59:48,761 INFO L85 PathProgramCache]: Analyzing trace with hash 1242, now seen corresponding path program 1 times [2022-07-26 13:59:48,761 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 13:59:48,761 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1235656776] [2022-07-26 13:59:48,761 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 13:59:48,761 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 13:59:48,764 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:48,764 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 13:59:48,764 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:48,765 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 13:59:48,766 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 13:59:48,766 INFO L85 PathProgramCache]: Analyzing trace with hash -518857337, now seen corresponding path program 1 times [2022-07-26 13:59:48,766 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 13:59:48,766 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1624566651] [2022-07-26 13:59:48,766 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 13:59:48,766 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 13:59:48,777 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:48,777 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 13:59:48,784 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 13:59:48,789 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 13:59:54,244 WARN L146 chiAutomizerObserver]: 8 thread instances were not sufficient, I will increase this number and restart the analysis [2022-07-26 13:59:54,258 INFO L144 ThreadInstanceAdder]: Constructed 9 joinOtherThreadTransitions. [2022-07-26 13:59:54,261 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 121 places, 115 transitions, 374 flow [2022-07-26 13:59:55,239 INFO L129 PetriNetUnfolder]: 2335/9699 cut-off events. [2022-07-26 13:59:55,239 INFO L130 PetriNetUnfolder]: For 2460/2460 co-relation queries the response was YES. [2022-07-26 13:59:55,268 INFO L84 FinitePrefix]: Finished finitePrefix Result has 12076 conditions, 9699 events. 2335/9699 cut-off events. For 2460/2460 co-relation queries the response was YES. Maximal size of possible extension queue 208. Compared 90894 event pairs, 1291 based on Foata normal form. 0/8645 useless extension candidates. Maximal degree in co-relation 5883. Up to 2304 conditions per place. [2022-07-26 13:59:55,268 INFO L82 GeneralOperation]: Start removeDead. Operand has 121 places, 115 transitions, 374 flow [2022-07-26 13:59:55,341 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 121 places, 115 transitions, 374 flow [2022-07-26 13:59:55,341 INFO L115 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-07-26 13:59:55,341 INFO L131 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 121 places, 115 transitions, 374 flow [2022-07-26 13:59:55,341 INFO L110 LiptonReduction]: Starting Lipton reduction on Petri net that has 121 places, 115 transitions, 374 flow [2022-07-26 13:59:55,341 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 121 places, 115 transitions, 374 flow [2022-07-26 13:59:56,179 INFO L129 PetriNetUnfolder]: 2335/9699 cut-off events. [2022-07-26 13:59:56,180 INFO L130 PetriNetUnfolder]: For 2460/2460 co-relation queries the response was YES. [2022-07-26 13:59:56,213 INFO L84 FinitePrefix]: Finished finitePrefix Result has 12076 conditions, 9699 events. 2335/9699 cut-off events. For 2460/2460 co-relation queries the response was YES. Maximal size of possible extension queue 211. Compared 89979 event pairs, 1291 based on Foata normal form. 0/8645 useless extension candidates. Maximal degree in co-relation 5883. Up to 2304 conditions per place. [2022-07-26 13:59:56,341 INFO L116 LiptonReduction]: Number of co-enabled transitions 5760 [2022-07-26 13:59:57,930 INFO L131 LiptonReduction]: Checked pairs total: 9661 [2022-07-26 13:59:57,930 INFO L133 LiptonReduction]: Total number of compositions: 80 [2022-07-26 13:59:57,931 INFO L301 stractBuchiCegarLoop]: Interprodecural is true [2022-07-26 13:59:57,931 INFO L302 stractBuchiCegarLoop]: Hoare is false [2022-07-26 13:59:57,931 INFO L303 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2022-07-26 13:59:57,931 INFO L304 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2022-07-26 13:59:57,931 INFO L305 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2022-07-26 13:59:57,931 INFO L306 stractBuchiCegarLoop]: Difference is false [2022-07-26 13:59:57,931 INFO L307 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2022-07-26 13:59:57,931 INFO L311 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2022-07-26 13:59:57,931 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 0 states, but on-demand construction may add more states [2022-07-26 14:00:07,692 INFO L131 ngComponentsAnalysis]: Automaton has 512 accepting balls. 512 [2022-07-26 14:00:07,692 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 14:00:07,692 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 14:00:07,693 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [10, 9, 9, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-26 14:00:07,693 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 14:00:07,693 INFO L333 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2022-07-26 14:00:07,693 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 101993 states, but on-demand construction may add more states [2022-07-26 14:00:09,834 INFO L131 ngComponentsAnalysis]: Automaton has 512 accepting balls. 512 [2022-07-26 14:00:09,834 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 14:00:09,834 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 14:00:09,839 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [10, 9, 9, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-26 14:00:09,839 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 14:00:09,840 INFO L733 eck$LassoCheckResult]: Stem: 124#[ULTIMATE.startENTRY]don't care [1505] ULTIMATE.startENTRY-->L723-5: Formula: (let ((.cse0 (select |v_#memory_int_279| 1))) (and (= (select |v_#length_340| 2) 1) (= 2 (select |v_#length_340| 1)) (= (store |v_#length_340| |v_ULTIMATE.start_main_~#t~0#1.base_317| 64) |v_#length_339|) (= |v_ULTIMATE.start_main_~argv#1.base_145| |v_ULTIMATE.start_main_#in~argv#1.base_135|) (= |v_ULTIMATE.start_main_~i~0#1_510| 1) (= (select |v_#valid_469| 1) 1) (= |v_ULTIMATE.start_main_#in~argc#1_129| |v_ULTIMATE.start_main_~argc#1_135|) (= (select .cse0 1) 0) (= (store |v_#valid_469| |v_ULTIMATE.start_main_~#t~0#1.base_317| 1) |v_#valid_468|) (= (select (select |v_#memory_int_279| 2) 0) 0) (= (select |v_#valid_469| |v_ULTIMATE.start_main_~#t~0#1.base_317|) 0) (= (select |v_#valid_469| 0) 0) (< |v_#StackHeapBarrier_145| |v_ULTIMATE.start_main_~#t~0#1.base_317|) (= (select .cse0 0) 48) (= |v_#NULL.base_84| 0) (= (select |v_#valid_469| 2) 1) (= |v_ULTIMATE.start_#in~argv#1.offset_94| |v_ULTIMATE.start_main_#in~argv#1.offset_135|) (= |v_ULTIMATE.start_main_#in~argc#1_129| |v_ULTIMATE.start_#in~argc#1_94|) (= |v_ULTIMATE.start_main_~#t~0#1.offset_267| 0) (= |v_#NULL.offset_84| 0) (= |v_ULTIMATE.start_#in~argv#1.base_94| |v_ULTIMATE.start_main_#in~argv#1.base_135|) (= v_~x~0_1016 0) (= |v_ULTIMATE.start_main_~argv#1.offset_145| |v_ULTIMATE.start_main_#in~argv#1.offset_135|) (< 0 |v_#StackHeapBarrier_145|))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_94|, #StackHeapBarrier=|v_#StackHeapBarrier_145|, #valid=|v_#valid_469|, #memory_int=|v_#memory_int_279|, #length=|v_#length_340|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_94|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_94|} OutVars{#NULL.offset=|v_#NULL.offset_84|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_145|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_145|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_94|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_510|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_129|, #length=|v_#length_339|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_169|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_94|, ULTIMATE.start_main_#t~mem5#1=|v_ULTIMATE.start_main_#t~mem5#1_214|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_94|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_317|, ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_135|, ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_223|, ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_372|, ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_206|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_135|, #NULL.base=|v_#NULL.base_84|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_333|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_135|, #StackHeapBarrier=|v_#StackHeapBarrier_145|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_173|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_267|, #valid=|v_#valid_468|, #memory_int=|v_#memory_int_279|, ~x~0=v_~x~0_1016} 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] 127#[L723-5]don't care [1479] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_494| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_255| .cse1))) (and (= |v_ULTIMATE.start_main_#t~pre2#1_327| |v_#pthreadsForks_149|) (= (select |v_#valid_446| |v_ULTIMATE.start_main_~#t~0#1.base_301|) 1) (= (store |v_#memory_int_272| |v_ULTIMATE.start_main_~#t~0#1.base_301| (store (select |v_#memory_int_272| |v_ULTIMATE.start_main_~#t~0#1.base_301|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_327|)) |v_#memory_int_271|) (= (+ |v_#pthreadsForks_149| 1) |v_#pthreadsForks_148|) (<= 0 .cse0) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_255| .cse1 4) (select |v_#length_325| |v_ULTIMATE.start_main_~#t~0#1.base_301|)) (<= |v_ULTIMATE.start_main_~i~0#1_494| 15)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_494|, #pthreadsForks=|v_#pthreadsForks_149|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_255|, #valid=|v_#valid_446|, #memory_int=|v_#memory_int_272|, #length=|v_#length_325|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_301|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_494|, #pthreadsForks=|v_#pthreadsForks_148|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_255|, #valid=|v_#valid_446|, #memory_int=|v_#memory_int_271|, #length=|v_#length_325|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_301|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_327|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 129#[L724-3]don't care [1408] L724-3-->threadENTRY: Formula: (and (= |v_threadThread1of9ForFork0_#in~arg.base_4| 0) (= |v_ULTIMATE.start_main_#t~pre2#1_302| v_threadThread1of9ForFork0_thidvar0_2) (= |v_threadThread1of9ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_459|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_459|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_302|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_459|, threadThread1of9ForFork0_thidvar0=v_threadThread1of9ForFork0_thidvar0_2, threadThread1of9ForFork0_#in~arg.offset=|v_threadThread1of9ForFork0_#in~arg.offset_4|, threadThread1of9ForFork0_~thread~0=v_threadThread1of9ForFork0_~thread~0_6, threadThread1of9ForFork0_~arg.base=v_threadThread1of9ForFork0_~arg.base_6, threadThread1of9ForFork0_#res.offset=|v_threadThread1of9ForFork0_#res.offset_4|, threadThread1of9ForFork0_~arg.offset=v_threadThread1of9ForFork0_~arg.offset_6, threadThread1of9ForFork0_#in~arg.base=|v_threadThread1of9ForFork0_#in~arg.base_4|, threadThread1of9ForFork0_#res.base=|v_threadThread1of9ForFork0_#res.base_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_302|} AuxVars[] AssignedVars[threadThread1of9ForFork0_thidvar0, threadThread1of9ForFork0_#in~arg.offset, threadThread1of9ForFork0_~thread~0, threadThread1of9ForFork0_~arg.base, threadThread1of9ForFork0_#res.offset, threadThread1of9ForFork0_~arg.offset, threadThread1of9ForFork0_#in~arg.base, threadThread1of9ForFork0_#res.base] 133#[threadENTRY, L724-4]don't care [1357] 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] 141#[L724-5, threadENTRY]don't care [1500] L724-5-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_502| (+ |v_ULTIMATE.start_main_~i~0#1_503| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_503|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_219|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_502|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_169|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 145#[L723-5, threadENTRY]don't care [1479] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_494| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_255| .cse1))) (and (= |v_ULTIMATE.start_main_#t~pre2#1_327| |v_#pthreadsForks_149|) (= (select |v_#valid_446| |v_ULTIMATE.start_main_~#t~0#1.base_301|) 1) (= (store |v_#memory_int_272| |v_ULTIMATE.start_main_~#t~0#1.base_301| (store (select |v_#memory_int_272| |v_ULTIMATE.start_main_~#t~0#1.base_301|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_327|)) |v_#memory_int_271|) (= (+ |v_#pthreadsForks_149| 1) |v_#pthreadsForks_148|) (<= 0 .cse0) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_255| .cse1 4) (select |v_#length_325| |v_ULTIMATE.start_main_~#t~0#1.base_301|)) (<= |v_ULTIMATE.start_main_~i~0#1_494| 15)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_494|, #pthreadsForks=|v_#pthreadsForks_149|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_255|, #valid=|v_#valid_446|, #memory_int=|v_#memory_int_272|, #length=|v_#length_325|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_301|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_494|, #pthreadsForks=|v_#pthreadsForks_148|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_255|, #valid=|v_#valid_446|, #memory_int=|v_#memory_int_271|, #length=|v_#length_325|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_301|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_327|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 149#[L724-3, threadENTRY]don't care [1409] L724-3-->threadENTRY: Formula: (and (= |v_ULTIMATE.start_main_#t~pre2#1_304| v_threadThread2of9ForFork0_thidvar0_2) (= |v_threadThread2of9ForFork0_#in~arg.base_4| 0) (= |v_ULTIMATE.start_main_~i~0#1_461| |v_threadThread2of9ForFork0_#in~arg.offset_4|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_461|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_304|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_461|, threadThread2of9ForFork0_#res.offset=|v_threadThread2of9ForFork0_#res.offset_4|, threadThread2of9ForFork0_~thread~0=v_threadThread2of9ForFork0_~thread~0_6, threadThread2of9ForFork0_#in~arg.offset=|v_threadThread2of9ForFork0_#in~arg.offset_4|, threadThread2of9ForFork0_#in~arg.base=|v_threadThread2of9ForFork0_#in~arg.base_4|, threadThread2of9ForFork0_#res.base=|v_threadThread2of9ForFork0_#res.base_4|, threadThread2of9ForFork0_~arg.offset=v_threadThread2of9ForFork0_~arg.offset_6, threadThread2of9ForFork0_thidvar0=v_threadThread2of9ForFork0_thidvar0_2, threadThread2of9ForFork0_~arg.base=v_threadThread2of9ForFork0_~arg.base_6, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_304|} AuxVars[] AssignedVars[threadThread2of9ForFork0_#res.offset, threadThread2of9ForFork0_~thread~0, threadThread2of9ForFork0_#in~arg.offset, threadThread2of9ForFork0_#in~arg.base, threadThread2of9ForFork0_#res.base, threadThread2of9ForFork0_~arg.offset, threadThread2of9ForFork0_thidvar0, threadThread2of9ForFork0_~arg.base] 157#[L724-4, threadENTRY, threadENTRY]don't care [1357] 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] 169#[L724-5, threadENTRY, threadENTRY]don't care [1500] L724-5-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_502| (+ |v_ULTIMATE.start_main_~i~0#1_503| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_503|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_219|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_502|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_169|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 179#[threadENTRY, L723-5, threadENTRY]don't care [1479] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_494| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_255| .cse1))) (and (= |v_ULTIMATE.start_main_#t~pre2#1_327| |v_#pthreadsForks_149|) (= (select |v_#valid_446| |v_ULTIMATE.start_main_~#t~0#1.base_301|) 1) (= (store |v_#memory_int_272| |v_ULTIMATE.start_main_~#t~0#1.base_301| (store (select |v_#memory_int_272| |v_ULTIMATE.start_main_~#t~0#1.base_301|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_327|)) |v_#memory_int_271|) (= (+ |v_#pthreadsForks_149| 1) |v_#pthreadsForks_148|) (<= 0 .cse0) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_255| .cse1 4) (select |v_#length_325| |v_ULTIMATE.start_main_~#t~0#1.base_301|)) (<= |v_ULTIMATE.start_main_~i~0#1_494| 15)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_494|, #pthreadsForks=|v_#pthreadsForks_149|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_255|, #valid=|v_#valid_446|, #memory_int=|v_#memory_int_272|, #length=|v_#length_325|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_301|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_494|, #pthreadsForks=|v_#pthreadsForks_148|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_255|, #valid=|v_#valid_446|, #memory_int=|v_#memory_int_271|, #length=|v_#length_325|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_301|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_327|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 189#[L724-3, threadENTRY, threadENTRY]don't care [1410] L724-3-->threadENTRY: Formula: (and (= |v_ULTIMATE.start_main_#t~pre2#1_306| v_threadThread3of9ForFork0_thidvar0_2) (= |v_ULTIMATE.start_main_~i~0#1_463| |v_threadThread3of9ForFork0_#in~arg.offset_4|) (= |v_threadThread3of9ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_463|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_306|} OutVars{threadThread3of9ForFork0_thidvar0=v_threadThread3of9ForFork0_thidvar0_2, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_463|, threadThread3of9ForFork0_#res.offset=|v_threadThread3of9ForFork0_#res.offset_4|, threadThread3of9ForFork0_~arg.offset=v_threadThread3of9ForFork0_~arg.offset_6, threadThread3of9ForFork0_#res.base=|v_threadThread3of9ForFork0_#res.base_4|, threadThread3of9ForFork0_~thread~0=v_threadThread3of9ForFork0_~thread~0_6, threadThread3of9ForFork0_#in~arg.offset=|v_threadThread3of9ForFork0_#in~arg.offset_4|, threadThread3of9ForFork0_#in~arg.base=|v_threadThread3of9ForFork0_#in~arg.base_4|, threadThread3of9ForFork0_~arg.base=v_threadThread3of9ForFork0_~arg.base_6, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_306|} AuxVars[] AssignedVars[threadThread3of9ForFork0_thidvar0, threadThread3of9ForFork0_#res.offset, threadThread3of9ForFork0_~arg.offset, threadThread3of9ForFork0_#res.base, threadThread3of9ForFork0_~thread~0, threadThread3of9ForFork0_#in~arg.offset, threadThread3of9ForFork0_#in~arg.base, threadThread3of9ForFork0_~arg.base] 201#[threadENTRY, threadENTRY, L724-4, threadENTRY]don't care [1357] 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] 223#[L724-5, threadENTRY, threadENTRY, threadENTRY]don't care [1500] L724-5-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_502| (+ |v_ULTIMATE.start_main_~i~0#1_503| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_503|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_219|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_502|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_169|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 247#[threadENTRY, L723-5, threadENTRY, threadENTRY]don't care [1479] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_494| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_255| .cse1))) (and (= |v_ULTIMATE.start_main_#t~pre2#1_327| |v_#pthreadsForks_149|) (= (select |v_#valid_446| |v_ULTIMATE.start_main_~#t~0#1.base_301|) 1) (= (store |v_#memory_int_272| |v_ULTIMATE.start_main_~#t~0#1.base_301| (store (select |v_#memory_int_272| |v_ULTIMATE.start_main_~#t~0#1.base_301|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_327|)) |v_#memory_int_271|) (= (+ |v_#pthreadsForks_149| 1) |v_#pthreadsForks_148|) (<= 0 .cse0) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_255| .cse1 4) (select |v_#length_325| |v_ULTIMATE.start_main_~#t~0#1.base_301|)) (<= |v_ULTIMATE.start_main_~i~0#1_494| 15)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_494|, #pthreadsForks=|v_#pthreadsForks_149|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_255|, #valid=|v_#valid_446|, #memory_int=|v_#memory_int_272|, #length=|v_#length_325|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_301|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_494|, #pthreadsForks=|v_#pthreadsForks_148|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_255|, #valid=|v_#valid_446|, #memory_int=|v_#memory_int_271|, #length=|v_#length_325|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_301|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_327|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 271#[threadENTRY, L724-3, threadENTRY, threadENTRY]don't care [1411] L724-3-->threadENTRY: Formula: (and (= |v_ULTIMATE.start_main_#t~pre2#1_308| v_threadThread4of9ForFork0_thidvar0_2) (= |v_threadThread4of9ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_465|) (= |v_threadThread4of9ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_465|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_308|} OutVars{threadThread4of9ForFork0_~arg.base=v_threadThread4of9ForFork0_~arg.base_6, threadThread4of9ForFork0_#res.base=|v_threadThread4of9ForFork0_#res.base_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_465|, threadThread4of9ForFork0_#res.offset=|v_threadThread4of9ForFork0_#res.offset_4|, threadThread4of9ForFork0_~arg.offset=v_threadThread4of9ForFork0_~arg.offset_6, threadThread4of9ForFork0_#in~arg.offset=|v_threadThread4of9ForFork0_#in~arg.offset_4|, threadThread4of9ForFork0_~thread~0=v_threadThread4of9ForFork0_~thread~0_6, threadThread4of9ForFork0_thidvar0=v_threadThread4of9ForFork0_thidvar0_2, threadThread4of9ForFork0_#in~arg.base=|v_threadThread4of9ForFork0_#in~arg.base_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_308|} AuxVars[] AssignedVars[threadThread4of9ForFork0_~arg.base, threadThread4of9ForFork0_#res.base, threadThread4of9ForFork0_#res.offset, threadThread4of9ForFork0_~arg.offset, threadThread4of9ForFork0_#in~arg.offset, threadThread4of9ForFork0_~thread~0, threadThread4of9ForFork0_thidvar0, threadThread4of9ForFork0_#in~arg.base] 301#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, L724-4]don't care [1357] 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] 345#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, L724-5]don't care [1500] L724-5-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_502| (+ |v_ULTIMATE.start_main_~i~0#1_503| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_503|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_219|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_502|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_169|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 395#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, L723-5]don't care [1479] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_494| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_255| .cse1))) (and (= |v_ULTIMATE.start_main_#t~pre2#1_327| |v_#pthreadsForks_149|) (= (select |v_#valid_446| |v_ULTIMATE.start_main_~#t~0#1.base_301|) 1) (= (store |v_#memory_int_272| |v_ULTIMATE.start_main_~#t~0#1.base_301| (store (select |v_#memory_int_272| |v_ULTIMATE.start_main_~#t~0#1.base_301|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_327|)) |v_#memory_int_271|) (= (+ |v_#pthreadsForks_149| 1) |v_#pthreadsForks_148|) (<= 0 .cse0) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_255| .cse1 4) (select |v_#length_325| |v_ULTIMATE.start_main_~#t~0#1.base_301|)) (<= |v_ULTIMATE.start_main_~i~0#1_494| 15)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_494|, #pthreadsForks=|v_#pthreadsForks_149|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_255|, #valid=|v_#valid_446|, #memory_int=|v_#memory_int_272|, #length=|v_#length_325|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_301|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_494|, #pthreadsForks=|v_#pthreadsForks_148|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_255|, #valid=|v_#valid_446|, #memory_int=|v_#memory_int_271|, #length=|v_#length_325|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_301|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_327|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 447#[threadENTRY, L724-3, threadENTRY, threadENTRY, threadENTRY]don't care [1412] L724-3-->threadENTRY: Formula: (and (= |v_ULTIMATE.start_main_#t~pre2#1_310| v_threadThread5of9ForFork0_thidvar0_2) (= |v_threadThread5of9ForFork0_#in~arg.base_4| 0) (= |v_threadThread5of9ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_467|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_467|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_310|} OutVars{threadThread5of9ForFork0_#in~arg.base=|v_threadThread5of9ForFork0_#in~arg.base_4|, threadThread5of9ForFork0_~arg.offset=v_threadThread5of9ForFork0_~arg.offset_6, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_467|, threadThread5of9ForFork0_~thread~0=v_threadThread5of9ForFork0_~thread~0_6, threadThread5of9ForFork0_#res.base=|v_threadThread5of9ForFork0_#res.base_4|, threadThread5of9ForFork0_#in~arg.offset=|v_threadThread5of9ForFork0_#in~arg.offset_4|, threadThread5of9ForFork0_#res.offset=|v_threadThread5of9ForFork0_#res.offset_4|, threadThread5of9ForFork0_~arg.base=v_threadThread5of9ForFork0_~arg.base_6, threadThread5of9ForFork0_thidvar0=v_threadThread5of9ForFork0_thidvar0_2, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_310|} AuxVars[] AssignedVars[threadThread5of9ForFork0_#in~arg.base, threadThread5of9ForFork0_~arg.offset, threadThread5of9ForFork0_~thread~0, threadThread5of9ForFork0_#res.base, threadThread5of9ForFork0_#in~arg.offset, threadThread5of9ForFork0_#res.offset, threadThread5of9ForFork0_~arg.base, threadThread5of9ForFork0_thidvar0] 509#[threadENTRY, L724-4, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1357] 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] 593#[threadENTRY, threadENTRY, threadENTRY, L724-5, threadENTRY, threadENTRY]don't care [1500] L724-5-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_502| (+ |v_ULTIMATE.start_main_~i~0#1_503| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_503|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_219|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_502|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_169|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 701#[L723-5, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1479] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_494| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_255| .cse1))) (and (= |v_ULTIMATE.start_main_#t~pre2#1_327| |v_#pthreadsForks_149|) (= (select |v_#valid_446| |v_ULTIMATE.start_main_~#t~0#1.base_301|) 1) (= (store |v_#memory_int_272| |v_ULTIMATE.start_main_~#t~0#1.base_301| (store (select |v_#memory_int_272| |v_ULTIMATE.start_main_~#t~0#1.base_301|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_327|)) |v_#memory_int_271|) (= (+ |v_#pthreadsForks_149| 1) |v_#pthreadsForks_148|) (<= 0 .cse0) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_255| .cse1 4) (select |v_#length_325| |v_ULTIMATE.start_main_~#t~0#1.base_301|)) (<= |v_ULTIMATE.start_main_~i~0#1_494| 15)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_494|, #pthreadsForks=|v_#pthreadsForks_149|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_255|, #valid=|v_#valid_446|, #memory_int=|v_#memory_int_272|, #length=|v_#length_325|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_301|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_494|, #pthreadsForks=|v_#pthreadsForks_148|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_255|, #valid=|v_#valid_446|, #memory_int=|v_#memory_int_271|, #length=|v_#length_325|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_301|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_327|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 815#[threadENTRY, threadENTRY, threadENTRY, L724-3, threadENTRY, threadENTRY]don't care [1413] L724-3-->threadENTRY: Formula: (and (= |v_ULTIMATE.start_main_#t~pre2#1_312| v_threadThread6of9ForFork0_thidvar0_2) (= |v_threadThread6of9ForFork0_#in~arg.base_4| 0) (= |v_threadThread6of9ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_469|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_469|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_312|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_469|, threadThread6of9ForFork0_#res.base=|v_threadThread6of9ForFork0_#res.base_4|, threadThread6of9ForFork0_~arg.offset=v_threadThread6of9ForFork0_~arg.offset_6, threadThread6of9ForFork0_#res.offset=|v_threadThread6of9ForFork0_#res.offset_4|, threadThread6of9ForFork0_~thread~0=v_threadThread6of9ForFork0_~thread~0_6, threadThread6of9ForFork0_#in~arg.offset=|v_threadThread6of9ForFork0_#in~arg.offset_4|, threadThread6of9ForFork0_~arg.base=v_threadThread6of9ForFork0_~arg.base_6, threadThread6of9ForFork0_thidvar0=v_threadThread6of9ForFork0_thidvar0_2, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_312|, threadThread6of9ForFork0_#in~arg.base=|v_threadThread6of9ForFork0_#in~arg.base_4|} AuxVars[] AssignedVars[threadThread6of9ForFork0_#res.base, threadThread6of9ForFork0_~arg.offset, threadThread6of9ForFork0_#res.offset, threadThread6of9ForFork0_~thread~0, threadThread6of9ForFork0_#in~arg.offset, threadThread6of9ForFork0_~arg.base, threadThread6of9ForFork0_thidvar0, threadThread6of9ForFork0_#in~arg.base] 949#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, L724-4]don't care [1357] 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] 1121#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, L724-5]don't care [1500] L724-5-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_502| (+ |v_ULTIMATE.start_main_~i~0#1_503| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_503|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_219|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_502|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_169|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 1341#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, L723-5]don't care [1479] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_494| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_255| .cse1))) (and (= |v_ULTIMATE.start_main_#t~pre2#1_327| |v_#pthreadsForks_149|) (= (select |v_#valid_446| |v_ULTIMATE.start_main_~#t~0#1.base_301|) 1) (= (store |v_#memory_int_272| |v_ULTIMATE.start_main_~#t~0#1.base_301| (store (select |v_#memory_int_272| |v_ULTIMATE.start_main_~#t~0#1.base_301|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_327|)) |v_#memory_int_271|) (= (+ |v_#pthreadsForks_149| 1) |v_#pthreadsForks_148|) (<= 0 .cse0) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_255| .cse1 4) (select |v_#length_325| |v_ULTIMATE.start_main_~#t~0#1.base_301|)) (<= |v_ULTIMATE.start_main_~i~0#1_494| 15)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_494|, #pthreadsForks=|v_#pthreadsForks_149|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_255|, #valid=|v_#valid_446|, #memory_int=|v_#memory_int_272|, #length=|v_#length_325|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_301|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_494|, #pthreadsForks=|v_#pthreadsForks_148|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_255|, #valid=|v_#valid_446|, #memory_int=|v_#memory_int_271|, #length=|v_#length_325|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_301|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_327|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 1589#[threadENTRY, threadENTRY, L724-3, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1414] L724-3-->threadENTRY: Formula: (and (= |v_threadThread7of9ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_471|) (= |v_threadThread7of9ForFork0_#in~arg.base_4| 0) (= v_threadThread7of9ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre2#1_314|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_471|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_314|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_471|, threadThread7of9ForFork0_thidvar0=v_threadThread7of9ForFork0_thidvar0_2, threadThread7of9ForFork0_#in~arg.offset=|v_threadThread7of9ForFork0_#in~arg.offset_4|, threadThread7of9ForFork0_#res.base=|v_threadThread7of9ForFork0_#res.base_4|, threadThread7of9ForFork0_~arg.base=v_threadThread7of9ForFork0_~arg.base_6, threadThread7of9ForFork0_#res.offset=|v_threadThread7of9ForFork0_#res.offset_4|, threadThread7of9ForFork0_~arg.offset=v_threadThread7of9ForFork0_~arg.offset_6, threadThread7of9ForFork0_~thread~0=v_threadThread7of9ForFork0_~thread~0_6, threadThread7of9ForFork0_#in~arg.base=|v_threadThread7of9ForFork0_#in~arg.base_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_314|} AuxVars[] AssignedVars[threadThread7of9ForFork0_thidvar0, threadThread7of9ForFork0_#in~arg.offset, threadThread7of9ForFork0_#res.base, threadThread7of9ForFork0_~arg.base, threadThread7of9ForFork0_#res.offset, threadThread7of9ForFork0_~arg.offset, threadThread7of9ForFork0_~thread~0, threadThread7of9ForFork0_#in~arg.base] 1877#[threadENTRY, threadENTRY, L724-4, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1357] 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] 2235#[threadENTRY, threadENTRY, L724-5, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1500] L724-5-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_502| (+ |v_ULTIMATE.start_main_~i~0#1_503| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_503|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_219|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_502|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_169|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 2687#[L723-5, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1479] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_494| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_255| .cse1))) (and (= |v_ULTIMATE.start_main_#t~pre2#1_327| |v_#pthreadsForks_149|) (= (select |v_#valid_446| |v_ULTIMATE.start_main_~#t~0#1.base_301|) 1) (= (store |v_#memory_int_272| |v_ULTIMATE.start_main_~#t~0#1.base_301| (store (select |v_#memory_int_272| |v_ULTIMATE.start_main_~#t~0#1.base_301|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_327|)) |v_#memory_int_271|) (= (+ |v_#pthreadsForks_149| 1) |v_#pthreadsForks_148|) (<= 0 .cse0) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_255| .cse1 4) (select |v_#length_325| |v_ULTIMATE.start_main_~#t~0#1.base_301|)) (<= |v_ULTIMATE.start_main_~i~0#1_494| 15)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_494|, #pthreadsForks=|v_#pthreadsForks_149|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_255|, #valid=|v_#valid_446|, #memory_int=|v_#memory_int_272|, #length=|v_#length_325|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_301|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_494|, #pthreadsForks=|v_#pthreadsForks_148|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_255|, #valid=|v_#valid_446|, #memory_int=|v_#memory_int_271|, #length=|v_#length_325|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_301|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_327|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 3221#[L724-3, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1415] L724-3-->threadENTRY: Formula: (and (= |v_threadThread8of9ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_473|) (= |v_ULTIMATE.start_main_#t~pre2#1_316| v_threadThread8of9ForFork0_thidvar0_2) (= |v_threadThread8of9ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_473|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_316|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_473|, threadThread8of9ForFork0_#in~arg.offset=|v_threadThread8of9ForFork0_#in~arg.offset_4|, threadThread8of9ForFork0_~thread~0=v_threadThread8of9ForFork0_~thread~0_6, threadThread8of9ForFork0_~arg.offset=v_threadThread8of9ForFork0_~arg.offset_6, threadThread8of9ForFork0_#res.base=|v_threadThread8of9ForFork0_#res.base_4|, threadThread8of9ForFork0_#in~arg.base=|v_threadThread8of9ForFork0_#in~arg.base_4|, threadThread8of9ForFork0_~arg.base=v_threadThread8of9ForFork0_~arg.base_6, threadThread8of9ForFork0_#res.offset=|v_threadThread8of9ForFork0_#res.offset_4|, threadThread8of9ForFork0_thidvar0=v_threadThread8of9ForFork0_thidvar0_2, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_316|} AuxVars[] AssignedVars[threadThread8of9ForFork0_#in~arg.offset, threadThread8of9ForFork0_~thread~0, threadThread8of9ForFork0_~arg.offset, threadThread8of9ForFork0_#res.base, threadThread8of9ForFork0_#in~arg.base, threadThread8of9ForFork0_~arg.base, threadThread8of9ForFork0_#res.offset, threadThread8of9ForFork0_thidvar0] 3843#[threadENTRY, threadENTRY, L724-4, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1357] 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] 4597#[threadENTRY, threadENTRY, L724-5, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1500] L724-5-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_502| (+ |v_ULTIMATE.start_main_~i~0#1_503| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_503|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_219|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_502|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_169|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 5537#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, L723-5, threadENTRY, threadENTRY, threadENTRY]don't care [1479] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_494| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_255| .cse1))) (and (= |v_ULTIMATE.start_main_#t~pre2#1_327| |v_#pthreadsForks_149|) (= (select |v_#valid_446| |v_ULTIMATE.start_main_~#t~0#1.base_301|) 1) (= (store |v_#memory_int_272| |v_ULTIMATE.start_main_~#t~0#1.base_301| (store (select |v_#memory_int_272| |v_ULTIMATE.start_main_~#t~0#1.base_301|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_327|)) |v_#memory_int_271|) (= (+ |v_#pthreadsForks_149| 1) |v_#pthreadsForks_148|) (<= 0 .cse0) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_255| .cse1 4) (select |v_#length_325| |v_ULTIMATE.start_main_~#t~0#1.base_301|)) (<= |v_ULTIMATE.start_main_~i~0#1_494| 15)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_494|, #pthreadsForks=|v_#pthreadsForks_149|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_255|, #valid=|v_#valid_446|, #memory_int=|v_#memory_int_272|, #length=|v_#length_325|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_301|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_494|, #pthreadsForks=|v_#pthreadsForks_148|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_255|, #valid=|v_#valid_446|, #memory_int=|v_#memory_int_271|, #length=|v_#length_325|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_301|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_327|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 6677#[threadENTRY, L724-3, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1416] L724-3-->threadENTRY: Formula: (and (= |v_threadThread9of9ForFork0_#in~arg.base_4| 0) (= |v_ULTIMATE.start_main_#t~pre2#1_318| v_threadThread9of9ForFork0_thidvar0_2) (= |v_ULTIMATE.start_main_~i~0#1_475| |v_threadThread9of9ForFork0_#in~arg.offset_4|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_475|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_318|} OutVars{threadThread9of9ForFork0_~arg.base=v_threadThread9of9ForFork0_~arg.base_6, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_475|, threadThread9of9ForFork0_~thread~0=v_threadThread9of9ForFork0_~thread~0_6, threadThread9of9ForFork0_#in~arg.offset=|v_threadThread9of9ForFork0_#in~arg.offset_4|, threadThread9of9ForFork0_#res.base=|v_threadThread9of9ForFork0_#res.base_4|, threadThread9of9ForFork0_~arg.offset=v_threadThread9of9ForFork0_~arg.offset_6, threadThread9of9ForFork0_thidvar0=v_threadThread9of9ForFork0_thidvar0_2, threadThread9of9ForFork0_#in~arg.base=|v_threadThread9of9ForFork0_#in~arg.base_4|, threadThread9of9ForFork0_#res.offset=|v_threadThread9of9ForFork0_#res.offset_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_318|} AuxVars[] AssignedVars[threadThread9of9ForFork0_~arg.base, threadThread9of9ForFork0_~thread~0, threadThread9of9ForFork0_#in~arg.offset, threadThread9of9ForFork0_#res.base, threadThread9of9ForFork0_~arg.offset, threadThread9of9ForFork0_thidvar0, threadThread9of9ForFork0_#in~arg.base, threadThread9of9ForFork0_#res.offset] 8023#[threadENTRY, threadENTRY, L724-4, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1357] 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] 9629#[threadENTRY, threadENTRY, L724-5, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1500] L724-5-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_502| (+ |v_ULTIMATE.start_main_~i~0#1_503| 1)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_503|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_219|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_502|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_169|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 11605#[threadENTRY, L723-5, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1479] L723-5-->L724-3: Formula: (let ((.cse1 (* |v_ULTIMATE.start_main_~i~0#1_494| 4))) (let ((.cse0 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_255| .cse1))) (and (= |v_ULTIMATE.start_main_#t~pre2#1_327| |v_#pthreadsForks_149|) (= (select |v_#valid_446| |v_ULTIMATE.start_main_~#t~0#1.base_301|) 1) (= (store |v_#memory_int_272| |v_ULTIMATE.start_main_~#t~0#1.base_301| (store (select |v_#memory_int_272| |v_ULTIMATE.start_main_~#t~0#1.base_301|) .cse0 |v_ULTIMATE.start_main_#t~pre2#1_327|)) |v_#memory_int_271|) (= (+ |v_#pthreadsForks_149| 1) |v_#pthreadsForks_148|) (<= 0 .cse0) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_255| .cse1 4) (select |v_#length_325| |v_ULTIMATE.start_main_~#t~0#1.base_301|)) (<= |v_ULTIMATE.start_main_~i~0#1_494| 15)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_494|, #pthreadsForks=|v_#pthreadsForks_149|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_255|, #valid=|v_#valid_446|, #memory_int=|v_#memory_int_272|, #length=|v_#length_325|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_301|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_494|, #pthreadsForks=|v_#pthreadsForks_148|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_255|, #valid=|v_#valid_446|, #memory_int=|v_#memory_int_271|, #length=|v_#length_325|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_301|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_327|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 14029#[threadENTRY, threadENTRY, L724-3, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1406] L724-3-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 16937#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [2022-07-26 14:00:09,843 INFO L735 eck$LassoCheckResult]: Loop: 16937#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1407] ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 16937#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [2022-07-26 14:00:09,843 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:00:09,843 INFO L85 PathProgramCache]: Analyzing trace with hash -838482557, now seen corresponding path program 1 times [2022-07-26 14:00:09,843 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:00:09,844 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1289072870] [2022-07-26 14:00:09,844 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:00:09,844 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:00:09,864 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:00:09,864 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 14:00:09,872 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:00:09,877 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 14:00:09,877 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:00:09,877 INFO L85 PathProgramCache]: Analyzing trace with hash 1438, now seen corresponding path program 1 times [2022-07-26 14:00:09,877 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:00:09,877 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1074108617] [2022-07-26 14:00:09,877 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:00:09,877 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:00:09,880 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:00:09,880 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 14:00:09,881 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:00:09,882 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 14:00:09,882 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:00:09,882 INFO L85 PathProgramCache]: Analyzing trace with hash -223154084, now seen corresponding path program 1 times [2022-07-26 14:00:09,882 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:00:09,882 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [220995074] [2022-07-26 14:00:09,882 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:00:09,882 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:00:09,893 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:00:09,894 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 14:00:09,901 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:00:09,905 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 14:00:16,651 WARN L233 SmtUtils]: Spent 6.74s on a formula simplification. DAG size of input: 311 DAG size of output: 267 (called from [L 277] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.cfg.transitions.TransFormulaUtils.sequentialComposition) [2022-07-26 14:00:17,366 WARN L146 chiAutomizerObserver]: 9 thread instances were not sufficient, I will increase this number and restart the analysis [2022-07-26 14:00:17,395 INFO L144 ThreadInstanceAdder]: Constructed 10 joinOtherThreadTransitions. [2022-07-26 14:00:17,417 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 129 places, 122 transitions, 414 flow [2022-07-26 14:00:19,253 INFO L129 PetriNetUnfolder]: 5154/19705 cut-off events. [2022-07-26 14:00:19,254 INFO L130 PetriNetUnfolder]: For 5330/5330 co-relation queries the response was YES. [2022-07-26 14:00:19,307 INFO L84 FinitePrefix]: Finished finitePrefix Result has 24911 conditions, 19705 events. 5154/19705 cut-off events. For 5330/5330 co-relation queries the response was YES. Maximal size of possible extension queue 390. Compared 207239 event pairs, 3084 based on Foata normal form. 0/17624 useless extension candidates. Maximal degree in co-relation 12061. Up to 5120 conditions per place. [2022-07-26 14:00:19,307 INFO L82 GeneralOperation]: Start removeDead. Operand has 129 places, 122 transitions, 414 flow [2022-07-26 14:00:19,453 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 129 places, 122 transitions, 414 flow [2022-07-26 14:00:19,453 INFO L115 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-07-26 14:00:19,453 INFO L131 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 129 places, 122 transitions, 414 flow [2022-07-26 14:00:19,454 INFO L110 LiptonReduction]: Starting Lipton reduction on Petri net that has 129 places, 122 transitions, 414 flow [2022-07-26 14:00:19,454 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 129 places, 122 transitions, 414 flow [2022-07-26 14:00:21,289 INFO L129 PetriNetUnfolder]: 5154/19705 cut-off events. [2022-07-26 14:00:21,290 INFO L130 PetriNetUnfolder]: For 5330/5330 co-relation queries the response was YES. [2022-07-26 14:00:21,352 INFO L84 FinitePrefix]: Finished finitePrefix Result has 24911 conditions, 19705 events. 5154/19705 cut-off events. For 5330/5330 co-relation queries the response was YES. Maximal size of possible extension queue 391. Compared 207318 event pairs, 3084 based on Foata normal form. 0/17624 useless extension candidates. Maximal degree in co-relation 12061. Up to 5120 conditions per place. [2022-07-26 14:00:21,609 INFO L116 LiptonReduction]: Number of co-enabled transitions 6800 [2022-07-26 14:00:22,937 INFO L131 LiptonReduction]: Checked pairs total: 12168 [2022-07-26 14:00:22,938 INFO L133 LiptonReduction]: Total number of compositions: 84 [2022-07-26 14:00:22,939 INFO L301 stractBuchiCegarLoop]: Interprodecural is true [2022-07-26 14:00:22,939 INFO L302 stractBuchiCegarLoop]: Hoare is false [2022-07-26 14:00:22,939 INFO L303 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2022-07-26 14:00:22,939 INFO L304 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2022-07-26 14:00:22,939 INFO L305 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2022-07-26 14:00:22,939 INFO L306 stractBuchiCegarLoop]: Difference is false [2022-07-26 14:00:22,939 INFO L307 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2022-07-26 14:00:22,939 INFO L311 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2022-07-26 14:00:22,939 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 0 states, but on-demand construction may add more states [2022-07-26 14:00:58,744 INFO L131 ngComponentsAnalysis]: Automaton has 1024 accepting balls. 1024 [2022-07-26 14:00:58,744 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 14:00:58,744 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 14:00:58,744 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [11, 10, 10, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-26 14:00:58,745 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 14:00:58,745 INFO L333 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2022-07-26 14:00:58,745 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 302407 states, but on-demand construction may add more states [2022-07-26 14:01:07,942 INFO L131 ngComponentsAnalysis]: Automaton has 1024 accepting balls. 1024 [2022-07-26 14:01:07,942 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2022-07-26 14:01:07,942 INFO L119 BuchiIsEmpty]: Starting construction of run [2022-07-26 14:01:07,943 INFO L150 hiAutomatonCegarLoop]: Counterexample stem histogram [11, 10, 10, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-07-26 14:01:07,943 INFO L151 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2022-07-26 14:01:07,947 INFO L733 eck$LassoCheckResult]: Stem: 132#[ULTIMATE.startENTRY]don't care [1718] ULTIMATE.startENTRY-->L723-5: Formula: (let ((.cse0 (select |v_#memory_int_320| 1))) (and (= |v_ULTIMATE.start_main_~i~0#1_570| 1) (= |v_#NULL.base_91| 0) (< |v_#StackHeapBarrier_162| |v_ULTIMATE.start_main_~#t~0#1.base_348|) (= (select .cse0 0) 48) (= |v_ULTIMATE.start_main_#in~argc#1_144| |v_ULTIMATE.start_#in~argc#1_103|) (= |v_ULTIMATE.start_#in~argv#1.offset_103| |v_ULTIMATE.start_main_#in~argv#1.offset_150|) (= |v_ULTIMATE.start_main_~argv#1.base_158| |v_ULTIMATE.start_main_#in~argv#1.base_150|) (= |v_ULTIMATE.start_main_~argv#1.offset_158| |v_ULTIMATE.start_main_#in~argv#1.offset_150|) (= |v_#NULL.offset_91| 0) (= |v_ULTIMATE.start_main_#in~argc#1_144| |v_ULTIMATE.start_main_~argc#1_148|) (< 0 |v_#StackHeapBarrier_162|) (= |v_#valid_514| (store |v_#valid_515| |v_ULTIMATE.start_main_~#t~0#1.base_348| 1)) (= (select .cse0 1) 0) (= v_~x~0_1201 0) (= (select (select |v_#memory_int_320| 2) 0) 0) (= (select |v_#length_372| 1) 2) (= (select |v_#valid_515| 1) 1) (= (store |v_#length_372| |v_ULTIMATE.start_main_~#t~0#1.base_348| 64) |v_#length_371|) (= (select |v_#valid_515| 2) 1) (= (select |v_#length_372| 2) 1) (= (select |v_#valid_515| 0) 0) (= |v_ULTIMATE.start_#in~argv#1.base_103| |v_ULTIMATE.start_main_#in~argv#1.base_150|) (= |v_ULTIMATE.start_main_~#t~0#1.offset_292| 0) (= (select |v_#valid_515| |v_ULTIMATE.start_main_~#t~0#1.base_348|) 0))) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_103|, #StackHeapBarrier=|v_#StackHeapBarrier_162|, #valid=|v_#valid_515|, #memory_int=|v_#memory_int_320|, #length=|v_#length_372|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_103|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_103|} OutVars{#NULL.offset=|v_#NULL.offset_91|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_158|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_158|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_103|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_570|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_144|, #length=|v_#length_371|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_184|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_103|, ULTIMATE.start_main_#t~mem5#1=|v_ULTIMATE.start_main_#t~mem5#1_245|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_103|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_348|, ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_148|, ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_251|, ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_407|, ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_225|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_150|, #NULL.base=|v_#NULL.base_91|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_387|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_150|, #StackHeapBarrier=|v_#StackHeapBarrier_162|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_195|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_292|, #valid=|v_#valid_514|, #memory_int=|v_#memory_int_320|, ~x~0=v_~x~0_1201} 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] 135#[L723-5]don't care [1709] L723-5-->L724-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_564| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_286| .cse0))) (and (= |v_ULTIMATE.start_main_#t~pre2#1_383| |v_#pthreadsForks_172|) (= (+ |v_#pthreadsForks_172| 1) |v_#pthreadsForks_171|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_286| .cse0 4) (select |v_#length_361| |v_ULTIMATE.start_main_~#t~0#1.base_342|)) (<= 0 .cse1) (= (select |v_#valid_504| |v_ULTIMATE.start_main_~#t~0#1.base_342|) 1) (= (store |v_#memory_int_313| |v_ULTIMATE.start_main_~#t~0#1.base_342| (store (select |v_#memory_int_313| |v_ULTIMATE.start_main_~#t~0#1.base_342|) .cse1 |v_ULTIMATE.start_main_#t~pre2#1_383|)) |v_#memory_int_312|) (<= |v_ULTIMATE.start_main_~i~0#1_564| 15)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_564|, #pthreadsForks=|v_#pthreadsForks_172|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_286|, #valid=|v_#valid_504|, #memory_int=|v_#memory_int_313|, #length=|v_#length_361|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_342|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_564|, #pthreadsForks=|v_#pthreadsForks_171|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_286|, #valid=|v_#valid_504|, #memory_int=|v_#memory_int_312|, #length=|v_#length_361|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_342|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_383|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 139#[L724-3]don't care [1615] L724-3-->threadENTRY: Formula: (and (= |v_ULTIMATE.start_main_#t~pre2#1_356| v_threadThread1of10ForFork0_thidvar0_2) (= |v_threadThread1of10ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_523|) (= |v_threadThread1of10ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_523|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_356|} OutVars{threadThread1of10ForFork0_#in~arg.offset=|v_threadThread1of10ForFork0_#in~arg.offset_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_523|, threadThread1of10ForFork0_#res.offset=|v_threadThread1of10ForFork0_#res.offset_4|, threadThread1of10ForFork0_~thread~0=v_threadThread1of10ForFork0_~thread~0_6, threadThread1of10ForFork0_#in~arg.base=|v_threadThread1of10ForFork0_#in~arg.base_4|, threadThread1of10ForFork0_#res.base=|v_threadThread1of10ForFork0_#res.base_4|, threadThread1of10ForFork0_~arg.offset=v_threadThread1of10ForFork0_~arg.offset_6, threadThread1of10ForFork0_thidvar0=v_threadThread1of10ForFork0_thidvar0_2, threadThread1of10ForFork0_~arg.base=v_threadThread1of10ForFork0_~arg.base_6, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_356|} AuxVars[] AssignedVars[threadThread1of10ForFork0_#in~arg.offset, threadThread1of10ForFork0_#res.offset, threadThread1of10ForFork0_~thread~0, threadThread1of10ForFork0_#in~arg.base, threadThread1of10ForFork0_#res.base, threadThread1of10ForFork0_~arg.offset, threadThread1of10ForFork0_thidvar0, threadThread1of10ForFork0_~arg.base] 145#[L724-4, threadENTRY]don't care [1559] 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] 149#[L724-5, threadENTRY]don't care [1688] L724-5-->L723-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_551| 1) |v_ULTIMATE.start_main_~i~0#1_550|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_551|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_243|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_550|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_189|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 153#[threadENTRY, L723-5]don't care [1709] L723-5-->L724-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_564| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_286| .cse0))) (and (= |v_ULTIMATE.start_main_#t~pre2#1_383| |v_#pthreadsForks_172|) (= (+ |v_#pthreadsForks_172| 1) |v_#pthreadsForks_171|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_286| .cse0 4) (select |v_#length_361| |v_ULTIMATE.start_main_~#t~0#1.base_342|)) (<= 0 .cse1) (= (select |v_#valid_504| |v_ULTIMATE.start_main_~#t~0#1.base_342|) 1) (= (store |v_#memory_int_313| |v_ULTIMATE.start_main_~#t~0#1.base_342| (store (select |v_#memory_int_313| |v_ULTIMATE.start_main_~#t~0#1.base_342|) .cse1 |v_ULTIMATE.start_main_#t~pre2#1_383|)) |v_#memory_int_312|) (<= |v_ULTIMATE.start_main_~i~0#1_564| 15)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_564|, #pthreadsForks=|v_#pthreadsForks_172|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_286|, #valid=|v_#valid_504|, #memory_int=|v_#memory_int_313|, #length=|v_#length_361|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_342|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_564|, #pthreadsForks=|v_#pthreadsForks_171|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_286|, #valid=|v_#valid_504|, #memory_int=|v_#memory_int_312|, #length=|v_#length_361|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_342|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_383|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 159#[L724-3, threadENTRY]don't care [1616] L724-3-->threadENTRY: Formula: (and (= |v_ULTIMATE.start_main_#t~pre2#1_358| v_threadThread2of10ForFork0_thidvar0_2) (= |v_threadThread2of10ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_525|) (= |v_threadThread2of10ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_525|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_358|} OutVars{threadThread2of10ForFork0_#res.offset=|v_threadThread2of10ForFork0_#res.offset_4|, threadThread2of10ForFork0_~thread~0=v_threadThread2of10ForFork0_~thread~0_6, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_525|, threadThread2of10ForFork0_#in~arg.offset=|v_threadThread2of10ForFork0_#in~arg.offset_4|, threadThread2of10ForFork0_~arg.base=v_threadThread2of10ForFork0_~arg.base_6, threadThread2of10ForFork0_~arg.offset=v_threadThread2of10ForFork0_~arg.offset_6, threadThread2of10ForFork0_#res.base=|v_threadThread2of10ForFork0_#res.base_4|, threadThread2of10ForFork0_#in~arg.base=|v_threadThread2of10ForFork0_#in~arg.base_4|, threadThread2of10ForFork0_thidvar0=v_threadThread2of10ForFork0_thidvar0_2, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_358|} AuxVars[] AssignedVars[threadThread2of10ForFork0_#res.offset, threadThread2of10ForFork0_~thread~0, threadThread2of10ForFork0_#in~arg.offset, threadThread2of10ForFork0_~arg.base, threadThread2of10ForFork0_~arg.offset, threadThread2of10ForFork0_#res.base, threadThread2of10ForFork0_#in~arg.base, threadThread2of10ForFork0_thidvar0] 169#[threadENTRY, L724-4, threadENTRY]don't care [1559] 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] 179#[threadENTRY, threadENTRY, L724-5]don't care [1688] L724-5-->L723-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_551| 1) |v_ULTIMATE.start_main_~i~0#1_550|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_551|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_243|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_550|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_189|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 189#[L723-5, threadENTRY, threadENTRY]don't care [1709] L723-5-->L724-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_564| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_286| .cse0))) (and (= |v_ULTIMATE.start_main_#t~pre2#1_383| |v_#pthreadsForks_172|) (= (+ |v_#pthreadsForks_172| 1) |v_#pthreadsForks_171|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_286| .cse0 4) (select |v_#length_361| |v_ULTIMATE.start_main_~#t~0#1.base_342|)) (<= 0 .cse1) (= (select |v_#valid_504| |v_ULTIMATE.start_main_~#t~0#1.base_342|) 1) (= (store |v_#memory_int_313| |v_ULTIMATE.start_main_~#t~0#1.base_342| (store (select |v_#memory_int_313| |v_ULTIMATE.start_main_~#t~0#1.base_342|) .cse1 |v_ULTIMATE.start_main_#t~pre2#1_383|)) |v_#memory_int_312|) (<= |v_ULTIMATE.start_main_~i~0#1_564| 15)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_564|, #pthreadsForks=|v_#pthreadsForks_172|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_286|, #valid=|v_#valid_504|, #memory_int=|v_#memory_int_313|, #length=|v_#length_361|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_342|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_564|, #pthreadsForks=|v_#pthreadsForks_171|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_286|, #valid=|v_#valid_504|, #memory_int=|v_#memory_int_312|, #length=|v_#length_361|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_342|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_383|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 201#[L724-3, threadENTRY, threadENTRY]don't care [1617] L724-3-->threadENTRY: Formula: (and (= |v_threadThread3of10ForFork0_#in~arg.base_4| 0) (= |v_threadThread3of10ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_527|) (= |v_ULTIMATE.start_main_#t~pre2#1_360| v_threadThread3of10ForFork0_thidvar0_2)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_527|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_360|} OutVars{threadThread3of10ForFork0_~arg.offset=v_threadThread3of10ForFork0_~arg.offset_6, threadThread3of10ForFork0_#res.offset=|v_threadThread3of10ForFork0_#res.offset_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_527|, threadThread3of10ForFork0_#in~arg.base=|v_threadThread3of10ForFork0_#in~arg.base_4|, threadThread3of10ForFork0_#res.base=|v_threadThread3of10ForFork0_#res.base_4|, threadThread3of10ForFork0_~arg.base=v_threadThread3of10ForFork0_~arg.base_6, threadThread3of10ForFork0_thidvar0=v_threadThread3of10ForFork0_thidvar0_2, threadThread3of10ForFork0_#in~arg.offset=|v_threadThread3of10ForFork0_#in~arg.offset_4|, threadThread3of10ForFork0_~thread~0=v_threadThread3of10ForFork0_~thread~0_6, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_360|} AuxVars[] AssignedVars[threadThread3of10ForFork0_~arg.offset, threadThread3of10ForFork0_#res.offset, threadThread3of10ForFork0_#in~arg.base, threadThread3of10ForFork0_#res.base, threadThread3of10ForFork0_~arg.base, threadThread3of10ForFork0_thidvar0, threadThread3of10ForFork0_#in~arg.offset, threadThread3of10ForFork0_~thread~0] 217#[L724-4, threadENTRY, threadENTRY, threadENTRY]don't care [1559] 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] 237#[L724-5, threadENTRY, threadENTRY, threadENTRY]don't care [1688] L724-5-->L723-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_551| 1) |v_ULTIMATE.start_main_~i~0#1_550|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_551|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_243|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_550|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_189|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 259#[L723-5, threadENTRY, threadENTRY, threadENTRY]don't care [1709] L723-5-->L724-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_564| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_286| .cse0))) (and (= |v_ULTIMATE.start_main_#t~pre2#1_383| |v_#pthreadsForks_172|) (= (+ |v_#pthreadsForks_172| 1) |v_#pthreadsForks_171|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_286| .cse0 4) (select |v_#length_361| |v_ULTIMATE.start_main_~#t~0#1.base_342|)) (<= 0 .cse1) (= (select |v_#valid_504| |v_ULTIMATE.start_main_~#t~0#1.base_342|) 1) (= (store |v_#memory_int_313| |v_ULTIMATE.start_main_~#t~0#1.base_342| (store (select |v_#memory_int_313| |v_ULTIMATE.start_main_~#t~0#1.base_342|) .cse1 |v_ULTIMATE.start_main_#t~pre2#1_383|)) |v_#memory_int_312|) (<= |v_ULTIMATE.start_main_~i~0#1_564| 15)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_564|, #pthreadsForks=|v_#pthreadsForks_172|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_286|, #valid=|v_#valid_504|, #memory_int=|v_#memory_int_313|, #length=|v_#length_361|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_342|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_564|, #pthreadsForks=|v_#pthreadsForks_171|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_286|, #valid=|v_#valid_504|, #memory_int=|v_#memory_int_312|, #length=|v_#length_361|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_342|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_383|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 285#[threadENTRY, threadENTRY, L724-3, threadENTRY]don't care [1618] L724-3-->threadENTRY: Formula: (and (= |v_threadThread4of10ForFork0_#in~arg.base_4| 0) (= |v_ULTIMATE.start_main_#t~pre2#1_362| v_threadThread4of10ForFork0_thidvar0_2) (= |v_threadThread4of10ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_529|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_529|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_362|} OutVars{threadThread4of10ForFork0_#in~arg.base=|v_threadThread4of10ForFork0_#in~arg.base_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_529|, threadThread4of10ForFork0_~arg.base=v_threadThread4of10ForFork0_~arg.base_6, threadThread4of10ForFork0_#res.offset=|v_threadThread4of10ForFork0_#res.offset_4|, threadThread4of10ForFork0_thidvar0=v_threadThread4of10ForFork0_thidvar0_2, threadThread4of10ForFork0_#in~arg.offset=|v_threadThread4of10ForFork0_#in~arg.offset_4|, threadThread4of10ForFork0_~thread~0=v_threadThread4of10ForFork0_~thread~0_6, threadThread4of10ForFork0_~arg.offset=v_threadThread4of10ForFork0_~arg.offset_6, threadThread4of10ForFork0_#res.base=|v_threadThread4of10ForFork0_#res.base_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_362|} AuxVars[] AssignedVars[threadThread4of10ForFork0_#in~arg.base, threadThread4of10ForFork0_~arg.base, threadThread4of10ForFork0_#res.offset, threadThread4of10ForFork0_thidvar0, threadThread4of10ForFork0_#in~arg.offset, threadThread4of10ForFork0_~thread~0, threadThread4of10ForFork0_~arg.offset, threadThread4of10ForFork0_#res.base] 317#[threadENTRY, threadENTRY, threadENTRY, L724-4, threadENTRY]don't care [1559] 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] 359#[threadENTRY, threadENTRY, L724-5, threadENTRY, threadENTRY]don't care [1688] L724-5-->L723-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_551| 1) |v_ULTIMATE.start_main_~i~0#1_550|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_551|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_243|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_550|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_189|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 407#[threadENTRY, threadENTRY, L723-5, threadENTRY, threadENTRY]don't care [1709] L723-5-->L724-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_564| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_286| .cse0))) (and (= |v_ULTIMATE.start_main_#t~pre2#1_383| |v_#pthreadsForks_172|) (= (+ |v_#pthreadsForks_172| 1) |v_#pthreadsForks_171|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_286| .cse0 4) (select |v_#length_361| |v_ULTIMATE.start_main_~#t~0#1.base_342|)) (<= 0 .cse1) (= (select |v_#valid_504| |v_ULTIMATE.start_main_~#t~0#1.base_342|) 1) (= (store |v_#memory_int_313| |v_ULTIMATE.start_main_~#t~0#1.base_342| (store (select |v_#memory_int_313| |v_ULTIMATE.start_main_~#t~0#1.base_342|) .cse1 |v_ULTIMATE.start_main_#t~pre2#1_383|)) |v_#memory_int_312|) (<= |v_ULTIMATE.start_main_~i~0#1_564| 15)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_564|, #pthreadsForks=|v_#pthreadsForks_172|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_286|, #valid=|v_#valid_504|, #memory_int=|v_#memory_int_313|, #length=|v_#length_361|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_342|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_564|, #pthreadsForks=|v_#pthreadsForks_171|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_286|, #valid=|v_#valid_504|, #memory_int=|v_#memory_int_312|, #length=|v_#length_361|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_342|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_383|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 461#[L724-3, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1619] L724-3-->threadENTRY: Formula: (and (= |v_threadThread5of10ForFork0_#in~arg.base_4| 0) (= |v_ULTIMATE.start_main_#t~pre2#1_364| v_threadThread5of10ForFork0_thidvar0_2) (= |v_threadThread5of10ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_531|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_531|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_364|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_531|, threadThread5of10ForFork0_#in~arg.base=|v_threadThread5of10ForFork0_#in~arg.base_4|, threadThread5of10ForFork0_#res.base=|v_threadThread5of10ForFork0_#res.base_4|, threadThread5of10ForFork0_thidvar0=v_threadThread5of10ForFork0_thidvar0_2, threadThread5of10ForFork0_~thread~0=v_threadThread5of10ForFork0_~thread~0_6, threadThread5of10ForFork0_#in~arg.offset=|v_threadThread5of10ForFork0_#in~arg.offset_4|, threadThread5of10ForFork0_#res.offset=|v_threadThread5of10ForFork0_#res.offset_4|, threadThread5of10ForFork0_~arg.offset=v_threadThread5of10ForFork0_~arg.offset_6, threadThread5of10ForFork0_~arg.base=v_threadThread5of10ForFork0_~arg.base_6, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_364|} AuxVars[] AssignedVars[threadThread5of10ForFork0_#in~arg.base, threadThread5of10ForFork0_#res.base, threadThread5of10ForFork0_thidvar0, threadThread5of10ForFork0_~thread~0, threadThread5of10ForFork0_#in~arg.offset, threadThread5of10ForFork0_#res.offset, threadThread5of10ForFork0_~arg.offset, threadThread5of10ForFork0_~arg.base] 527#[threadENTRY, threadENTRY, threadENTRY, L724-4, threadENTRY, threadENTRY]don't care [1559] 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] 611#[threadENTRY, threadENTRY, threadENTRY, L724-5, threadENTRY, threadENTRY]don't care [1688] L724-5-->L723-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_551| 1) |v_ULTIMATE.start_main_~i~0#1_550|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_551|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_243|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_550|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_189|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 713#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, L723-5]don't care [1709] L723-5-->L724-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_564| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_286| .cse0))) (and (= |v_ULTIMATE.start_main_#t~pre2#1_383| |v_#pthreadsForks_172|) (= (+ |v_#pthreadsForks_172| 1) |v_#pthreadsForks_171|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_286| .cse0 4) (select |v_#length_361| |v_ULTIMATE.start_main_~#t~0#1.base_342|)) (<= 0 .cse1) (= (select |v_#valid_504| |v_ULTIMATE.start_main_~#t~0#1.base_342|) 1) (= (store |v_#memory_int_313| |v_ULTIMATE.start_main_~#t~0#1.base_342| (store (select |v_#memory_int_313| |v_ULTIMATE.start_main_~#t~0#1.base_342|) .cse1 |v_ULTIMATE.start_main_#t~pre2#1_383|)) |v_#memory_int_312|) (<= |v_ULTIMATE.start_main_~i~0#1_564| 15)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_564|, #pthreadsForks=|v_#pthreadsForks_172|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_286|, #valid=|v_#valid_504|, #memory_int=|v_#memory_int_313|, #length=|v_#length_361|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_342|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_564|, #pthreadsForks=|v_#pthreadsForks_171|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_286|, #valid=|v_#valid_504|, #memory_int=|v_#memory_int_312|, #length=|v_#length_361|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_342|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_383|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 829#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, L724-3, threadENTRY]don't care [1620] L724-3-->threadENTRY: Formula: (and (= |v_threadThread6of10ForFork0_#in~arg.base_4| 0) (= |v_threadThread6of10ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_533|) (= |v_ULTIMATE.start_main_#t~pre2#1_366| v_threadThread6of10ForFork0_thidvar0_2)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_533|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_366|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_533|, threadThread6of10ForFork0_thidvar0=v_threadThread6of10ForFork0_thidvar0_2, threadThread6of10ForFork0_~arg.offset=v_threadThread6of10ForFork0_~arg.offset_6, threadThread6of10ForFork0_#res.base=|v_threadThread6of10ForFork0_#res.base_4|, threadThread6of10ForFork0_#res.offset=|v_threadThread6of10ForFork0_#res.offset_4|, threadThread6of10ForFork0_~thread~0=v_threadThread6of10ForFork0_~thread~0_6, threadThread6of10ForFork0_#in~arg.offset=|v_threadThread6of10ForFork0_#in~arg.offset_4|, threadThread6of10ForFork0_~arg.base=v_threadThread6of10ForFork0_~arg.base_6, threadThread6of10ForFork0_#in~arg.base=|v_threadThread6of10ForFork0_#in~arg.base_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_366|} AuxVars[] AssignedVars[threadThread6of10ForFork0_thidvar0, threadThread6of10ForFork0_~arg.offset, threadThread6of10ForFork0_#res.base, threadThread6of10ForFork0_#res.offset, threadThread6of10ForFork0_~thread~0, threadThread6of10ForFork0_#in~arg.offset, threadThread6of10ForFork0_~arg.base, threadThread6of10ForFork0_#in~arg.base] 967#[threadENTRY, threadENTRY, L724-4, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1559] 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] 1137#[threadENTRY, threadENTRY, L724-5, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1688] L724-5-->L723-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_551| 1) |v_ULTIMATE.start_main_~i~0#1_550|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_551|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_243|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_550|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_189|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 1353#[L723-5, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1709] L723-5-->L724-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_564| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_286| .cse0))) (and (= |v_ULTIMATE.start_main_#t~pre2#1_383| |v_#pthreadsForks_172|) (= (+ |v_#pthreadsForks_172| 1) |v_#pthreadsForks_171|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_286| .cse0 4) (select |v_#length_361| |v_ULTIMATE.start_main_~#t~0#1.base_342|)) (<= 0 .cse1) (= (select |v_#valid_504| |v_ULTIMATE.start_main_~#t~0#1.base_342|) 1) (= (store |v_#memory_int_313| |v_ULTIMATE.start_main_~#t~0#1.base_342| (store (select |v_#memory_int_313| |v_ULTIMATE.start_main_~#t~0#1.base_342|) .cse1 |v_ULTIMATE.start_main_#t~pre2#1_383|)) |v_#memory_int_312|) (<= |v_ULTIMATE.start_main_~i~0#1_564| 15)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_564|, #pthreadsForks=|v_#pthreadsForks_172|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_286|, #valid=|v_#valid_504|, #memory_int=|v_#memory_int_313|, #length=|v_#length_361|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_342|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_564|, #pthreadsForks=|v_#pthreadsForks_171|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_286|, #valid=|v_#valid_504|, #memory_int=|v_#memory_int_312|, #length=|v_#length_361|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_342|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_383|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 1603#[threadENTRY, threadENTRY, L724-3, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1621] L724-3-->threadENTRY: Formula: (and (= |v_threadThread7of10ForFork0_#in~arg.base_4| 0) (= |v_threadThread7of10ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_535|) (= |v_ULTIMATE.start_main_#t~pre2#1_368| v_threadThread7of10ForFork0_thidvar0_2)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_535|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_368|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_535|, threadThread7of10ForFork0_~arg.base=v_threadThread7of10ForFork0_~arg.base_6, threadThread7of10ForFork0_~arg.offset=v_threadThread7of10ForFork0_~arg.offset_6, threadThread7of10ForFork0_#res.offset=|v_threadThread7of10ForFork0_#res.offset_4|, threadThread7of10ForFork0_#in~arg.base=|v_threadThread7of10ForFork0_#in~arg.base_4|, threadThread7of10ForFork0_#res.base=|v_threadThread7of10ForFork0_#res.base_4|, threadThread7of10ForFork0_#in~arg.offset=|v_threadThread7of10ForFork0_#in~arg.offset_4|, threadThread7of10ForFork0_thidvar0=v_threadThread7of10ForFork0_thidvar0_2, threadThread7of10ForFork0_~thread~0=v_threadThread7of10ForFork0_~thread~0_6, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_368|} AuxVars[] AssignedVars[threadThread7of10ForFork0_~arg.base, threadThread7of10ForFork0_~arg.offset, threadThread7of10ForFork0_#res.offset, threadThread7of10ForFork0_#in~arg.base, threadThread7of10ForFork0_#res.base, threadThread7of10ForFork0_#in~arg.offset, threadThread7of10ForFork0_thidvar0, threadThread7of10ForFork0_~thread~0] 1895#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, L724-4, threadENTRY, threadENTRY]don't care [1559] 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] 2251#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, L724-5, threadENTRY, threadENTRY]don't care [1688] L724-5-->L723-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_551| 1) |v_ULTIMATE.start_main_~i~0#1_550|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_551|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_243|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_550|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_189|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 2699#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, L723-5, threadENTRY, threadENTRY]don't care [1709] L723-5-->L724-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_564| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_286| .cse0))) (and (= |v_ULTIMATE.start_main_#t~pre2#1_383| |v_#pthreadsForks_172|) (= (+ |v_#pthreadsForks_172| 1) |v_#pthreadsForks_171|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_286| .cse0 4) (select |v_#length_361| |v_ULTIMATE.start_main_~#t~0#1.base_342|)) (<= 0 .cse1) (= (select |v_#valid_504| |v_ULTIMATE.start_main_~#t~0#1.base_342|) 1) (= (store |v_#memory_int_313| |v_ULTIMATE.start_main_~#t~0#1.base_342| (store (select |v_#memory_int_313| |v_ULTIMATE.start_main_~#t~0#1.base_342|) .cse1 |v_ULTIMATE.start_main_#t~pre2#1_383|)) |v_#memory_int_312|) (<= |v_ULTIMATE.start_main_~i~0#1_564| 15)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_564|, #pthreadsForks=|v_#pthreadsForks_172|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_286|, #valid=|v_#valid_504|, #memory_int=|v_#memory_int_313|, #length=|v_#length_361|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_342|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_564|, #pthreadsForks=|v_#pthreadsForks_171|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_286|, #valid=|v_#valid_504|, #memory_int=|v_#memory_int_312|, #length=|v_#length_361|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_342|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_383|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 3235#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, L724-3, threadENTRY]don't care [1622] L724-3-->threadENTRY: Formula: (and (= |v_threadThread8of10ForFork0_#in~arg.base_4| 0) (= |v_ULTIMATE.start_main_#t~pre2#1_370| v_threadThread8of10ForFork0_thidvar0_2) (= |v_threadThread8of10ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_537|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_537|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_370|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_537|, threadThread8of10ForFork0_#in~arg.offset=|v_threadThread8of10ForFork0_#in~arg.offset_4|, threadThread8of10ForFork0_#res.offset=|v_threadThread8of10ForFork0_#res.offset_4|, threadThread8of10ForFork0_#in~arg.base=|v_threadThread8of10ForFork0_#in~arg.base_4|, threadThread8of10ForFork0_~arg.base=v_threadThread8of10ForFork0_~arg.base_6, threadThread8of10ForFork0_~thread~0=v_threadThread8of10ForFork0_~thread~0_6, threadThread8of10ForFork0_~arg.offset=v_threadThread8of10ForFork0_~arg.offset_6, threadThread8of10ForFork0_thidvar0=v_threadThread8of10ForFork0_thidvar0_2, threadThread8of10ForFork0_#res.base=|v_threadThread8of10ForFork0_#res.base_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_370|} AuxVars[] AssignedVars[threadThread8of10ForFork0_#in~arg.offset, threadThread8of10ForFork0_#res.offset, threadThread8of10ForFork0_#in~arg.base, threadThread8of10ForFork0_~arg.base, threadThread8of10ForFork0_~thread~0, threadThread8of10ForFork0_~arg.offset, threadThread8of10ForFork0_thidvar0, threadThread8of10ForFork0_#res.base] 3861#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, L724-4]don't care [1559] 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] 4613#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, L724-5, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1688] L724-5-->L723-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_551| 1) |v_ULTIMATE.start_main_~i~0#1_550|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_551|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_243|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_550|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_189|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 5547#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, L723-5, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1709] L723-5-->L724-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_564| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_286| .cse0))) (and (= |v_ULTIMATE.start_main_#t~pre2#1_383| |v_#pthreadsForks_172|) (= (+ |v_#pthreadsForks_172| 1) |v_#pthreadsForks_171|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_286| .cse0 4) (select |v_#length_361| |v_ULTIMATE.start_main_~#t~0#1.base_342|)) (<= 0 .cse1) (= (select |v_#valid_504| |v_ULTIMATE.start_main_~#t~0#1.base_342|) 1) (= (store |v_#memory_int_313| |v_ULTIMATE.start_main_~#t~0#1.base_342| (store (select |v_#memory_int_313| |v_ULTIMATE.start_main_~#t~0#1.base_342|) .cse1 |v_ULTIMATE.start_main_#t~pre2#1_383|)) |v_#memory_int_312|) (<= |v_ULTIMATE.start_main_~i~0#1_564| 15)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_564|, #pthreadsForks=|v_#pthreadsForks_172|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_286|, #valid=|v_#valid_504|, #memory_int=|v_#memory_int_313|, #length=|v_#length_361|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_342|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_564|, #pthreadsForks=|v_#pthreadsForks_171|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_286|, #valid=|v_#valid_504|, #memory_int=|v_#memory_int_312|, #length=|v_#length_361|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_342|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_383|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 6691#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, L724-3, threadENTRY, threadENTRY]don't care [1623] L724-3-->threadENTRY: Formula: (and (= |v_threadThread9of10ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_539|) (= |v_threadThread9of10ForFork0_#in~arg.base_4| 0) (= |v_ULTIMATE.start_main_#t~pre2#1_372| v_threadThread9of10ForFork0_thidvar0_2)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_539|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_372|} OutVars{threadThread9of10ForFork0_#in~arg.offset=|v_threadThread9of10ForFork0_#in~arg.offset_4|, threadThread9of10ForFork0_#res.offset=|v_threadThread9of10ForFork0_#res.offset_4|, threadThread9of10ForFork0_thidvar0=v_threadThread9of10ForFork0_thidvar0_2, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_539|, threadThread9of10ForFork0_~thread~0=v_threadThread9of10ForFork0_~thread~0_6, threadThread9of10ForFork0_#in~arg.base=|v_threadThread9of10ForFork0_#in~arg.base_4|, threadThread9of10ForFork0_#res.base=|v_threadThread9of10ForFork0_#res.base_4|, threadThread9of10ForFork0_~arg.offset=v_threadThread9of10ForFork0_~arg.offset_6, threadThread9of10ForFork0_~arg.base=v_threadThread9of10ForFork0_~arg.base_6, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_372|} AuxVars[] AssignedVars[threadThread9of10ForFork0_#in~arg.offset, threadThread9of10ForFork0_#res.offset, threadThread9of10ForFork0_thidvar0, threadThread9of10ForFork0_~thread~0, threadThread9of10ForFork0_#in~arg.base, threadThread9of10ForFork0_#res.base, threadThread9of10ForFork0_~arg.offset, threadThread9of10ForFork0_~arg.base] 8041#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, L724-4, threadENTRY, threadENTRY]don't care [1559] 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] 9647#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, L724-5, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1688] L724-5-->L723-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_551| 1) |v_ULTIMATE.start_main_~i~0#1_550|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_551|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_243|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_550|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_189|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 11617#[threadENTRY, threadENTRY, L723-5, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1709] L723-5-->L724-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_564| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_286| .cse0))) (and (= |v_ULTIMATE.start_main_#t~pre2#1_383| |v_#pthreadsForks_172|) (= (+ |v_#pthreadsForks_172| 1) |v_#pthreadsForks_171|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_286| .cse0 4) (select |v_#length_361| |v_ULTIMATE.start_main_~#t~0#1.base_342|)) (<= 0 .cse1) (= (select |v_#valid_504| |v_ULTIMATE.start_main_~#t~0#1.base_342|) 1) (= (store |v_#memory_int_313| |v_ULTIMATE.start_main_~#t~0#1.base_342| (store (select |v_#memory_int_313| |v_ULTIMATE.start_main_~#t~0#1.base_342|) .cse1 |v_ULTIMATE.start_main_#t~pre2#1_383|)) |v_#memory_int_312|) (<= |v_ULTIMATE.start_main_~i~0#1_564| 15)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_564|, #pthreadsForks=|v_#pthreadsForks_172|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_286|, #valid=|v_#valid_504|, #memory_int=|v_#memory_int_313|, #length=|v_#length_361|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_342|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_564|, #pthreadsForks=|v_#pthreadsForks_171|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_286|, #valid=|v_#valid_504|, #memory_int=|v_#memory_int_312|, #length=|v_#length_361|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_342|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_383|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 14043#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, L724-3, threadENTRY]don't care [1624] L724-3-->threadENTRY: Formula: (and (= |v_ULTIMATE.start_main_#t~pre2#1_374| v_threadThread10of10ForFork0_thidvar0_2) (= |v_threadThread10of10ForFork0_#in~arg.offset_4| |v_ULTIMATE.start_main_~i~0#1_541|) (= |v_threadThread10of10ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_541|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_374|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_541|, threadThread10of10ForFork0_~arg.base=v_threadThread10of10ForFork0_~arg.base_6, threadThread10of10ForFork0_~arg.offset=v_threadThread10of10ForFork0_~arg.offset_6, threadThread10of10ForFork0_#res.offset=|v_threadThread10of10ForFork0_#res.offset_4|, threadThread10of10ForFork0_#in~arg.base=|v_threadThread10of10ForFork0_#in~arg.base_4|, threadThread10of10ForFork0_#res.base=|v_threadThread10of10ForFork0_#res.base_4|, threadThread10of10ForFork0_#in~arg.offset=|v_threadThread10of10ForFork0_#in~arg.offset_4|, threadThread10of10ForFork0_thidvar0=v_threadThread10of10ForFork0_thidvar0_2, threadThread10of10ForFork0_~thread~0=v_threadThread10of10ForFork0_~thread~0_6, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_374|} AuxVars[] AssignedVars[threadThread10of10ForFork0_~arg.base, threadThread10of10ForFork0_~arg.offset, threadThread10of10ForFork0_#res.offset, threadThread10of10ForFork0_#in~arg.base, threadThread10of10ForFork0_#res.base, threadThread10of10ForFork0_#in~arg.offset, threadThread10of10ForFork0_thidvar0, threadThread10of10ForFork0_~thread~0] 16955#[threadENTRY, L724-4, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1559] 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] 20407#[threadENTRY, L724-5, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1688] L724-5-->L723-5: Formula: (= (+ |v_ULTIMATE.start_main_~i~0#1_551| 1) |v_ULTIMATE.start_main_~i~0#1_550|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_551|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_243|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_550|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_189|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1] 24595#[threadENTRY, threadENTRY, L723-5, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1709] L723-5-->L724-3: Formula: (let ((.cse0 (* |v_ULTIMATE.start_main_~i~0#1_564| 4))) (let ((.cse1 (+ |v_ULTIMATE.start_main_~#t~0#1.offset_286| .cse0))) (and (= |v_ULTIMATE.start_main_#t~pre2#1_383| |v_#pthreadsForks_172|) (= (+ |v_#pthreadsForks_172| 1) |v_#pthreadsForks_171|) (<= (+ |v_ULTIMATE.start_main_~#t~0#1.offset_286| .cse0 4) (select |v_#length_361| |v_ULTIMATE.start_main_~#t~0#1.base_342|)) (<= 0 .cse1) (= (select |v_#valid_504| |v_ULTIMATE.start_main_~#t~0#1.base_342|) 1) (= (store |v_#memory_int_313| |v_ULTIMATE.start_main_~#t~0#1.base_342| (store (select |v_#memory_int_313| |v_ULTIMATE.start_main_~#t~0#1.base_342|) .cse1 |v_ULTIMATE.start_main_#t~pre2#1_383|)) |v_#memory_int_312|) (<= |v_ULTIMATE.start_main_~i~0#1_564| 15)))) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_564|, #pthreadsForks=|v_#pthreadsForks_172|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_286|, #valid=|v_#valid_504|, #memory_int=|v_#memory_int_313|, #length=|v_#length_361|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_342|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_564|, #pthreadsForks=|v_#pthreadsForks_171|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_286|, #valid=|v_#valid_504|, #memory_int=|v_#memory_int_312|, #length=|v_#length_361|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_342|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_383|} AuxVars[] AssignedVars[#pthreadsForks, #memory_int, ULTIMATE.start_main_#t~pre2#1] 29753#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, L724-3, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY]don't care [1613] L724-3-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 36021#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, threadENTRY, threadENTRY, threadENTRY]don't care [2022-07-26 14:01:07,948 INFO L735 eck$LassoCheckResult]: Loop: 36021#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, threadENTRY, threadENTRY, threadENTRY]don't care [1614] ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 36021#[threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, threadENTRY, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, threadENTRY, threadENTRY, threadENTRY]don't care [2022-07-26 14:01:07,948 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:01:07,948 INFO L85 PathProgramCache]: Analyzing trace with hash 1295900128, now seen corresponding path program 1 times [2022-07-26 14:01:07,948 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:01:07,948 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2035034664] [2022-07-26 14:01:07,948 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:01:07,949 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:01:07,976 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:01:07,976 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 14:01:07,983 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:01:07,988 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 14:01:07,989 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:01:07,989 INFO L85 PathProgramCache]: Analyzing trace with hash 1645, now seen corresponding path program 1 times [2022-07-26 14:01:07,989 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:01:07,989 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [982435247] [2022-07-26 14:01:07,989 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:01:07,989 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:01:07,992 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:01:07,992 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 14:01:07,993 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:01:07,994 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 14:01:07,994 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-07-26 14:01:07,995 INFO L85 PathProgramCache]: Analyzing trace with hash 1518199918, now seen corresponding path program 1 times [2022-07-26 14:01:07,995 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-07-26 14:01:07,995 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1121879858] [2022-07-26 14:01:07,995 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-07-26 14:01:07,995 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-07-26 14:01:08,009 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:01:08,009 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-07-26 14:01:08,017 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-07-26 14:01:08,025 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-07-26 14:01:18,286 WARN L233 SmtUtils]: Spent 10.26s on a formula simplification. DAG size of input: 336 DAG size of output: 288 (called from [L 277] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.cfg.transitions.TransFormulaUtils.sequentialComposition) [2022-07-26 14:01:20,316 WARN L146 chiAutomizerObserver]: 10 thread instances were not sufficient, I will increase this number and restart the analysis [2022-07-26 14:01:20,333 INFO L144 ThreadInstanceAdder]: Constructed 11 joinOtherThreadTransitions. [2022-07-26 14:01:20,336 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 137 places, 129 transitions, 456 flow [2022-07-26 14:01:24,609 INFO L129 PetriNetUnfolder]: 11301/40207 cut-off events. [2022-07-26 14:01:24,610 INFO L130 PetriNetUnfolder]: For 11539/11539 co-relation queries the response was YES. [2022-07-26 14:01:24,790 INFO L84 FinitePrefix]: Finished finitePrefix Result has 51571 conditions, 40207 events. 11301/40207 cut-off events. For 11539/11539 co-relation queries the response was YES. Maximal size of possible extension queue 763. Compared 470695 event pairs, 7181 based on Foata normal form. 0/36075 useless extension candidates. Maximal degree in co-relation 24896. Up to 11264 conditions per place. [2022-07-26 14:01:24,790 INFO L82 GeneralOperation]: Start removeDead. Operand has 137 places, 129 transitions, 456 flow [2022-07-26 14:01:25,225 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 137 places, 129 transitions, 456 flow [2022-07-26 14:01:25,226 INFO L115 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-07-26 14:01:25,226 INFO L131 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 137 places, 129 transitions, 456 flow [2022-07-26 14:01:25,226 INFO L110 LiptonReduction]: Starting Lipton reduction on Petri net that has 137 places, 129 transitions, 456 flow [2022-07-26 14:01:25,226 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 137 places, 129 transitions, 456 flow [2022-07-26 14:01:29,289 INFO L129 PetriNetUnfolder]: 11301/40207 cut-off events. [2022-07-26 14:01:29,290 INFO L130 PetriNetUnfolder]: For 11539/11539 co-relation queries the response was YES. [2022-07-26 14:01:29,473 INFO L84 FinitePrefix]: Finished finitePrefix Result has 51571 conditions, 40207 events. 11301/40207 cut-off events. For 11539/11539 co-relation queries the response was YES. Maximal size of possible extension queue 753. Compared 470647 event pairs, 7181 based on Foata normal form. 0/36075 useless extension candidates. Maximal degree in co-relation 24896. Up to 11264 conditions per place. [2022-07-26 14:01:30,041 INFO L116 LiptonReduction]: Number of co-enabled transitions 7920 [2022-07-26 14:01:31,672 INFO L131 LiptonReduction]: Checked pairs total: 15251 [2022-07-26 14:01:31,673 INFO L133 LiptonReduction]: Total number of compositions: 88 [2022-07-26 14:01:31,673 INFO L301 stractBuchiCegarLoop]: Interprodecural is true [2022-07-26 14:01:31,674 INFO L302 stractBuchiCegarLoop]: Hoare is false [2022-07-26 14:01:31,674 INFO L303 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2022-07-26 14:01:31,674 INFO L304 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2022-07-26 14:01:31,674 INFO L305 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2022-07-26 14:01:31,674 INFO L306 stractBuchiCegarLoop]: Difference is false [2022-07-26 14:01:31,674 INFO L307 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2022-07-26 14:01:31,674 INFO L311 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2022-07-26 14:01:31,674 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 0 states, but on-demand construction may add more states