/usr/bin/java -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data -s ../../../trunk/examples/settings/automizer/concurrent/svcomp-Reach-32bit-Automizer_Default-noMmResRef-PN-RepeatedSemanticLbeWithPredicates.epf -tc ../../../trunk/examples/toolchains/AutomizerCInline.xml -i ../../../trunk/examples/svcomp/weaver/popl20-prod-cons.wvr.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-wip.dk.repeated-lipton-8d0d62b [2022-12-06 05:37:49,500 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-12-06 05:37:49,502 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-12-06 05:37:49,539 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-12-06 05:37:49,541 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-12-06 05:37:49,544 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-12-06 05:37:49,547 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-12-06 05:37:49,551 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-12-06 05:37:49,554 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-12-06 05:37:49,559 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-12-06 05:37:49,560 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-12-06 05:37:49,562 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-12-06 05:37:49,562 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-12-06 05:37:49,564 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-12-06 05:37:49,565 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-12-06 05:37:49,567 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-12-06 05:37:49,568 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-12-06 05:37:49,568 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-12-06 05:37:49,570 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-12-06 05:37:49,571 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-12-06 05:37:49,572 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-12-06 05:37:49,573 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-12-06 05:37:49,574 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-12-06 05:37:49,574 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-12-06 05:37:49,580 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-12-06 05:37:49,580 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-12-06 05:37:49,581 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-12-06 05:37:49,581 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-12-06 05:37:49,582 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-12-06 05:37:49,582 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-12-06 05:37:49,582 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-12-06 05:37:49,583 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-12-06 05:37:49,584 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-12-06 05:37:49,584 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-12-06 05:37:49,585 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-12-06 05:37:49,585 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-12-06 05:37:49,586 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-12-06 05:37:49,586 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-12-06 05:37:49,586 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-12-06 05:37:49,587 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-12-06 05:37:49,587 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-12-06 05:37:49,594 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/concurrent/svcomp-Reach-32bit-Automizer_Default-noMmResRef-PN-RepeatedSemanticLbeWithPredicates.epf [2022-12-06 05:37:49,626 INFO L113 SettingsManager]: Loading preferences was successful [2022-12-06 05:37:49,626 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-12-06 05:37:49,628 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-12-06 05:37:49,628 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-12-06 05:37:49,628 INFO L138 SettingsManager]: * Use SBE=true [2022-12-06 05:37:49,629 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-12-06 05:37:49,629 INFO L138 SettingsManager]: * sizeof long=4 [2022-12-06 05:37:49,629 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-12-06 05:37:49,629 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-12-06 05:37:49,629 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-12-06 05:37:49,630 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-12-06 05:37:49,630 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-12-06 05:37:49,630 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-12-06 05:37:49,631 INFO L138 SettingsManager]: * sizeof long double=12 [2022-12-06 05:37:49,631 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-12-06 05:37:49,631 INFO L138 SettingsManager]: * Use constant arrays=true [2022-12-06 05:37:49,631 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-12-06 05:37:49,631 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-12-06 05:37:49,631 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-12-06 05:37:49,631 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-12-06 05:37:49,632 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-12-06 05:37:49,632 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-12-06 05:37:49,632 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-12-06 05:37:49,632 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-12-06 05:37:49,632 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-12-06 05:37:49,632 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-12-06 05:37:49,632 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-12-06 05:37:49,633 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=REPEATED_LIPTON_PN [2022-12-06 05:37:49,633 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode 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-12-06 05:37:49,936 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-12-06 05:37:49,974 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-12-06 05:37:49,976 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-12-06 05:37:49,977 INFO L271 PluginConnector]: Initializing CDTParser... [2022-12-06 05:37:49,979 INFO L275 PluginConnector]: CDTParser initialized [2022-12-06 05:37:49,980 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/weaver/popl20-prod-cons.wvr.c [2022-12-06 05:37:51,223 INFO L500 CDTParser]: Created temporary CDT project at NULL [2022-12-06 05:37:51,436 INFO L351 CDTParser]: Found 1 translation units. [2022-12-06 05:37:51,437 INFO L172 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/weaver/popl20-prod-cons.wvr.c [2022-12-06 05:37:51,445 INFO L394 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/57b3920fa/d7a71820e7fd4eee966f09bc01fa8436/FLAGe935aba65 [2022-12-06 05:37:51,462 INFO L402 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/57b3920fa/d7a71820e7fd4eee966f09bc01fa8436 [2022-12-06 05:37:51,464 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-12-06 05:37:51,466 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-12-06 05:37:51,470 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-12-06 05:37:51,470 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-12-06 05:37:51,472 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-12-06 05:37:51,473 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 06.12 05:37:51" (1/1) ... [2022-12-06 05:37:51,474 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@6404dce4 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.12 05:37:51, skipping insertion in model container [2022-12-06 05:37:51,474 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 06.12 05:37:51" (1/1) ... [2022-12-06 05:37:51,479 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-12-06 05:37:51,500 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-12-06 05:37:51,658 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_begin [2022-12-06 05:37:51,661 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_end [2022-12-06 05:37:51,662 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_begin [2022-12-06 05:37:51,664 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_end [2022-12-06 05:37:51,667 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_begin [2022-12-06 05:37:51,669 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_end [2022-12-06 05:37:51,669 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_begin [2022-12-06 05:37:51,671 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_end [2022-12-06 05:37:51,671 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_begin [2022-12-06 05:37:51,672 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_end [2022-12-06 05:37:51,672 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_begin [2022-12-06 05:37:51,677 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_end [2022-12-06 05:37:51,678 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_begin [2022-12-06 05:37:51,679 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_end [2022-12-06 05:37:51,689 WARN L237 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/weaver/popl20-prod-cons.wvr.c[3056,3069] [2022-12-06 05:37:51,703 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-12-06 05:37:51,712 INFO L203 MainTranslator]: Completed pre-run [2022-12-06 05:37:51,727 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_begin [2022-12-06 05:37:51,728 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_end [2022-12-06 05:37:51,729 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_begin [2022-12-06 05:37:51,731 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_end [2022-12-06 05:37:51,734 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_begin [2022-12-06 05:37:51,735 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_end [2022-12-06 05:37:51,735 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_begin [2022-12-06 05:37:51,736 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_end [2022-12-06 05:37:51,738 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_begin [2022-12-06 05:37:51,738 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_end [2022-12-06 05:37:51,738 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_begin [2022-12-06 05:37:51,743 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_end [2022-12-06 05:37:51,745 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_begin [2022-12-06 05:37:51,746 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_end [2022-12-06 05:37:51,754 WARN L237 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/weaver/popl20-prod-cons.wvr.c[3056,3069] [2022-12-06 05:37:51,763 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-12-06 05:37:51,776 INFO L208 MainTranslator]: Completed translation [2022-12-06 05:37:51,777 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.12 05:37:51 WrapperNode [2022-12-06 05:37:51,777 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-12-06 05:37:51,778 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-12-06 05:37:51,779 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-12-06 05:37:51,779 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-12-06 05:37:51,785 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.12 05:37:51" (1/1) ... [2022-12-06 05:37:51,801 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.12 05:37:51" (1/1) ... [2022-12-06 05:37:51,831 INFO L138 Inliner]: procedures = 25, calls = 50, calls flagged for inlining = 10, calls inlined = 10, statements flattened = 166 [2022-12-06 05:37:51,832 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-12-06 05:37:51,833 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-12-06 05:37:51,833 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-12-06 05:37:51,833 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-12-06 05:37:51,840 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.12 05:37:51" (1/1) ... [2022-12-06 05:37:51,841 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.12 05:37:51" (1/1) ... [2022-12-06 05:37:51,852 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.12 05:37:51" (1/1) ... [2022-12-06 05:37:51,853 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.12 05:37:51" (1/1) ... [2022-12-06 05:37:51,858 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.12 05:37:51" (1/1) ... [2022-12-06 05:37:51,861 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.12 05:37:51" (1/1) ... [2022-12-06 05:37:51,862 INFO L185 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.12 05:37:51" (1/1) ... [2022-12-06 05:37:51,863 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.12 05:37:51" (1/1) ... [2022-12-06 05:37:51,865 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-12-06 05:37:51,866 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-12-06 05:37:51,866 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-12-06 05:37:51,866 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-12-06 05:37:51,867 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.12 05:37:51" (1/1) ... [2022-12-06 05:37:51,872 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-12-06 05:37:51,883 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-12-06 05:37:51,895 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-12-06 05:37:51,911 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-12-06 05:37:51,938 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-12-06 05:37:51,939 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-12-06 05:37:51,939 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-12-06 05:37:51,939 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-12-06 05:37:51,939 INFO L130 BoogieDeclarations]: Found specification of procedure thread1 [2022-12-06 05:37:51,939 INFO L138 BoogieDeclarations]: Found implementation of procedure thread1 [2022-12-06 05:37:51,939 INFO L130 BoogieDeclarations]: Found specification of procedure thread2 [2022-12-06 05:37:51,939 INFO L138 BoogieDeclarations]: Found implementation of procedure thread2 [2022-12-06 05:37:51,939 INFO L130 BoogieDeclarations]: Found specification of procedure thread3 [2022-12-06 05:37:51,939 INFO L138 BoogieDeclarations]: Found implementation of procedure thread3 [2022-12-06 05:37:51,939 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-12-06 05:37:51,939 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2022-12-06 05:37:51,939 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2022-12-06 05:37:51,940 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2022-12-06 05:37:51,940 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-12-06 05:37:51,940 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-12-06 05:37:51,940 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-12-06 05:37:51,941 WARN L210 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement [2022-12-06 05:37:52,034 INFO L236 CfgBuilder]: Building ICFG [2022-12-06 05:37:52,036 INFO L262 CfgBuilder]: Building CFG for each procedure with an implementation [2022-12-06 05:37:52,297 INFO L277 CfgBuilder]: Performing block encoding [2022-12-06 05:37:52,371 INFO L297 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-12-06 05:37:52,372 INFO L302 CfgBuilder]: Removed 3 assume(true) statements. [2022-12-06 05:37:52,374 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 06.12 05:37:52 BoogieIcfgContainer [2022-12-06 05:37:52,374 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-12-06 05:37:52,376 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-12-06 05:37:52,376 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-12-06 05:37:52,379 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-12-06 05:37:52,379 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 06.12 05:37:51" (1/3) ... [2022-12-06 05:37:52,379 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@8a728c8 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 06.12 05:37:52, skipping insertion in model container [2022-12-06 05:37:52,380 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.12 05:37:51" (2/3) ... [2022-12-06 05:37:52,380 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@8a728c8 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 06.12 05:37:52, skipping insertion in model container [2022-12-06 05:37:52,380 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 06.12 05:37:52" (3/3) ... [2022-12-06 05:37:52,381 INFO L112 eAbstractionObserver]: Analyzing ICFG popl20-prod-cons.wvr.c [2022-12-06 05:37:52,397 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-12-06 05:37:52,397 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-12-06 05:37:52,397 INFO L515 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2022-12-06 05:37:52,479 INFO L144 ThreadInstanceAdder]: Constructed 3 joinOtherThreadTransitions. [2022-12-06 05:37:52,513 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 143 places, 144 transitions, 312 flow [2022-12-06 05:37:52,585 INFO L130 PetriNetUnfolder]: 11/141 cut-off events. [2022-12-06 05:37:52,585 INFO L131 PetriNetUnfolder]: For 3/3 co-relation queries the response was YES. [2022-12-06 05:37:52,590 INFO L83 FinitePrefix]: Finished finitePrefix Result has 154 conditions, 141 events. 11/141 cut-off events. For 3/3 co-relation queries the response was YES. Maximal size of possible extension queue 3. Compared 82 event pairs, 0 based on Foata normal form. 0/129 useless extension candidates. Maximal degree in co-relation 112. Up to 3 conditions per place. [2022-12-06 05:37:52,590 INFO L82 GeneralOperation]: Start removeDead. Operand has 143 places, 144 transitions, 312 flow [2022-12-06 05:37:52,594 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 130 places, 131 transitions, 280 flow [2022-12-06 05:37:52,596 INFO L195 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-12-06 05:37:52,612 INFO L167 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 130 places, 131 transitions, 280 flow [2022-12-06 05:37:52,621 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 130 places, 131 transitions, 280 flow [2022-12-06 05:37:52,682 INFO L130 PetriNetUnfolder]: 11/131 cut-off events. [2022-12-06 05:37:52,683 INFO L131 PetriNetUnfolder]: For 3/3 co-relation queries the response was YES. [2022-12-06 05:37:52,685 INFO L83 FinitePrefix]: Finished finitePrefix Result has 144 conditions, 131 events. 11/131 cut-off events. For 3/3 co-relation queries the response was YES. Maximal size of possible extension queue 3. Compared 81 event pairs, 0 based on Foata normal form. 0/120 useless extension candidates. Maximal degree in co-relation 112. Up to 3 conditions per place. [2022-12-06 05:37:52,690 INFO L184 LiptonReduction]: Starting Lipton reduction on Petri net that has 130 places, 131 transitions, 280 flow [2022-12-06 05:37:52,690 INFO L188 LiptonReduction]: Number of co-enabled transitions 1082 [2022-12-06 05:37:58,279 INFO L203 LiptonReduction]: Total number of compositions: 105 [2022-12-06 05:37:58,298 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-12-06 05:37:58,303 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=false, mAutomataTypeConcurrency=REPEATED_LIPTON_PN, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=[Lde.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings;@1e672b1c, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, Conditionality=CONDITIONAL_DISJUNCTIVE, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2022-12-06 05:37:58,303 INFO L358 AbstractCegarLoop]: Starting to check reachability of 4 error locations. [2022-12-06 05:37:58,308 INFO L130 PetriNetUnfolder]: 3/24 cut-off events. [2022-12-06 05:37:58,308 INFO L131 PetriNetUnfolder]: For 3/3 co-relation queries the response was YES. [2022-12-06 05:37:58,309 INFO L205 CegarLoopForPetriNet]: Found error trace [2022-12-06 05:37:58,309 INFO L213 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-12-06 05:37:58,310 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2022-12-06 05:37:58,314 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-12-06 05:37:58,314 INFO L85 PathProgramCache]: Analyzing trace with hash -929749668, now seen corresponding path program 1 times [2022-12-06 05:37:58,322 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-12-06 05:37:58,322 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [457873007] [2022-12-06 05:37:58,322 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 05:37:58,323 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-12-06 05:37:58,458 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 05:37:58,671 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-12-06 05:37:58,672 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-12-06 05:37:58,672 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [457873007] [2022-12-06 05:37:58,672 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [457873007] provided 1 perfect and 0 imperfect interpolant sequences [2022-12-06 05:37:58,672 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-12-06 05:37:58,673 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-12-06 05:37:58,674 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [559245767] [2022-12-06 05:37:58,674 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-12-06 05:37:58,681 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-12-06 05:37:58,681 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-12-06 05:37:58,702 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-12-06 05:37:58,702 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-12-06 05:37:58,703 INFO L490 CegarLoopForPetriNet]: Number of universal loopers: 2 out of 25 [2022-12-06 05:37:58,705 INFO L100 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 32 places, 25 transitions, 68 flow. Second operand has 4 states, 4 states have (on average 6.5) internal successors, (26), 4 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-12-06 05:37:58,705 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-12-06 05:37:58,706 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 2 of 25 [2022-12-06 05:37:58,706 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-12-06 05:37:58,868 INFO L130 PetriNetUnfolder]: 238/394 cut-off events. [2022-12-06 05:37:58,868 INFO L131 PetriNetUnfolder]: For 37/37 co-relation queries the response was YES. [2022-12-06 05:37:58,869 INFO L83 FinitePrefix]: Finished finitePrefix Result has 809 conditions, 394 events. 238/394 cut-off events. For 37/37 co-relation queries the response was YES. Maximal size of possible extension queue 37. Compared 1526 event pairs, 14 based on Foata normal form. 0/331 useless extension candidates. Maximal degree in co-relation 687. Up to 129 conditions per place. [2022-12-06 05:37:58,872 INFO L137 encePairwiseOnDemand]: 20/25 looper letters, 44 selfloop transitions, 5 changer transitions 0/51 dead transitions. [2022-12-06 05:37:58,872 INFO L142 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 36 places, 51 transitions, 230 flow [2022-12-06 05:37:58,874 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-12-06 05:37:58,876 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2022-12-06 05:37:58,882 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 61 transitions. [2022-12-06 05:37:58,885 INFO L535 CegarLoopForPetriNet]: DFA transition density 0.488 [2022-12-06 05:37:58,887 INFO L175 Difference]: Start difference. First operand has 32 places, 25 transitions, 68 flow. Second operand 5 states and 61 transitions. [2022-12-06 05:37:58,888 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 36 places, 51 transitions, 230 flow [2022-12-06 05:37:58,890 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 29 places, 51 transitions, 207 flow, removed 0 selfloop flow, removed 7 redundant places. [2022-12-06 05:37:58,892 INFO L231 Difference]: Finished difference. Result has 32 places, 28 transitions, 84 flow [2022-12-06 05:37:58,893 INFO L276 CegarLoopForPetriNet]: {PETRI_ALPHABET=25, PETRI_DIFFERENCE_MINUEND_FLOW=54, PETRI_DIFFERENCE_MINUEND_PLACES=25, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=25, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=21, PETRI_DIFFERENCE_SUBTRAHEND_STATES=5, PETRI_FLOW=84, PETRI_PLACES=32, PETRI_TRANSITIONS=28} [2022-12-06 05:37:58,897 INFO L294 CegarLoopForPetriNet]: 32 programPoint places, 0 predicate places. [2022-12-06 05:37:58,898 WARN L163 eatedLiptonReduction]: Counterexample is not a run of mAbstraction. Replaying acceptance of the word... [2022-12-06 05:37:58,901 INFO L89 Accepts]: Start accepts. Operand has 32 places, 28 transitions, 84 flow [2022-12-06 05:37:58,905 INFO L95 Accepts]: Finished accepts. [2022-12-06 05:37:58,906 INFO L195 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-12-06 05:37:58,906 INFO L167 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 32 places, 28 transitions, 84 flow [2022-12-06 05:37:58,908 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 32 places, 28 transitions, 84 flow [2022-12-06 05:37:58,915 INFO L130 PetriNetUnfolder]: 5/31 cut-off events. [2022-12-06 05:37:58,915 INFO L131 PetriNetUnfolder]: For 3/3 co-relation queries the response was YES. [2022-12-06 05:37:58,916 INFO L83 FinitePrefix]: Finished finitePrefix Result has 51 conditions, 31 events. 5/31 cut-off events. For 3/3 co-relation queries the response was YES. Maximal size of possible extension queue 4. Compared 34 event pairs, 0 based on Foata normal form. 0/29 useless extension candidates. Maximal degree in co-relation 30. Up to 5 conditions per place. [2022-12-06 05:37:58,918 INFO L184 LiptonReduction]: Starting Lipton reduction on Petri net that has 32 places, 28 transitions, 84 flow [2022-12-06 05:37:58,918 INFO L188 LiptonReduction]: Number of co-enabled transitions 186 [2022-12-06 05:37:58,931 INFO L203 LiptonReduction]: Total number of compositions: 0 [2022-12-06 05:37:58,934 INFO L143 eatedLiptonReduction]: Time needed for LBE in milliseconds: 37 [2022-12-06 05:37:58,934 INFO L495 AbstractCegarLoop]: Abstraction has has 32 places, 28 transitions, 84 flow [2022-12-06 05:37:58,934 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 6.5) internal successors, (26), 4 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-12-06 05:37:58,934 INFO L205 CegarLoopForPetriNet]: Found error trace [2022-12-06 05:37:58,935 INFO L213 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-12-06 05:37:58,935 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-12-06 05:37:58,939 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2022-12-06 05:37:58,940 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-12-06 05:37:58,940 INFO L85 PathProgramCache]: Analyzing trace with hash -1958544500, now seen corresponding path program 2 times [2022-12-06 05:37:58,940 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-12-06 05:37:58,940 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1970314718] [2022-12-06 05:37:58,940 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 05:37:58,940 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-12-06 05:37:59,026 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 05:37:59,221 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-12-06 05:37:59,222 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-12-06 05:37:59,222 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1970314718] [2022-12-06 05:37:59,222 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1970314718] provided 1 perfect and 0 imperfect interpolant sequences [2022-12-06 05:37:59,222 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-12-06 05:37:59,222 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-12-06 05:37:59,222 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1249534463] [2022-12-06 05:37:59,223 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-12-06 05:37:59,224 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-12-06 05:37:59,225 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-12-06 05:37:59,225 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-12-06 05:37:59,225 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2022-12-06 05:37:59,225 INFO L490 CegarLoopForPetriNet]: Number of universal loopers: 0 out of 25 [2022-12-06 05:37:59,225 INFO L100 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 32 places, 28 transitions, 84 flow. Second operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-12-06 05:37:59,226 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-12-06 05:37:59,226 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 0 of 25 [2022-12-06 05:37:59,226 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-12-06 05:37:59,436 INFO L130 PetriNetUnfolder]: 474/756 cut-off events. [2022-12-06 05:37:59,436 INFO L131 PetriNetUnfolder]: For 199/199 co-relation queries the response was YES. [2022-12-06 05:37:59,439 INFO L83 FinitePrefix]: Finished finitePrefix Result has 1752 conditions, 756 events. 474/756 cut-off events. For 199/199 co-relation queries the response was YES. Maximal size of possible extension queue 41. Compared 2878 event pairs, 37 based on Foata normal form. 20/717 useless extension candidates. Maximal degree in co-relation 658. Up to 278 conditions per place. [2022-12-06 05:37:59,443 INFO L137 encePairwiseOnDemand]: 18/25 looper letters, 59 selfloop transitions, 6 changer transitions 4/69 dead transitions. [2022-12-06 05:37:59,443 INFO L142 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 38 places, 69 transitions, 318 flow [2022-12-06 05:37:59,443 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-12-06 05:37:59,443 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2022-12-06 05:37:59,445 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 69 transitions. [2022-12-06 05:37:59,446 INFO L535 CegarLoopForPetriNet]: DFA transition density 0.3942857142857143 [2022-12-06 05:37:59,446 INFO L175 Difference]: Start difference. First operand has 32 places, 28 transitions, 84 flow. Second operand 7 states and 69 transitions. [2022-12-06 05:37:59,446 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 38 places, 69 transitions, 318 flow [2022-12-06 05:37:59,449 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 37 places, 69 transitions, 314 flow, removed 0 selfloop flow, removed 1 redundant places. [2022-12-06 05:37:59,450 INFO L231 Difference]: Finished difference. Result has 39 places, 27 transitions, 98 flow [2022-12-06 05:37:59,450 INFO L276 CegarLoopForPetriNet]: {PETRI_ALPHABET=25, PETRI_DIFFERENCE_MINUEND_FLOW=81, PETRI_DIFFERENCE_MINUEND_PLACES=31, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=28, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=5, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=22, PETRI_DIFFERENCE_SUBTRAHEND_STATES=7, PETRI_FLOW=98, PETRI_PLACES=39, PETRI_TRANSITIONS=27} [2022-12-06 05:37:59,451 INFO L294 CegarLoopForPetriNet]: 32 programPoint places, 7 predicate places. [2022-12-06 05:37:59,451 WARN L163 eatedLiptonReduction]: Counterexample is not a run of mAbstraction. Replaying acceptance of the word... [2022-12-06 05:37:59,451 INFO L89 Accepts]: Start accepts. Operand has 39 places, 27 transitions, 98 flow [2022-12-06 05:37:59,453 INFO L95 Accepts]: Finished accepts. [2022-12-06 05:37:59,453 INFO L195 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-12-06 05:37:59,453 INFO L167 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 39 places, 27 transitions, 98 flow [2022-12-06 05:37:59,454 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 39 places, 27 transitions, 98 flow [2022-12-06 05:37:59,458 INFO L130 PetriNetUnfolder]: 4/32 cut-off events. [2022-12-06 05:37:59,458 INFO L131 PetriNetUnfolder]: For 16/16 co-relation queries the response was YES. [2022-12-06 05:37:59,458 INFO L83 FinitePrefix]: Finished finitePrefix Result has 66 conditions, 32 events. 4/32 cut-off events. For 16/16 co-relation queries the response was YES. Maximal size of possible extension queue 4. Compared 35 event pairs, 0 based on Foata normal form. 0/31 useless extension candidates. Maximal degree in co-relation 44. Up to 5 conditions per place. [2022-12-06 05:37:59,459 INFO L184 LiptonReduction]: Starting Lipton reduction on Petri net that has 39 places, 27 transitions, 98 flow [2022-12-06 05:37:59,459 INFO L188 LiptonReduction]: Number of co-enabled transitions 176 [2022-12-06 05:37:59,469 INFO L203 LiptonReduction]: Total number of compositions: 0 [2022-12-06 05:37:59,470 INFO L143 eatedLiptonReduction]: Time needed for LBE in milliseconds: 19 [2022-12-06 05:37:59,470 INFO L495 AbstractCegarLoop]: Abstraction has has 39 places, 27 transitions, 98 flow [2022-12-06 05:37:59,471 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-12-06 05:37:59,471 INFO L205 CegarLoopForPetriNet]: Found error trace [2022-12-06 05:37:59,471 INFO L213 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-12-06 05:37:59,471 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-12-06 05:37:59,471 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2022-12-06 05:37:59,472 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-12-06 05:37:59,472 INFO L85 PathProgramCache]: Analyzing trace with hash 2099602765, now seen corresponding path program 1 times [2022-12-06 05:37:59,472 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-12-06 05:37:59,472 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1811078387] [2022-12-06 05:37:59,473 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 05:37:59,473 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-12-06 05:37:59,536 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 05:37:59,633 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-12-06 05:37:59,634 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-12-06 05:37:59,634 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1811078387] [2022-12-06 05:37:59,637 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1811078387] provided 1 perfect and 0 imperfect interpolant sequences [2022-12-06 05:37:59,637 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-12-06 05:37:59,638 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-12-06 05:37:59,638 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [954986605] [2022-12-06 05:37:59,638 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-12-06 05:37:59,638 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-12-06 05:37:59,638 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-12-06 05:37:59,639 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-12-06 05:37:59,639 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-12-06 05:37:59,639 INFO L490 CegarLoopForPetriNet]: Number of universal loopers: 3 out of 25 [2022-12-06 05:37:59,639 INFO L100 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 39 places, 27 transitions, 98 flow. Second operand has 3 states, 3 states have (on average 9.333333333333334) internal successors, (28), 3 states have internal predecessors, (28), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-12-06 05:37:59,639 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-12-06 05:37:59,639 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 3 of 25 [2022-12-06 05:37:59,640 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-12-06 05:37:59,710 INFO L130 PetriNetUnfolder]: 205/384 cut-off events. [2022-12-06 05:37:59,710 INFO L131 PetriNetUnfolder]: For 480/480 co-relation queries the response was YES. [2022-12-06 05:37:59,711 INFO L83 FinitePrefix]: Finished finitePrefix Result has 1009 conditions, 384 events. 205/384 cut-off events. For 480/480 co-relation queries the response was YES. Maximal size of possible extension queue 24. Compared 1439 event pairs, 87 based on Foata normal form. 14/354 useless extension candidates. Maximal degree in co-relation 662. Up to 264 conditions per place. [2022-12-06 05:37:59,712 INFO L137 encePairwiseOnDemand]: 22/25 looper letters, 28 selfloop transitions, 2 changer transitions 3/38 dead transitions. [2022-12-06 05:37:59,713 INFO L142 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 41 places, 38 transitions, 196 flow [2022-12-06 05:37:59,713 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-12-06 05:37:59,713 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2022-12-06 05:37:59,713 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 43 transitions. [2022-12-06 05:37:59,714 INFO L535 CegarLoopForPetriNet]: DFA transition density 0.5733333333333334 [2022-12-06 05:37:59,714 INFO L175 Difference]: Start difference. First operand has 39 places, 27 transitions, 98 flow. Second operand 3 states and 43 transitions. [2022-12-06 05:37:59,714 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 41 places, 38 transitions, 196 flow [2022-12-06 05:37:59,716 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 33 places, 38 transitions, 174 flow, removed 1 selfloop flow, removed 8 redundant places. [2022-12-06 05:37:59,717 INFO L231 Difference]: Finished difference. Result has 34 places, 28 transitions, 92 flow [2022-12-06 05:37:59,717 INFO L276 CegarLoopForPetriNet]: {PETRI_ALPHABET=25, PETRI_DIFFERENCE_MINUEND_FLOW=80, PETRI_DIFFERENCE_MINUEND_PLACES=31, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=27, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=25, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=92, PETRI_PLACES=34, PETRI_TRANSITIONS=28} [2022-12-06 05:37:59,717 INFO L294 CegarLoopForPetriNet]: 32 programPoint places, 2 predicate places. [2022-12-06 05:37:59,718 WARN L163 eatedLiptonReduction]: Counterexample is not a run of mAbstraction. Replaying acceptance of the word... [2022-12-06 05:37:59,718 INFO L89 Accepts]: Start accepts. Operand has 34 places, 28 transitions, 92 flow [2022-12-06 05:37:59,719 INFO L95 Accepts]: Finished accepts. [2022-12-06 05:37:59,719 INFO L195 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-12-06 05:37:59,719 INFO L167 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 34 places, 28 transitions, 92 flow [2022-12-06 05:37:59,719 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 34 places, 28 transitions, 92 flow [2022-12-06 05:37:59,724 INFO L130 PetriNetUnfolder]: 7/40 cut-off events. [2022-12-06 05:37:59,724 INFO L131 PetriNetUnfolder]: For 4/4 co-relation queries the response was YES. [2022-12-06 05:37:59,724 INFO L83 FinitePrefix]: Finished finitePrefix Result has 72 conditions, 40 events. 7/40 cut-off events. For 4/4 co-relation queries the response was YES. Maximal size of possible extension queue 5. Compared 60 event pairs, 0 based on Foata normal form. 0/36 useless extension candidates. Maximal degree in co-relation 52. Up to 9 conditions per place. [2022-12-06 05:37:59,724 INFO L184 LiptonReduction]: Starting Lipton reduction on Petri net that has 34 places, 28 transitions, 92 flow [2022-12-06 05:37:59,725 INFO L188 LiptonReduction]: Number of co-enabled transitions 172 [2022-12-06 05:37:59,725 INFO L203 LiptonReduction]: Total number of compositions: 0 [2022-12-06 05:37:59,726 INFO L143 eatedLiptonReduction]: Time needed for LBE in milliseconds: 8 [2022-12-06 05:37:59,726 INFO L495 AbstractCegarLoop]: Abstraction has has 34 places, 28 transitions, 92 flow [2022-12-06 05:37:59,727 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 9.333333333333334) internal successors, (28), 3 states have internal predecessors, (28), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-12-06 05:37:59,727 INFO L205 CegarLoopForPetriNet]: Found error trace [2022-12-06 05:37:59,727 INFO L213 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-12-06 05:37:59,727 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-12-06 05:37:59,727 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2022-12-06 05:37:59,727 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-12-06 05:37:59,727 INFO L85 PathProgramCache]: Analyzing trace with hash 1464739040, now seen corresponding path program 1 times [2022-12-06 05:37:59,728 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-12-06 05:37:59,728 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [811475589] [2022-12-06 05:37:59,728 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 05:37:59,728 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-12-06 05:37:59,743 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 05:37:59,819 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-12-06 05:37:59,820 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-12-06 05:37:59,820 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [811475589] [2022-12-06 05:37:59,820 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [811475589] provided 1 perfect and 0 imperfect interpolant sequences [2022-12-06 05:37:59,820 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-12-06 05:37:59,820 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-12-06 05:37:59,820 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1741700610] [2022-12-06 05:37:59,820 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-12-06 05:37:59,821 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-12-06 05:37:59,821 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-12-06 05:37:59,821 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-12-06 05:37:59,821 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-12-06 05:37:59,821 INFO L490 CegarLoopForPetriNet]: Number of universal loopers: 3 out of 25 [2022-12-06 05:37:59,822 INFO L100 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 34 places, 28 transitions, 92 flow. Second operand has 4 states, 4 states have (on average 8.25) internal successors, (33), 4 states have internal predecessors, (33), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-12-06 05:37:59,822 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-12-06 05:37:59,822 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 3 of 25 [2022-12-06 05:37:59,822 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-12-06 05:37:59,925 INFO L130 PetriNetUnfolder]: 234/450 cut-off events. [2022-12-06 05:37:59,926 INFO L131 PetriNetUnfolder]: For 293/293 co-relation queries the response was YES. [2022-12-06 05:37:59,926 INFO L83 FinitePrefix]: Finished finitePrefix Result has 1135 conditions, 450 events. 234/450 cut-off events. For 293/293 co-relation queries the response was YES. Maximal size of possible extension queue 24. Compared 1792 event pairs, 187 based on Foata normal form. 10/404 useless extension candidates. Maximal degree in co-relation 746. Up to 330 conditions per place. [2022-12-06 05:37:59,928 INFO L137 encePairwiseOnDemand]: 21/25 looper letters, 22 selfloop transitions, 2 changer transitions 12/41 dead transitions. [2022-12-06 05:37:59,928 INFO L142 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 37 places, 41 transitions, 197 flow [2022-12-06 05:37:59,929 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-12-06 05:37:59,929 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2022-12-06 05:37:59,929 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 48 transitions. [2022-12-06 05:37:59,929 INFO L535 CegarLoopForPetriNet]: DFA transition density 0.48 [2022-12-06 05:37:59,929 INFO L175 Difference]: Start difference. First operand has 34 places, 28 transitions, 92 flow. Second operand 4 states and 48 transitions. [2022-12-06 05:37:59,930 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 37 places, 41 transitions, 197 flow [2022-12-06 05:37:59,931 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 36 places, 41 transitions, 195 flow, removed 0 selfloop flow, removed 1 redundant places. [2022-12-06 05:37:59,931 INFO L231 Difference]: Finished difference. Result has 38 places, 29 transitions, 104 flow [2022-12-06 05:37:59,932 INFO L276 CegarLoopForPetriNet]: {PETRI_ALPHABET=25, PETRI_DIFFERENCE_MINUEND_FLOW=90, PETRI_DIFFERENCE_MINUEND_PLACES=33, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=28, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=26, PETRI_DIFFERENCE_SUBTRAHEND_STATES=4, PETRI_FLOW=104, PETRI_PLACES=38, PETRI_TRANSITIONS=29} [2022-12-06 05:37:59,932 INFO L294 CegarLoopForPetriNet]: 32 programPoint places, 6 predicate places. [2022-12-06 05:37:59,932 WARN L163 eatedLiptonReduction]: Counterexample is not a run of mAbstraction. Replaying acceptance of the word... [2022-12-06 05:37:59,932 INFO L89 Accepts]: Start accepts. Operand has 38 places, 29 transitions, 104 flow [2022-12-06 05:37:59,933 INFO L95 Accepts]: Finished accepts. [2022-12-06 05:37:59,933 INFO L195 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-12-06 05:37:59,933 INFO L167 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 38 places, 29 transitions, 104 flow [2022-12-06 05:37:59,934 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 37 places, 29 transitions, 104 flow [2022-12-06 05:37:59,939 INFO L130 PetriNetUnfolder]: 7/41 cut-off events. [2022-12-06 05:37:59,939 INFO L131 PetriNetUnfolder]: For 5/5 co-relation queries the response was YES. [2022-12-06 05:37:59,939 INFO L83 FinitePrefix]: Finished finitePrefix Result has 80 conditions, 41 events. 7/41 cut-off events. For 5/5 co-relation queries the response was YES. Maximal size of possible extension queue 5. Compared 60 event pairs, 0 based on Foata normal form. 0/37 useless extension candidates. Maximal degree in co-relation 66. Up to 9 conditions per place. [2022-12-06 05:37:59,939 INFO L184 LiptonReduction]: Starting Lipton reduction on Petri net that has 37 places, 29 transitions, 104 flow [2022-12-06 05:37:59,939 INFO L188 LiptonReduction]: Number of co-enabled transitions 172 [2022-12-06 05:38:00,908 INFO L203 LiptonReduction]: Total number of compositions: 1 [2022-12-06 05:38:00,909 INFO L143 eatedLiptonReduction]: Time needed for LBE in milliseconds: 977 [2022-12-06 05:38:00,909 INFO L495 AbstractCegarLoop]: Abstraction has has 36 places, 28 transitions, 100 flow [2022-12-06 05:38:00,909 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 8.25) internal successors, (33), 4 states have internal predecessors, (33), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-12-06 05:38:00,909 INFO L205 CegarLoopForPetriNet]: Found error trace [2022-12-06 05:38:00,910 INFO L213 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-12-06 05:38:00,910 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-12-06 05:38:00,910 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2022-12-06 05:38:00,910 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-12-06 05:38:00,910 INFO L85 PathProgramCache]: Analyzing trace with hash 981726719, now seen corresponding path program 1 times [2022-12-06 05:38:00,911 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-12-06 05:38:00,911 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2016076553] [2022-12-06 05:38:00,911 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 05:38:00,911 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-12-06 05:38:00,967 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 05:38:02,011 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-12-06 05:38:02,011 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-12-06 05:38:02,011 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2016076553] [2022-12-06 05:38:02,011 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2016076553] provided 0 perfect and 1 imperfect interpolant sequences [2022-12-06 05:38:02,012 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [715686991] [2022-12-06 05:38:02,012 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 05:38:02,012 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-12-06 05:38:02,012 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-12-06 05:38:02,015 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-12-06 05:38:02,051 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-12-06 05:38:02,158 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 05:38:02,165 INFO L263 TraceCheckSpWp]: Trace formula consists of 235 conjuncts, 46 conjunts are in the unsatisfiable core [2022-12-06 05:38:02,170 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-12-06 05:38:02,258 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-12-06 05:38:02,331 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-12-06 05:38:02,481 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-12-06 05:38:02,602 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-12-06 05:38:02,604 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 20 [2022-12-06 05:38:02,667 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 7 [2022-12-06 05:38:02,768 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-12-06 05:38:02,769 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-12-06 05:38:02,878 WARN L837 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_129 (Array Int Int))) (< (+ c_~d~0 (select (select (store |c_#memory_int| |c_ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) c_~queue~0.base) (+ c_~queue~0.offset (* c_~front~0 4)))) (+ c_~W~0 1))) is different from false [2022-12-06 05:38:03,252 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 1 not checked. [2022-12-06 05:38:03,252 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [715686991] provided 0 perfect and 2 imperfect interpolant sequences [2022-12-06 05:38:03,253 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-12-06 05:38:03,253 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 12, 12] total 30 [2022-12-06 05:38:03,253 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [226352807] [2022-12-06 05:38:03,253 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-12-06 05:38:03,253 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 31 states [2022-12-06 05:38:03,254 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-12-06 05:38:03,254 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 31 interpolants. [2022-12-06 05:38:03,254 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=120, Invalid=752, Unknown=2, NotChecked=56, Total=930 [2022-12-06 05:38:03,255 INFO L490 CegarLoopForPetriNet]: Number of universal loopers: 0 out of 25 [2022-12-06 05:38:03,255 INFO L100 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 36 places, 28 transitions, 100 flow. Second operand has 31 states, 31 states have (on average 1.903225806451613) internal successors, (59), 30 states have internal predecessors, (59), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-12-06 05:38:03,255 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-12-06 05:38:03,255 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 0 of 25 [2022-12-06 05:38:03,255 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-12-06 05:38:06,857 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.01s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2022-12-06 05:38:08,606 WARN L837 $PredicateComparison]: unable to prove that (let ((.cse0 (forall ((v_ArrVal_129 (Array Int Int))) (< (+ c_~d~0 (select (select (store |c_#memory_int| |c_ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) c_~queue~0.base) (+ c_~queue~0.offset (* c_~front~0 4)))) (+ c_~W~0 1))))) (and (<= |c_thread2Thread1of1ForFork2_~cond~1#1| 1) (<= 1 |c_thread2Thread1of1ForFork2_~cond~1#1|) (<= c_~v_assert~0 1) (or .cse0 (not (< c_~back~0 c_~n~0)) (not (= (select (select |c_#memory_int| c_~queue~0.base) (+ c_~queue~0.offset (* c_~back~0 4))) 1)) (not (<= 0 c_~back~0))) (<= 1 c_~v_assert~0) .cse0)) is different from false [2022-12-06 05:38:12,444 INFO L130 PetriNetUnfolder]: 2195/3675 cut-off events. [2022-12-06 05:38:12,445 INFO L131 PetriNetUnfolder]: For 2104/2104 co-relation queries the response was YES. [2022-12-06 05:38:12,449 INFO L83 FinitePrefix]: Finished finitePrefix Result has 9744 conditions, 3675 events. 2195/3675 cut-off events. For 2104/2104 co-relation queries the response was YES. Maximal size of possible extension queue 185. Compared 20785 event pairs, 72 based on Foata normal form. 49/3423 useless extension candidates. Maximal degree in co-relation 9730. Up to 744 conditions per place. [2022-12-06 05:38:12,463 INFO L137 encePairwiseOnDemand]: 5/25 looper letters, 320 selfloop transitions, 188 changer transitions 87/595 dead transitions. [2022-12-06 05:38:12,464 INFO L142 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 116 places, 595 transitions, 3003 flow [2022-12-06 05:38:12,464 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 81 states. [2022-12-06 05:38:12,464 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 81 states. [2022-12-06 05:38:12,467 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 81 states to 81 states and 582 transitions. [2022-12-06 05:38:12,468 INFO L535 CegarLoopForPetriNet]: DFA transition density 0.2874074074074074 [2022-12-06 05:38:12,468 INFO L175 Difference]: Start difference. First operand has 36 places, 28 transitions, 100 flow. Second operand 81 states and 582 transitions. [2022-12-06 05:38:12,469 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 116 places, 595 transitions, 3003 flow [2022-12-06 05:38:12,476 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 113 places, 595 transitions, 2973 flow, removed 15 selfloop flow, removed 3 redundant places. [2022-12-06 05:38:12,484 INFO L231 Difference]: Finished difference. Result has 145 places, 256 transitions, 1607 flow [2022-12-06 05:38:12,484 INFO L276 CegarLoopForPetriNet]: {PETRI_ALPHABET=25, PETRI_DIFFERENCE_MINUEND_FLOW=90, PETRI_DIFFERENCE_MINUEND_PLACES=33, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=28, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=15, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=6, PETRI_DIFFERENCE_SUBTRAHEND_STATES=81, PETRI_FLOW=1607, PETRI_PLACES=145, PETRI_TRANSITIONS=256} [2022-12-06 05:38:12,486 INFO L294 CegarLoopForPetriNet]: 32 programPoint places, 113 predicate places. [2022-12-06 05:38:12,487 WARN L163 eatedLiptonReduction]: Counterexample is not a run of mAbstraction. Replaying acceptance of the word... [2022-12-06 05:38:12,487 INFO L89 Accepts]: Start accepts. Operand has 145 places, 256 transitions, 1607 flow [2022-12-06 05:38:12,492 INFO L95 Accepts]: Finished accepts. [2022-12-06 05:38:12,493 INFO L195 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-12-06 05:38:12,494 INFO L167 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 145 places, 256 transitions, 1607 flow [2022-12-06 05:38:12,498 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 137 places, 256 transitions, 1607 flow [2022-12-06 05:38:12,682 INFO L130 PetriNetUnfolder]: 657/1531 cut-off events. [2022-12-06 05:38:12,682 INFO L131 PetriNetUnfolder]: For 16238/16496 co-relation queries the response was YES. [2022-12-06 05:38:12,690 INFO L83 FinitePrefix]: Finished finitePrefix Result has 6846 conditions, 1531 events. 657/1531 cut-off events. For 16238/16496 co-relation queries the response was YES. Maximal size of possible extension queue 116. Compared 10401 event pairs, 65 based on Foata normal form. 12/1465 useless extension candidates. Maximal degree in co-relation 6653. Up to 398 conditions per place. [2022-12-06 05:38:12,704 INFO L184 LiptonReduction]: Starting Lipton reduction on Petri net that has 137 places, 256 transitions, 1607 flow [2022-12-06 05:38:12,704 INFO L188 LiptonReduction]: Number of co-enabled transitions 1112 [2022-12-06 05:38:12,707 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] [2022-12-06 05:38:12,832 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [482] $Ultimate##0-->L81: Formula: (= |v_thread2Thread1of1ForFork2_~cond~1#1_13| v_~v_assert~0_33) InVars {~v_assert~0=v_~v_assert~0_33} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_13|, ~v_assert~0=v_~v_assert~0_33, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_17|} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~cond~1#1, thread2Thread1of1ForFork2_~temp~0#1] [2022-12-06 05:38:12,950 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [423] L78-->L81: Formula: (= v_~v_assert~0_2 |v_thread2Thread1of1ForFork2_~cond~1#1_7|) InVars {~v_assert~0=v_~v_assert~0_2} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_7|, ~v_assert~0=v_~v_assert~0_2} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~cond~1#1] [2022-12-06 05:38:13,058 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] [2022-12-06 05:38:13,175 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [528] L109-4-->L110-3: Formula: (and (= |v_ULTIMATE.start_main_#t~pre14#1_21| |v_#pthreadsForks_51|) (= |v_#pthreadsForks_50| (+ |v_#pthreadsForks_51| 1)) (= (store |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27| (store (select |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27|) |v_ULTIMATE.start_main_~#t3~0#1.offset_27| |v_ULTIMATE.start_main_#t~pre14#1_21|)) |v_#memory_int_88|)) InVars {#pthreadsForks=|v_#pthreadsForks_51|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_89|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} OutVars{ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_19|, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_21|, #pthreadsForks=|v_#pthreadsForks_50|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_88|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_11|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre12#1, ULTIMATE.start_main_#t~pre14#1, #pthreadsForks, #memory_int, ULTIMATE.start_main_#t~nondet13#1] [2022-12-06 05:38:13,305 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] [2022-12-06 05:38:15,961 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [401] $Ultimate##0-->L48-4: Formula: (= |v_thread1Thread1of1ForFork1_~w~0#1_1| v_~W~0_1) InVars {~W~0=v_~W~0_1} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_1|, ~W~0=v_~W~0_1} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_~w~0#1] and [533] L108-3-->L109-3: Formula: (and (= |v_#pthreadsForks_54| (+ |v_#pthreadsForks_55| 1)) (= (store |v_#memory_int_93| |v_ULTIMATE.start_main_~#t2~0#1.base_27| (store (select |v_#memory_int_93| |v_ULTIMATE.start_main_~#t2~0#1.base_27|) |v_ULTIMATE.start_main_~#t2~0#1.offset_27| |v_ULTIMATE.start_main_#t~pre12#1_21|)) |v_#memory_int_92|) (= |v_ULTIMATE.start_main_#t~pre12#1_21| |v_#pthreadsForks_55|)) InVars {#pthreadsForks=|v_#pthreadsForks_55|, ULTIMATE.start_main_~#t2~0#1.offset=|v_ULTIMATE.start_main_~#t2~0#1.offset_27|, #memory_int=|v_#memory_int_93|, ULTIMATE.start_main_~#t2~0#1.base=|v_ULTIMATE.start_main_~#t2~0#1.base_27|} OutVars{ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_21|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_9|, #pthreadsForks=|v_#pthreadsForks_54|, ULTIMATE.start_main_~#t2~0#1.offset=|v_ULTIMATE.start_main_~#t2~0#1.offset_27|, ULTIMATE.start_main_#t~pre10#1=|v_ULTIMATE.start_main_#t~pre10#1_29|, #memory_int=|v_#memory_int_92|, ULTIMATE.start_main_~#t2~0#1.base=|v_ULTIMATE.start_main_~#t2~0#1.base_27|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre12#1, ULTIMATE.start_main_#t~nondet11#1, #pthreadsForks, ULTIMATE.start_main_#t~pre10#1, #memory_int] [2022-12-06 05:38:16,003 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [543] L81-->L75: Formula: (and (= (select (select |v_#memory_int_104| v_~queue~0.base_55) (+ (* v_~front~0_67 4) v_~queue~0.offset_55)) |v_thread2Thread1of1ForFork2_~temp~0#1_21|) (not (= (mod |v_thread2Thread1of1ForFork2_~cond~1#1_17| 256) 0)) (not (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11| 0)) (= (+ v_~front~0_67 1) v_~front~0_66) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11| (ite (and (< v_~front~0_67 v_~n~0_56) (<= 0 v_~front~0_67) (< v_~front~0_67 v_~back~0_70)) 1 0)) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11| |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11|)) InVars {thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_17|, ~queue~0.offset=v_~queue~0.offset_55, #memory_int=|v_#memory_int_104|, ~back~0=v_~back~0_70, ~queue~0.base=v_~queue~0.base_55, ~n~0=v_~n~0_56, ~front~0=v_~front~0_67} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_17|, ~queue~0.offset=v_~queue~0.offset_55, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_21|, thread2Thread1of1ForFork2_#t~post5#1=|v_thread2Thread1of1ForFork2_#t~post5#1_11|, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11|, thread2Thread1of1ForFork2_#t~mem4#1=|v_thread2Thread1of1ForFork2_#t~mem4#1_11|, #memory_int=|v_#memory_int_104|, ~back~0=v_~back~0_70, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11|, ~queue~0.base=v_~queue~0.base_55, ~n~0=v_~n~0_56, ~front~0=v_~front~0_66} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~temp~0#1, thread2Thread1of1ForFork2_#t~post5#1, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1, thread2Thread1of1ForFork2_#t~mem4#1, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1, ~front~0] [2022-12-06 05:38:16,194 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [482] $Ultimate##0-->L81: Formula: (= |v_thread2Thread1of1ForFork2_~cond~1#1_13| v_~v_assert~0_33) InVars {~v_assert~0=v_~v_assert~0_33} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_13|, ~v_assert~0=v_~v_assert~0_33, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_17|} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~cond~1#1, thread2Thread1of1ForFork2_~temp~0#1] and [485] L55-->L48-4: Formula: (and (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9| 0)) (= (+ |v_thread1Thread1of1ForFork1_~w~0#1_21| 1) |v_thread1Thread1of1ForFork1_~w~0#1_22|) (= (ite (= (select (select |v_#memory_int_56| v_~queue~0.base_37) (+ (* 4 v_~back~0_59) v_~queue~0.offset_37)) 1) 1 0) |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|) (= v_~back~0_58 (+ v_~back~0_59 1)) (not (= (ite (and (<= 0 v_~back~0_59) (< v_~back~0_59 v_~n~0_36)) 1 0) 0))) InVars {~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_22|, ~back~0=v_~back~0_59, #memory_int=|v_#memory_int_56|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36} OutVars{~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_17|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_9|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_21|, ~back~0=v_~back~0_58, #memory_int=|v_#memory_int_56|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_9|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#t~post1#1, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread1Thread1of1ForFork1_~w~0#1, ~back~0, thread1Thread1of1ForFork1_#t~mem2#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] [2022-12-06 05:38:16,252 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [482] $Ultimate##0-->L81: Formula: (= |v_thread2Thread1of1ForFork2_~cond~1#1_13| v_~v_assert~0_33) InVars {~v_assert~0=v_~v_assert~0_33} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_13|, ~v_assert~0=v_~v_assert~0_33, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_17|} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~cond~1#1, thread2Thread1of1ForFork2_~temp~0#1] and [528] L109-4-->L110-3: Formula: (and (= |v_ULTIMATE.start_main_#t~pre14#1_21| |v_#pthreadsForks_51|) (= |v_#pthreadsForks_50| (+ |v_#pthreadsForks_51| 1)) (= (store |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27| (store (select |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27|) |v_ULTIMATE.start_main_~#t3~0#1.offset_27| |v_ULTIMATE.start_main_#t~pre14#1_21|)) |v_#memory_int_88|)) InVars {#pthreadsForks=|v_#pthreadsForks_51|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_89|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} OutVars{ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_19|, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_21|, #pthreadsForks=|v_#pthreadsForks_50|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_88|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_11|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre12#1, ULTIMATE.start_main_#t~pre14#1, #pthreadsForks, #memory_int, ULTIMATE.start_main_#t~nondet13#1] [2022-12-06 05:38:16,279 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [528] L109-4-->L110-3: Formula: (and (= |v_ULTIMATE.start_main_#t~pre14#1_21| |v_#pthreadsForks_51|) (= |v_#pthreadsForks_50| (+ |v_#pthreadsForks_51| 1)) (= (store |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27| (store (select |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27|) |v_ULTIMATE.start_main_~#t3~0#1.offset_27| |v_ULTIMATE.start_main_#t~pre14#1_21|)) |v_#memory_int_88|)) InVars {#pthreadsForks=|v_#pthreadsForks_51|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_89|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} OutVars{ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_19|, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_21|, #pthreadsForks=|v_#pthreadsForks_50|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_88|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_11|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre12#1, ULTIMATE.start_main_#t~pre14#1, #pthreadsForks, #memory_int, ULTIMATE.start_main_#t~nondet13#1] [2022-12-06 05:38:16,416 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [533] L108-3-->L109-3: Formula: (and (= |v_#pthreadsForks_54| (+ |v_#pthreadsForks_55| 1)) (= (store |v_#memory_int_93| |v_ULTIMATE.start_main_~#t2~0#1.base_27| (store (select |v_#memory_int_93| |v_ULTIMATE.start_main_~#t2~0#1.base_27|) |v_ULTIMATE.start_main_~#t2~0#1.offset_27| |v_ULTIMATE.start_main_#t~pre12#1_21|)) |v_#memory_int_92|) (= |v_ULTIMATE.start_main_#t~pre12#1_21| |v_#pthreadsForks_55|)) InVars {#pthreadsForks=|v_#pthreadsForks_55|, ULTIMATE.start_main_~#t2~0#1.offset=|v_ULTIMATE.start_main_~#t2~0#1.offset_27|, #memory_int=|v_#memory_int_93|, ULTIMATE.start_main_~#t2~0#1.base=|v_ULTIMATE.start_main_~#t2~0#1.base_27|} OutVars{ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_21|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_9|, #pthreadsForks=|v_#pthreadsForks_54|, ULTIMATE.start_main_~#t2~0#1.offset=|v_ULTIMATE.start_main_~#t2~0#1.offset_27|, ULTIMATE.start_main_#t~pre10#1=|v_ULTIMATE.start_main_#t~pre10#1_29|, #memory_int=|v_#memory_int_92|, ULTIMATE.start_main_~#t2~0#1.base=|v_ULTIMATE.start_main_~#t2~0#1.base_27|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre12#1, ULTIMATE.start_main_#t~nondet11#1, #pthreadsForks, ULTIMATE.start_main_#t~pre10#1, #memory_int] [2022-12-06 05:38:16,537 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [528] L109-4-->L110-3: Formula: (and (= |v_ULTIMATE.start_main_#t~pre14#1_21| |v_#pthreadsForks_51|) (= |v_#pthreadsForks_50| (+ |v_#pthreadsForks_51| 1)) (= (store |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27| (store (select |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27|) |v_ULTIMATE.start_main_~#t3~0#1.offset_27| |v_ULTIMATE.start_main_#t~pre14#1_21|)) |v_#memory_int_88|)) InVars {#pthreadsForks=|v_#pthreadsForks_51|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_89|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} OutVars{ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_19|, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_21|, #pthreadsForks=|v_#pthreadsForks_50|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_88|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_11|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre12#1, ULTIMATE.start_main_#t~pre14#1, #pthreadsForks, #memory_int, ULTIMATE.start_main_#t~nondet13#1] [2022-12-06 05:38:16,656 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] [2022-12-06 05:38:16,769 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [482] $Ultimate##0-->L81: Formula: (= |v_thread2Thread1of1ForFork2_~cond~1#1_13| v_~v_assert~0_33) InVars {~v_assert~0=v_~v_assert~0_33} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_13|, ~v_assert~0=v_~v_assert~0_33, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_17|} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~cond~1#1, thread2Thread1of1ForFork2_~temp~0#1] [2022-12-06 05:38:16,868 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [528] L109-4-->L110-3: Formula: (and (= |v_ULTIMATE.start_main_#t~pre14#1_21| |v_#pthreadsForks_51|) (= |v_#pthreadsForks_50| (+ |v_#pthreadsForks_51| 1)) (= (store |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27| (store (select |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27|) |v_ULTIMATE.start_main_~#t3~0#1.offset_27| |v_ULTIMATE.start_main_#t~pre14#1_21|)) |v_#memory_int_88|)) InVars {#pthreadsForks=|v_#pthreadsForks_51|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_89|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} OutVars{ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_19|, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_21|, #pthreadsForks=|v_#pthreadsForks_50|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_88|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_11|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre12#1, ULTIMATE.start_main_#t~pre14#1, #pthreadsForks, #memory_int, ULTIMATE.start_main_#t~nondet13#1] [2022-12-06 05:38:17,072 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [571] $Ultimate##0-->L55: Formula: (and (= v_~v_assert~0_157 |v_thread1Thread1of1ForFork1_~cond~0#1_83|) (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_77|) (not (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_83| 256) 0)) (= v_~W~0_105 |v_thread1Thread1of1ForFork1_~w~0#1_77|)) InVars {~v_assert~0=v_~v_assert~0_157, ~W~0=v_~W~0_105} OutVars{~v_assert~0=v_~v_assert~0_157, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_77|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_83|, ~W~0=v_~W~0_105} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_~w~0#1, thread1Thread1of1ForFork1_~cond~0#1] and [533] L108-3-->L109-3: Formula: (and (= |v_#pthreadsForks_54| (+ |v_#pthreadsForks_55| 1)) (= (store |v_#memory_int_93| |v_ULTIMATE.start_main_~#t2~0#1.base_27| (store (select |v_#memory_int_93| |v_ULTIMATE.start_main_~#t2~0#1.base_27|) |v_ULTIMATE.start_main_~#t2~0#1.offset_27| |v_ULTIMATE.start_main_#t~pre12#1_21|)) |v_#memory_int_92|) (= |v_ULTIMATE.start_main_#t~pre12#1_21| |v_#pthreadsForks_55|)) InVars {#pthreadsForks=|v_#pthreadsForks_55|, ULTIMATE.start_main_~#t2~0#1.offset=|v_ULTIMATE.start_main_~#t2~0#1.offset_27|, #memory_int=|v_#memory_int_93|, ULTIMATE.start_main_~#t2~0#1.base=|v_ULTIMATE.start_main_~#t2~0#1.base_27|} OutVars{ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_21|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_9|, #pthreadsForks=|v_#pthreadsForks_54|, ULTIMATE.start_main_~#t2~0#1.offset=|v_ULTIMATE.start_main_~#t2~0#1.offset_27|, ULTIMATE.start_main_#t~pre10#1=|v_ULTIMATE.start_main_#t~pre10#1_29|, #memory_int=|v_#memory_int_92|, ULTIMATE.start_main_~#t2~0#1.base=|v_ULTIMATE.start_main_~#t2~0#1.base_27|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre12#1, ULTIMATE.start_main_#t~nondet11#1, #pthreadsForks, ULTIMATE.start_main_#t~pre10#1, #memory_int] [2022-12-06 05:38:20,361 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [543] L81-->L75: Formula: (and (= (select (select |v_#memory_int_104| v_~queue~0.base_55) (+ (* v_~front~0_67 4) v_~queue~0.offset_55)) |v_thread2Thread1of1ForFork2_~temp~0#1_21|) (not (= (mod |v_thread2Thread1of1ForFork2_~cond~1#1_17| 256) 0)) (not (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11| 0)) (= (+ v_~front~0_67 1) v_~front~0_66) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11| (ite (and (< v_~front~0_67 v_~n~0_56) (<= 0 v_~front~0_67) (< v_~front~0_67 v_~back~0_70)) 1 0)) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11| |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11|)) InVars {thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_17|, ~queue~0.offset=v_~queue~0.offset_55, #memory_int=|v_#memory_int_104|, ~back~0=v_~back~0_70, ~queue~0.base=v_~queue~0.base_55, ~n~0=v_~n~0_56, ~front~0=v_~front~0_67} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_17|, ~queue~0.offset=v_~queue~0.offset_55, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_21|, thread2Thread1of1ForFork2_#t~post5#1=|v_thread2Thread1of1ForFork2_#t~post5#1_11|, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11|, thread2Thread1of1ForFork2_#t~mem4#1=|v_thread2Thread1of1ForFork2_#t~mem4#1_11|, #memory_int=|v_#memory_int_104|, ~back~0=v_~back~0_70, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11|, ~queue~0.base=v_~queue~0.base_55, ~n~0=v_~n~0_56, ~front~0=v_~front~0_66} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~temp~0#1, thread2Thread1of1ForFork2_#t~post5#1, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1, thread2Thread1of1ForFork2_#t~mem4#1, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1, ~front~0] [2022-12-06 05:38:20,551 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [528] L109-4-->L110-3: Formula: (and (= |v_ULTIMATE.start_main_#t~pre14#1_21| |v_#pthreadsForks_51|) (= |v_#pthreadsForks_50| (+ |v_#pthreadsForks_51| 1)) (= (store |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27| (store (select |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27|) |v_ULTIMATE.start_main_~#t3~0#1.offset_27| |v_ULTIMATE.start_main_#t~pre14#1_21|)) |v_#memory_int_88|)) InVars {#pthreadsForks=|v_#pthreadsForks_51|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_89|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} OutVars{ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_19|, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_21|, #pthreadsForks=|v_#pthreadsForks_50|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_88|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_11|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre12#1, ULTIMATE.start_main_#t~pre14#1, #pthreadsForks, #memory_int, ULTIMATE.start_main_#t~nondet13#1] [2022-12-06 05:38:20,692 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [423] L78-->L81: Formula: (= v_~v_assert~0_2 |v_thread2Thread1of1ForFork2_~cond~1#1_7|) InVars {~v_assert~0=v_~v_assert~0_2} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_7|, ~v_assert~0=v_~v_assert~0_2} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~cond~1#1] and [546] L48-4-->L55: Formula: (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_25| v_~v_assert~0_66) (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_29|) (not (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_25| 256) 0))) InVars {~v_assert~0=v_~v_assert~0_66, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_29|} OutVars{~v_assert~0=v_~v_assert~0_66, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_29|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_25|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_~cond~0#1] [2022-12-06 05:38:20,718 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [423] L78-->L81: Formula: (= v_~v_assert~0_2 |v_thread2Thread1of1ForFork2_~cond~1#1_7|) InVars {~v_assert~0=v_~v_assert~0_2} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_7|, ~v_assert~0=v_~v_assert~0_2} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~cond~1#1] and [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] [2022-12-06 05:38:20,881 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [543] L81-->L75: Formula: (and (= (select (select |v_#memory_int_104| v_~queue~0.base_55) (+ (* v_~front~0_67 4) v_~queue~0.offset_55)) |v_thread2Thread1of1ForFork2_~temp~0#1_21|) (not (= (mod |v_thread2Thread1of1ForFork2_~cond~1#1_17| 256) 0)) (not (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11| 0)) (= (+ v_~front~0_67 1) v_~front~0_66) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11| (ite (and (< v_~front~0_67 v_~n~0_56) (<= 0 v_~front~0_67) (< v_~front~0_67 v_~back~0_70)) 1 0)) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11| |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11|)) InVars {thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_17|, ~queue~0.offset=v_~queue~0.offset_55, #memory_int=|v_#memory_int_104|, ~back~0=v_~back~0_70, ~queue~0.base=v_~queue~0.base_55, ~n~0=v_~n~0_56, ~front~0=v_~front~0_67} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_17|, ~queue~0.offset=v_~queue~0.offset_55, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_21|, thread2Thread1of1ForFork2_#t~post5#1=|v_thread2Thread1of1ForFork2_#t~post5#1_11|, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11|, thread2Thread1of1ForFork2_#t~mem4#1=|v_thread2Thread1of1ForFork2_#t~mem4#1_11|, #memory_int=|v_#memory_int_104|, ~back~0=v_~back~0_70, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11|, ~queue~0.base=v_~queue~0.base_55, ~n~0=v_~n~0_56, ~front~0=v_~front~0_66} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~temp~0#1, thread2Thread1of1ForFork2_#t~post5#1, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1, thread2Thread1of1ForFork2_#t~mem4#1, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1, ~front~0] [2022-12-06 05:38:21,064 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [528] L109-4-->L110-3: Formula: (and (= |v_ULTIMATE.start_main_#t~pre14#1_21| |v_#pthreadsForks_51|) (= |v_#pthreadsForks_50| (+ |v_#pthreadsForks_51| 1)) (= (store |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27| (store (select |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27|) |v_ULTIMATE.start_main_~#t3~0#1.offset_27| |v_ULTIMATE.start_main_#t~pre14#1_21|)) |v_#memory_int_88|)) InVars {#pthreadsForks=|v_#pthreadsForks_51|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_89|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} OutVars{ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_19|, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_21|, #pthreadsForks=|v_#pthreadsForks_50|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_88|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_11|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre12#1, ULTIMATE.start_main_#t~pre14#1, #pthreadsForks, #memory_int, ULTIMATE.start_main_#t~nondet13#1] [2022-12-06 05:38:21,346 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [589] L78-->thread1EXIT: Formula: (and (= |v_thread2Thread1of1ForFork2_~cond~1#1_56| v_~v_assert~0_191) (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_59| 0)) (.cse1 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_111|)) (.cse2 (= |v_thread1Thread1of1ForFork1_#res#1.base_59| 0))) (or (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_127| |v_thread1Thread1of1ForFork1_~cond~0#1_128|) .cse0 (not .cse1) .cse2) (and .cse0 (= 0 (mod |v_thread1Thread1of1ForFork1_~cond~0#1_127| 256)) (= v_~v_assert~0_191 |v_thread1Thread1of1ForFork1_~cond~0#1_127|) .cse1 .cse2)))) InVars {~v_assert~0=v_~v_assert~0_191, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_111|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_128|} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_56|, ~v_assert~0=v_~v_assert~0_191, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_111|, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_59|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_59|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_127|} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~cond~1#1, thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [543] L81-->L75: Formula: (and (= (select (select |v_#memory_int_104| v_~queue~0.base_55) (+ (* v_~front~0_67 4) v_~queue~0.offset_55)) |v_thread2Thread1of1ForFork2_~temp~0#1_21|) (not (= (mod |v_thread2Thread1of1ForFork2_~cond~1#1_17| 256) 0)) (not (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11| 0)) (= (+ v_~front~0_67 1) v_~front~0_66) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11| (ite (and (< v_~front~0_67 v_~n~0_56) (<= 0 v_~front~0_67) (< v_~front~0_67 v_~back~0_70)) 1 0)) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11| |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11|)) InVars {thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_17|, ~queue~0.offset=v_~queue~0.offset_55, #memory_int=|v_#memory_int_104|, ~back~0=v_~back~0_70, ~queue~0.base=v_~queue~0.base_55, ~n~0=v_~n~0_56, ~front~0=v_~front~0_67} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_17|, ~queue~0.offset=v_~queue~0.offset_55, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_21|, thread2Thread1of1ForFork2_#t~post5#1=|v_thread2Thread1of1ForFork2_#t~post5#1_11|, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11|, thread2Thread1of1ForFork2_#t~mem4#1=|v_thread2Thread1of1ForFork2_#t~mem4#1_11|, #memory_int=|v_#memory_int_104|, ~back~0=v_~back~0_70, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11|, ~queue~0.base=v_~queue~0.base_55, ~n~0=v_~n~0_56, ~front~0=v_~front~0_66} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~temp~0#1, thread2Thread1of1ForFork2_#t~post5#1, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1, thread2Thread1of1ForFork2_#t~mem4#1, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1, ~front~0] [2022-12-06 05:38:21,490 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [528] L109-4-->L110-3: Formula: (and (= |v_ULTIMATE.start_main_#t~pre14#1_21| |v_#pthreadsForks_51|) (= |v_#pthreadsForks_50| (+ |v_#pthreadsForks_51| 1)) (= (store |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27| (store (select |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27|) |v_ULTIMATE.start_main_~#t3~0#1.offset_27| |v_ULTIMATE.start_main_#t~pre14#1_21|)) |v_#memory_int_88|)) InVars {#pthreadsForks=|v_#pthreadsForks_51|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_89|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} OutVars{ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_19|, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_21|, #pthreadsForks=|v_#pthreadsForks_50|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_88|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_11|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre12#1, ULTIMATE.start_main_#t~pre14#1, #pthreadsForks, #memory_int, ULTIMATE.start_main_#t~nondet13#1] [2022-12-06 05:38:21,630 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] [2022-12-06 05:38:21,741 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [528] L109-4-->L110-3: Formula: (and (= |v_ULTIMATE.start_main_#t~pre14#1_21| |v_#pthreadsForks_51|) (= |v_#pthreadsForks_50| (+ |v_#pthreadsForks_51| 1)) (= (store |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27| (store (select |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27|) |v_ULTIMATE.start_main_~#t3~0#1.offset_27| |v_ULTIMATE.start_main_#t~pre14#1_21|)) |v_#memory_int_88|)) InVars {#pthreadsForks=|v_#pthreadsForks_51|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_89|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} OutVars{ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_19|, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_21|, #pthreadsForks=|v_#pthreadsForks_50|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_88|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_11|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre12#1, ULTIMATE.start_main_#t~pre14#1, #pthreadsForks, #memory_int, ULTIMATE.start_main_#t~nondet13#1] [2022-12-06 05:38:21,872 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [543] L81-->L75: Formula: (and (= (select (select |v_#memory_int_104| v_~queue~0.base_55) (+ (* v_~front~0_67 4) v_~queue~0.offset_55)) |v_thread2Thread1of1ForFork2_~temp~0#1_21|) (not (= (mod |v_thread2Thread1of1ForFork2_~cond~1#1_17| 256) 0)) (not (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11| 0)) (= (+ v_~front~0_67 1) v_~front~0_66) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11| (ite (and (< v_~front~0_67 v_~n~0_56) (<= 0 v_~front~0_67) (< v_~front~0_67 v_~back~0_70)) 1 0)) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11| |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11|)) InVars {thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_17|, ~queue~0.offset=v_~queue~0.offset_55, #memory_int=|v_#memory_int_104|, ~back~0=v_~back~0_70, ~queue~0.base=v_~queue~0.base_55, ~n~0=v_~n~0_56, ~front~0=v_~front~0_67} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_17|, ~queue~0.offset=v_~queue~0.offset_55, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_21|, thread2Thread1of1ForFork2_#t~post5#1=|v_thread2Thread1of1ForFork2_#t~post5#1_11|, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11|, thread2Thread1of1ForFork2_#t~mem4#1=|v_thread2Thread1of1ForFork2_#t~mem4#1_11|, #memory_int=|v_#memory_int_104|, ~back~0=v_~back~0_70, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11|, ~queue~0.base=v_~queue~0.base_55, ~n~0=v_~n~0_56, ~front~0=v_~front~0_66} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~temp~0#1, thread2Thread1of1ForFork2_#t~post5#1, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1, thread2Thread1of1ForFork2_#t~mem4#1, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1, ~front~0] [2022-12-06 05:38:22,157 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [543] L81-->L75: Formula: (and (= (select (select |v_#memory_int_104| v_~queue~0.base_55) (+ (* v_~front~0_67 4) v_~queue~0.offset_55)) |v_thread2Thread1of1ForFork2_~temp~0#1_21|) (not (= (mod |v_thread2Thread1of1ForFork2_~cond~1#1_17| 256) 0)) (not (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11| 0)) (= (+ v_~front~0_67 1) v_~front~0_66) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11| (ite (and (< v_~front~0_67 v_~n~0_56) (<= 0 v_~front~0_67) (< v_~front~0_67 v_~back~0_70)) 1 0)) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11| |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11|)) InVars {thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_17|, ~queue~0.offset=v_~queue~0.offset_55, #memory_int=|v_#memory_int_104|, ~back~0=v_~back~0_70, ~queue~0.base=v_~queue~0.base_55, ~n~0=v_~n~0_56, ~front~0=v_~front~0_67} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_17|, ~queue~0.offset=v_~queue~0.offset_55, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_21|, thread2Thread1of1ForFork2_#t~post5#1=|v_thread2Thread1of1ForFork2_#t~post5#1_11|, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11|, thread2Thread1of1ForFork2_#t~mem4#1=|v_thread2Thread1of1ForFork2_#t~mem4#1_11|, #memory_int=|v_#memory_int_104|, ~back~0=v_~back~0_70, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11|, ~queue~0.base=v_~queue~0.base_55, ~n~0=v_~n~0_56, ~front~0=v_~front~0_66} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~temp~0#1, thread2Thread1of1ForFork2_#t~post5#1, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1, thread2Thread1of1ForFork2_#t~mem4#1, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1, ~front~0] [2022-12-06 05:38:22,343 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [574] $Ultimate##0-->L48-4: Formula: (and (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_17| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_17|) (= (+ v_~back~0_108 1) v_~back~0_107) (not (= (ite (and (<= 0 v_~back~0_108) (< v_~back~0_108 v_~n~0_86)) 1 0) 0)) (= |v_thread2Thread1of1ForFork2_~cond~1#1_46| v_~v_assert~0_161) (= (+ |v_thread1Thread1of1ForFork1_~w~0#1_83| 1) |v_thread1Thread1of1ForFork1_~w~0#1_84|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_17| (ite (= (select (select |v_#memory_int_167| v_~queue~0.base_88) (+ (* v_~back~0_108 4) v_~queue~0.offset_88)) 1) 1 0)) (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_17| 0))) InVars {~queue~0.offset=v_~queue~0.offset_88, ~v_assert~0=v_~v_assert~0_161, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_84|, ~back~0=v_~back~0_108, #memory_int=|v_#memory_int_167|, ~queue~0.base=v_~queue~0.base_88, ~n~0=v_~n~0_86} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_46|, ~queue~0.offset=v_~queue~0.offset_88, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_48|, ~back~0=v_~back~0_107, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_17|, ~queue~0.base=v_~queue~0.base_88, ~v_assert~0=v_~v_assert~0_161, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_25|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_17|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_17|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_83|, #memory_int=|v_#memory_int_167|, ~n~0=v_~n~0_86, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_17|} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~cond~1#1, thread2Thread1of1ForFork2_~temp~0#1, thread1Thread1of1ForFork1_#t~post1#1, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, ~back~0, thread1Thread1of1ForFork1_~w~0#1, thread1Thread1of1ForFork1_#t~mem2#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] and [528] L109-4-->L110-3: Formula: (and (= |v_ULTIMATE.start_main_#t~pre14#1_21| |v_#pthreadsForks_51|) (= |v_#pthreadsForks_50| (+ |v_#pthreadsForks_51| 1)) (= (store |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27| (store (select |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27|) |v_ULTIMATE.start_main_~#t3~0#1.offset_27| |v_ULTIMATE.start_main_#t~pre14#1_21|)) |v_#memory_int_88|)) InVars {#pthreadsForks=|v_#pthreadsForks_51|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_89|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} OutVars{ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_19|, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_21|, #pthreadsForks=|v_#pthreadsForks_50|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_88|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_11|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre12#1, ULTIMATE.start_main_#t~pre14#1, #pthreadsForks, #memory_int, ULTIMATE.start_main_#t~nondet13#1] [2022-12-06 05:38:22,411 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [574] $Ultimate##0-->L48-4: Formula: (and (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_17| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_17|) (= (+ v_~back~0_108 1) v_~back~0_107) (not (= (ite (and (<= 0 v_~back~0_108) (< v_~back~0_108 v_~n~0_86)) 1 0) 0)) (= |v_thread2Thread1of1ForFork2_~cond~1#1_46| v_~v_assert~0_161) (= (+ |v_thread1Thread1of1ForFork1_~w~0#1_83| 1) |v_thread1Thread1of1ForFork1_~w~0#1_84|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_17| (ite (= (select (select |v_#memory_int_167| v_~queue~0.base_88) (+ (* v_~back~0_108 4) v_~queue~0.offset_88)) 1) 1 0)) (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_17| 0))) InVars {~queue~0.offset=v_~queue~0.offset_88, ~v_assert~0=v_~v_assert~0_161, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_84|, ~back~0=v_~back~0_108, #memory_int=|v_#memory_int_167|, ~queue~0.base=v_~queue~0.base_88, ~n~0=v_~n~0_86} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_46|, ~queue~0.offset=v_~queue~0.offset_88, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_48|, ~back~0=v_~back~0_107, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_17|, ~queue~0.base=v_~queue~0.base_88, ~v_assert~0=v_~v_assert~0_161, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_25|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_17|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_17|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_83|, #memory_int=|v_#memory_int_167|, ~n~0=v_~n~0_86, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_17|} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~cond~1#1, thread2Thread1of1ForFork2_~temp~0#1, thread1Thread1of1ForFork1_#t~post1#1, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, ~back~0, thread1Thread1of1ForFork1_~w~0#1, thread1Thread1of1ForFork1_#t~mem2#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] and [543] L81-->L75: Formula: (and (= (select (select |v_#memory_int_104| v_~queue~0.base_55) (+ (* v_~front~0_67 4) v_~queue~0.offset_55)) |v_thread2Thread1of1ForFork2_~temp~0#1_21|) (not (= (mod |v_thread2Thread1of1ForFork2_~cond~1#1_17| 256) 0)) (not (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11| 0)) (= (+ v_~front~0_67 1) v_~front~0_66) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11| (ite (and (< v_~front~0_67 v_~n~0_56) (<= 0 v_~front~0_67) (< v_~front~0_67 v_~back~0_70)) 1 0)) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11| |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11|)) InVars {thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_17|, ~queue~0.offset=v_~queue~0.offset_55, #memory_int=|v_#memory_int_104|, ~back~0=v_~back~0_70, ~queue~0.base=v_~queue~0.base_55, ~n~0=v_~n~0_56, ~front~0=v_~front~0_67} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_17|, ~queue~0.offset=v_~queue~0.offset_55, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_21|, thread2Thread1of1ForFork2_#t~post5#1=|v_thread2Thread1of1ForFork2_#t~post5#1_11|, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11|, thread2Thread1of1ForFork2_#t~mem4#1=|v_thread2Thread1of1ForFork2_#t~mem4#1_11|, #memory_int=|v_#memory_int_104|, ~back~0=v_~back~0_70, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11|, ~queue~0.base=v_~queue~0.base_55, ~n~0=v_~n~0_56, ~front~0=v_~front~0_66} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~temp~0#1, thread2Thread1of1ForFork2_#t~post5#1, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1, thread2Thread1of1ForFork2_#t~mem4#1, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1, ~front~0] [2022-12-06 05:38:22,980 INFO L203 LiptonReduction]: Total number of compositions: 24 [2022-12-06 05:38:22,982 INFO L143 eatedLiptonReduction]: Time needed for LBE in milliseconds: 10495 [2022-12-06 05:38:22,982 INFO L495 AbstractCegarLoop]: Abstraction has has 119 places, 238 transitions, 1648 flow [2022-12-06 05:38:22,982 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 31 states, 31 states have (on average 1.903225806451613) internal successors, (59), 30 states have internal predecessors, (59), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-12-06 05:38:22,982 INFO L205 CegarLoopForPetriNet]: Found error trace [2022-12-06 05:38:22,983 INFO L213 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-12-06 05:38:22,999 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-12-06 05:38:23,196 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-12-06 05:38:23,196 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2022-12-06 05:38:23,197 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-12-06 05:38:23,197 INFO L85 PathProgramCache]: Analyzing trace with hash -226277246, now seen corresponding path program 1 times [2022-12-06 05:38:23,197 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-12-06 05:38:23,197 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1119135648] [2022-12-06 05:38:23,197 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 05:38:23,197 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-12-06 05:38:23,312 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 05:38:24,459 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-12-06 05:38:24,459 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-12-06 05:38:24,460 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1119135648] [2022-12-06 05:38:24,460 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1119135648] provided 0 perfect and 1 imperfect interpolant sequences [2022-12-06 05:38:24,460 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [661604995] [2022-12-06 05:38:24,460 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 05:38:24,460 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-12-06 05:38:24,461 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-12-06 05:38:24,464 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-12-06 05:38:24,465 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-12-06 05:38:24,574 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 05:38:24,576 INFO L263 TraceCheckSpWp]: Trace formula consists of 232 conjuncts, 26 conjunts are in the unsatisfiable core [2022-12-06 05:38:24,578 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-12-06 05:38:24,715 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 7 [2022-12-06 05:38:24,811 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-12-06 05:38:24,811 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-12-06 05:38:24,912 INFO L321 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-12-06 05:38:24,912 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 28 treesize of output 24 [2022-12-06 05:38:25,033 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-12-06 05:38:25,033 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [661604995] provided 0 perfect and 2 imperfect interpolant sequences [2022-12-06 05:38:25,033 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-12-06 05:38:25,033 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 9, 9] total 25 [2022-12-06 05:38:25,034 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1039827257] [2022-12-06 05:38:25,034 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-12-06 05:38:25,034 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 26 states [2022-12-06 05:38:25,034 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-12-06 05:38:25,034 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 26 interpolants. [2022-12-06 05:38:25,035 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=91, Invalid=559, Unknown=0, NotChecked=0, Total=650 [2022-12-06 05:38:25,035 INFO L490 CegarLoopForPetriNet]: Number of universal loopers: 0 out of 60 [2022-12-06 05:38:25,035 INFO L100 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 119 places, 238 transitions, 1648 flow. Second operand has 26 states, 26 states have (on average 2.230769230769231) internal successors, (58), 25 states have internal predecessors, (58), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-12-06 05:38:25,035 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-12-06 05:38:25,035 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 0 of 60 [2022-12-06 05:38:25,035 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-12-06 05:38:28,125 INFO L130 PetriNetUnfolder]: 3182/5457 cut-off events. [2022-12-06 05:38:28,126 INFO L131 PetriNetUnfolder]: For 56557/56557 co-relation queries the response was YES. [2022-12-06 05:38:28,143 INFO L83 FinitePrefix]: Finished finitePrefix Result has 29237 conditions, 5457 events. 3182/5457 cut-off events. For 56557/56557 co-relation queries the response was YES. Maximal size of possible extension queue 294. Compared 35162 event pairs, 183 based on Foata normal form. 44/5494 useless extension candidates. Maximal degree in co-relation 28247. Up to 1478 conditions per place. [2022-12-06 05:38:28,173 INFO L137 encePairwiseOnDemand]: 12/60 looper letters, 350 selfloop transitions, 302 changer transitions 110/762 dead transitions. [2022-12-06 05:38:28,173 INFO L142 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 166 places, 762 transitions, 7017 flow [2022-12-06 05:38:28,174 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 48 states. [2022-12-06 05:38:28,174 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 48 states. [2022-12-06 05:38:28,177 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 48 states to 48 states and 389 transitions. [2022-12-06 05:38:28,177 INFO L535 CegarLoopForPetriNet]: DFA transition density 0.13506944444444444 [2022-12-06 05:38:28,177 INFO L175 Difference]: Start difference. First operand has 119 places, 238 transitions, 1648 flow. Second operand 48 states and 389 transitions. [2022-12-06 05:38:28,177 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 166 places, 762 transitions, 7017 flow [2022-12-06 05:38:28,383 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 156 places, 762 transitions, 6537 flow, removed 177 selfloop flow, removed 10 redundant places. [2022-12-06 05:38:28,393 INFO L231 Difference]: Finished difference. Result has 181 places, 403 transitions, 3725 flow [2022-12-06 05:38:28,393 INFO L276 CegarLoopForPetriNet]: {PETRI_ALPHABET=60, PETRI_DIFFERENCE_MINUEND_FLOW=1479, PETRI_DIFFERENCE_MINUEND_PLACES=109, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=238, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=142, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=74, PETRI_DIFFERENCE_SUBTRAHEND_STATES=48, PETRI_FLOW=3725, PETRI_PLACES=181, PETRI_TRANSITIONS=403} [2022-12-06 05:38:28,394 INFO L294 CegarLoopForPetriNet]: 32 programPoint places, 149 predicate places. [2022-12-06 05:38:28,394 WARN L163 eatedLiptonReduction]: Counterexample is not a run of mAbstraction. Replaying acceptance of the word... [2022-12-06 05:38:28,394 INFO L89 Accepts]: Start accepts. Operand has 181 places, 403 transitions, 3725 flow [2022-12-06 05:38:28,399 INFO L95 Accepts]: Finished accepts. [2022-12-06 05:38:28,399 INFO L195 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-12-06 05:38:28,399 INFO L167 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 181 places, 403 transitions, 3725 flow [2022-12-06 05:38:28,402 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 174 places, 403 transitions, 3725 flow [2022-12-06 05:38:28,635 INFO L130 PetriNetUnfolder]: 872/2024 cut-off events. [2022-12-06 05:38:28,635 INFO L131 PetriNetUnfolder]: For 26925/27343 co-relation queries the response was YES. [2022-12-06 05:38:28,655 INFO L83 FinitePrefix]: Finished finitePrefix Result has 11007 conditions, 2024 events. 872/2024 cut-off events. For 26925/27343 co-relation queries the response was YES. Maximal size of possible extension queue 190. Compared 15259 event pairs, 92 based on Foata normal form. 17/1959 useless extension candidates. Maximal degree in co-relation 10893. Up to 495 conditions per place. [2022-12-06 05:38:28,675 INFO L184 LiptonReduction]: Starting Lipton reduction on Petri net that has 174 places, 403 transitions, 3725 flow [2022-12-06 05:38:28,676 INFO L188 LiptonReduction]: Number of co-enabled transitions 1804 [2022-12-06 05:38:28,679 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] [2022-12-06 05:38:28,786 INFO L203 LiptonReduction]: Total number of compositions: 1 [2022-12-06 05:38:28,787 INFO L143 eatedLiptonReduction]: Time needed for LBE in milliseconds: 393 [2022-12-06 05:38:28,787 INFO L495 AbstractCegarLoop]: Abstraction has has 173 places, 402 transitions, 3719 flow [2022-12-06 05:38:28,787 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 26 states, 26 states have (on average 2.230769230769231) internal successors, (58), 25 states have internal predecessors, (58), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-12-06 05:38:28,787 INFO L205 CegarLoopForPetriNet]: Found error trace [2022-12-06 05:38:28,787 INFO L213 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-12-06 05:38:28,794 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2022-12-06 05:38:28,997 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable5 [2022-12-06 05:38:28,997 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2022-12-06 05:38:28,997 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-12-06 05:38:28,997 INFO L85 PathProgramCache]: Analyzing trace with hash -1594200903, now seen corresponding path program 1 times [2022-12-06 05:38:28,997 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-12-06 05:38:28,997 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [277609379] [2022-12-06 05:38:28,999 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 05:38:28,999 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-12-06 05:38:29,067 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 05:38:29,232 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-12-06 05:38:29,232 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-12-06 05:38:29,232 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [277609379] [2022-12-06 05:38:29,232 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [277609379] provided 1 perfect and 0 imperfect interpolant sequences [2022-12-06 05:38:29,232 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-12-06 05:38:29,232 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-12-06 05:38:29,232 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [564116979] [2022-12-06 05:38:29,233 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-12-06 05:38:29,233 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-12-06 05:38:29,233 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-12-06 05:38:29,233 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-12-06 05:38:29,233 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-12-06 05:38:29,234 INFO L490 CegarLoopForPetriNet]: Number of universal loopers: 3 out of 60 [2022-12-06 05:38:29,234 INFO L100 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 173 places, 402 transitions, 3719 flow. Second operand has 4 states, 4 states have (on average 7.5) internal successors, (30), 4 states have internal predecessors, (30), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-12-06 05:38:29,234 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-12-06 05:38:29,234 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 3 of 60 [2022-12-06 05:38:29,235 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-12-06 05:38:30,996 INFO L130 PetriNetUnfolder]: 3840/7306 cut-off events. [2022-12-06 05:38:30,996 INFO L131 PetriNetUnfolder]: For 107513/108232 co-relation queries the response was YES. [2022-12-06 05:38:31,023 INFO L83 FinitePrefix]: Finished finitePrefix Result has 44825 conditions, 7306 events. 3840/7306 cut-off events. For 107513/108232 co-relation queries the response was YES. Maximal size of possible extension queue 506. Compared 58338 event pairs, 654 based on Foata normal form. 464/7568 useless extension candidates. Maximal degree in co-relation 44476. Up to 2622 conditions per place. [2022-12-06 05:38:31,061 INFO L137 encePairwiseOnDemand]: 44/60 looper letters, 439 selfloop transitions, 54 changer transitions 54/646 dead transitions. [2022-12-06 05:38:31,062 INFO L142 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 176 places, 646 transitions, 6987 flow [2022-12-06 05:38:31,062 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-12-06 05:38:31,062 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2022-12-06 05:38:31,063 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 126 transitions. [2022-12-06 05:38:31,063 INFO L535 CegarLoopForPetriNet]: DFA transition density 0.525 [2022-12-06 05:38:31,064 INFO L175 Difference]: Start difference. First operand has 173 places, 402 transitions, 3719 flow. Second operand 4 states and 126 transitions. [2022-12-06 05:38:31,064 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 176 places, 646 transitions, 6987 flow [2022-12-06 05:38:31,465 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 166 places, 646 transitions, 6398 flow, removed 111 selfloop flow, removed 10 redundant places. [2022-12-06 05:38:31,472 INFO L231 Difference]: Finished difference. Result has 168 places, 407 transitions, 3645 flow [2022-12-06 05:38:31,473 INFO L276 CegarLoopForPetriNet]: {PETRI_ALPHABET=60, PETRI_DIFFERENCE_MINUEND_FLOW=3270, PETRI_DIFFERENCE_MINUEND_PLACES=163, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=396, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=20, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=343, PETRI_DIFFERENCE_SUBTRAHEND_STATES=4, PETRI_FLOW=3645, PETRI_PLACES=168, PETRI_TRANSITIONS=407} [2022-12-06 05:38:31,473 INFO L294 CegarLoopForPetriNet]: 32 programPoint places, 136 predicate places. [2022-12-06 05:38:31,473 WARN L163 eatedLiptonReduction]: Counterexample is not a run of mAbstraction. Replaying acceptance of the word... [2022-12-06 05:38:31,474 INFO L89 Accepts]: Start accepts. Operand has 168 places, 407 transitions, 3645 flow [2022-12-06 05:38:31,476 INFO L95 Accepts]: Finished accepts. [2022-12-06 05:38:31,476 INFO L195 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-12-06 05:38:31,476 INFO L167 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 168 places, 407 transitions, 3645 flow [2022-12-06 05:38:31,478 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 168 places, 407 transitions, 3645 flow [2022-12-06 05:38:31,854 INFO L380 tUnfolder$Statistics]: inserting event number 4 for the transition-marking pair ([546] L48-4-->L55: Formula: (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_25| v_~v_assert~0_66) (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_29|) (not (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_25| 256) 0))) InVars {~v_assert~0=v_~v_assert~0_66, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_29|} OutVars{~v_assert~0=v_~v_assert~0_66, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_29|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_25|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_~cond~0#1][18], [Black: 442#(and (<= (+ |thread2Thread1of1ForFork2_~temp~0#1| ~d~0) ~W~0) (not (<= (mod |thread2Thread1of1ForFork2_~cond~1#1| 256) 0))), Black: 723#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (<= ~d~0 0) (<= 1 ~W~0)), Black: 394#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (not (< 0 |thread1Thread1of1ForFork1_~w~0#1|)) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)) (forall ((v_ArrVal_128 (Array Int Int)) (v_ArrVal_129 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< (+ ~d~0 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1))))) (forall ((v_ArrVal_129 (Array Int Int))) (< (+ ~d~0 (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1)))), Black: 630#(not (<= (mod |thread2Thread1of1ForFork2_~cond~1#1| 256) 0)), Black: 383#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (< |ULTIMATE.start_create_fresh_int_array_~i~0#1| |ULTIMATE.start_create_fresh_int_array_~size#1|) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)) (forall ((v_ArrVal_128 (Array Int Int)) (v_ArrVal_127 (Array Int Int)) (v_ArrVal_129 (Array Int Int))) (or (< (+ ~d~0 (select (select (store (store (store |#memory_int| |ULTIMATE.start_main_~#t1~0#1.base| v_ArrVal_127) |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) (+ (* ~front~0 4) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset|))) 2) (not (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t1~0#1.base| v_ArrVal_127) |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) (+ (* ~back~0 4) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset|)) 1))))) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (or (<= (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0 |thread1Thread1of1ForFork1_~w~0#1|) (+ ~W~0 1)) (and (or (<= (+ ~queue~0.offset (* ~back~0 4)) 0) (<= ~n~0 1)) (not (= (+ ~queue~0.offset (* ~back~0 4)) 0)))) (not (= ~queue~0.base |ULTIMATE.start_main_~#t2~0#1.base|)) (<= 0 ~front~0) (= ~queue~0.offset 0) (<= ~d~0 0) (<= (+ 2 ~queue~0.base) |ULTIMATE.start_main_~#t3~0#1.base|) (<= 1 ~W~0) (<= ~front~0 0)), Black: 602#(and (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 530#true, Black: 717#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= ~d~0 0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (or (not (< 0 |thread1Thread1of1ForFork1_~w~0#1|)) (= (* ~front~0 4) (* ~back~0 4))) (<= 0 ~front~0) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= 1 ~W~0)), Black: 295#(not (<= (mod |thread2Thread1of1ForFork2_~cond~1#1| 256) 0)), Black: 733#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 1) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (or (not (< 0 |thread1Thread1of1ForFork1_~w~0#1|)) (and (< ~d~0 ~W~0) (= (* ~front~0 4) (* ~back~0 4)))) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= 1 ~W~0)), 47#L81true, Black: 400#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (< |ULTIMATE.start_create_fresh_int_array_~i~0#1| |ULTIMATE.start_create_fresh_int_array_~size#1|) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)) (forall ((v_ArrVal_128 (Array Int Int)) (v_ArrVal_127 (Array Int Int)) (v_ArrVal_129 (Array Int Int))) (or (< (+ ~d~0 (select (select (store (store (store |#memory_int| |ULTIMATE.start_main_~#t1~0#1.base| v_ArrVal_127) |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) (+ (* ~front~0 4) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset|))) 2) (not (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t1~0#1.base| v_ArrVal_127) |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) (+ (* ~back~0 4) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset|)) 1))))) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (or (<= (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0 |thread1Thread1of1ForFork1_~w~0#1|) (+ ~W~0 1)) (and (or (<= (+ ~queue~0.offset (* ~back~0 4)) 0) (<= ~n~0 1)) (not (= (+ ~queue~0.offset (* ~back~0 4)) 0)))) (not (= ~queue~0.base |ULTIMATE.start_main_~#t2~0#1.base|)) (<= 0 ~front~0) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 0) (<= (+ 2 ~queue~0.base) |ULTIMATE.start_main_~#t3~0#1.base|) (<= 1 ~W~0) (<= ~front~0 0)), 56#$Ultimate##0true, Black: 701#(and (<= |thread1Thread1of1ForFork1_~w~0#1| ~W~0) (= ~back~0 ~front~0) (= ~v_assert~0 1) (<= ~d~0 ~W~0) (<= ~d~0 0)), Black: 739#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= ~d~0 0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (<= 0 ~front~0) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= 1 ~W~0) (= |thread2Thread1of1ForFork2_~temp~0#1| 1)), Black: 404#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (forall ((v_ArrVal_129 (Array Int Int))) (< (+ ~d~0 (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1))) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 255#(and (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 735#(and (<= |thread1Thread1of1ForFork1_~w~0#1| ~W~0) (= ~back~0 ~front~0) (= ~v_assert~0 1) (<= ~d~0 ~W~0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 0)), Black: 309#(< (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)), Black: 464#(and (or (not (< 0 |thread1Thread1of1ForFork1_~w~0#1|)) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)) (forall ((v_ArrVal_128 (Array Int Int)) (v_ArrVal_129 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< (+ ~d~0 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1))))) (not (<= (mod ~v_assert~0 256) 0))), Black: 699#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= ~d~0 0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (<= 0 ~front~0) (= ~queue~0.offset 0) (<= 1 ~W~0)), Black: 371#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (< |ULTIMATE.start_create_fresh_int_array_~i~0#1| |ULTIMATE.start_create_fresh_int_array_~size#1|) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)) (forall ((v_ArrVal_128 (Array Int Int)) (v_ArrVal_127 (Array Int Int)) (v_ArrVal_129 (Array Int Int))) (or (< (+ ~d~0 (select (select (store (store (store |#memory_int| |ULTIMATE.start_main_~#t1~0#1.base| v_ArrVal_127) |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) (+ (* ~front~0 4) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset|))) 2) (not (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t1~0#1.base| v_ArrVal_127) |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) (+ (* ~back~0 4) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset|)) 1))))) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (or (<= (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0 |thread1Thread1of1ForFork1_~w~0#1|) (+ ~W~0 1)) (and (or (<= (+ ~queue~0.offset (* ~back~0 4)) 0) (<= ~n~0 1)) (not (= (+ ~queue~0.offset (* ~back~0 4)) 0)))) (not (= ~queue~0.base |ULTIMATE.start_main_~#t2~0#1.base|)) (<= 0 ~front~0) (= ~queue~0.offset 0) (<= ~d~0 0) (<= (+ 2 ~queue~0.base) |ULTIMATE.start_main_~#t3~0#1.base|) (<= 1 ~W~0) (<= ~front~0 0)), Black: 727#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 1) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= 1 ~W~0)), Black: 697#(and (<= |thread1Thread1of1ForFork1_~w~0#1| ~W~0) (= ~d~0 0) (= ~back~0 ~front~0) (= ~v_assert~0 1) (<= ~d~0 ~W~0) (not (= ~queue~0.base |ULTIMATE.start_main_~#t2~0#1.base|)) (= ~queue~0.offset 0) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|))), Black: 747#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 0) (<= 1 ~W~0)), Black: 761#(and (not (<= (mod |thread2Thread1of1ForFork2_~cond~1#1| 256) 0)) (or (not (< 0 |thread1Thread1of1ForFork1_~w~0#1|)) (and (< ~d~0 ~W~0) (= (* ~front~0 4) (* ~back~0 4))) (= (mod ~v_assert~0 256) 0))), Black: 757#(and (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (or (not (< 0 |thread1Thread1of1ForFork1_~w~0#1|)) (and (< ~d~0 ~W~0) (= (* ~front~0 4) (* ~back~0 4))) (= (mod ~v_assert~0 256) 0))), Black: 719#(and (<= |thread1Thread1of1ForFork1_~w~0#1| ~W~0) (= ~d~0 0) (= ~back~0 ~front~0) (= ~v_assert~0 1) (<= ~d~0 ~W~0) (not (= ~queue~0.base |ULTIMATE.start_main_~#t2~0#1.base|)) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|))), Black: 674#(or (not (< 0 |thread1Thread1of1ForFork1_~w~0#1|)) (and (< ~d~0 ~W~0) (= (* ~front~0 4) (* ~back~0 4))) (= (mod ~v_assert~0 256) 0)), Black: 751#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (or (not (< 0 |thread1Thread1of1ForFork1_~w~0#1|)) (= (* ~front~0 4) (* ~back~0 4))) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 0) (<= 1 ~W~0)), Black: 149#(= |thread2Thread1of1ForFork2_~cond~1#1| 1), Black: 711#(and (<= |thread1Thread1of1ForFork1_~w~0#1| ~W~0) (= ~d~0 0) (= ~back~0 ~front~0) (= ~v_assert~0 1) (not (= ~queue~0.base |ULTIMATE.start_main_~#t2~0#1.base|)) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (<= 1 ~W~0) (= |thread2Thread1of1ForFork2_~temp~0#1| 1)), Black: 713#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= ~d~0 0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (<= 0 ~front~0) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= 1 ~W~0)), Black: 703#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= ~d~0 0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (or (not (< 0 |thread1Thread1of1ForFork1_~w~0#1|)) (= (* ~front~0 4) (* ~back~0 4))) (<= 0 ~front~0) (= ~queue~0.offset 0) (<= 1 ~W~0)), Black: 799#(<= ~back~0 ~front~0), Black: 800#(<= ~back~0 (+ ~front~0 1)), Black: 166#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 ~W~0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= (div |thread2Thread1of1ForFork2_~cond~1#1| 256) 0)), 117#L111-1true, Black: 173#(or (<= ~back~0 ~front~0) (<= ~n~0 ~front~0) (not (<= 0 ~front~0))), 743#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), 797#true, 454#(and (not (<= (mod |thread2Thread1of1ForFork2_~cond~1#1| 256) 0)) (not (<= (mod ~v_assert~0 256) 0))), 5#L55true, Black: 452#(and (<= ~d~0 ~W~0) (not (<= (mod |thread2Thread1of1ForFork2_~cond~1#1| 256) 0))), Black: 361#(and (= |ULTIMATE.start_create_fresh_int_array_~i~0#1| 1) (<= |thread1Thread1of1ForFork1_~w~0#1| ~W~0) (<= (+ 2 ~queue~0.base) |ULTIMATE.start_main_~#t2~0#1.base|) (<= ~n~0 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= ~back~0 ~front~0) (= ~v_assert~0 1) (<= ~d~0 ~W~0) (= ~queue~0.offset 0) (<= (+ |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base| 2) |ULTIMATE.start_main_~#t1~0#1.base|) (<= ~d~0 0) (<= (+ |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base| 2) |ULTIMATE.start_main_~#t3~0#1.base|) (<= (+ 2 ~queue~0.base) |ULTIMATE.start_main_~#t3~0#1.base|) (<= (+ |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base| 2) |ULTIMATE.start_main_~#t2~0#1.base|) (<= ~n~0 1) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), Black: 299#(not (<= (mod ~v_assert~0 256) 0)), Black: 456#(and (or (not (< 0 |thread1Thread1of1ForFork1_~w~0#1|)) (not (< ~back~0 ~n~0)) (= (mod ~v_assert~0 256) 0) (not (<= 0 ~back~0)) (forall ((v_ArrVal_128 (Array Int Int)) (v_ArrVal_129 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< (+ ~d~0 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1))))) (not (<= (mod |thread2Thread1of1ForFork2_~cond~1#1| 256) 0))), Black: 385#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (forall ((v_ArrVal_129 (Array Int Int))) (< (+ ~d~0 (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1)))), Black: 410#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (< (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (or (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (not (< ~back~0 ~n~0)) (forall ((v_ArrVal_129 (Array Int Int))) (< (+ ~d~0 (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1))) (not (<= 0 ~back~0))) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 183#true, Black: 398#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (< |ULTIMATE.start_create_fresh_int_array_~i~0#1| |ULTIMATE.start_create_fresh_int_array_~size#1|) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)) (forall ((v_ArrVal_128 (Array Int Int)) (v_ArrVal_127 (Array Int Int)) (v_ArrVal_129 (Array Int Int))) (or (< (+ ~d~0 (select (select (store (store (store |#memory_int| |ULTIMATE.start_main_~#t1~0#1.base| v_ArrVal_127) |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) (+ (* ~front~0 4) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset|))) 2) (not (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t1~0#1.base| v_ArrVal_127) |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) (+ (* ~back~0 4) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset|)) 1))))) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (or (<= (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0 |thread1Thread1of1ForFork1_~w~0#1|) (+ ~W~0 1)) (and (or (<= (+ ~queue~0.offset (* ~back~0 4)) 0) (<= ~n~0 1)) (not (= (+ ~queue~0.offset (* ~back~0 4)) 0)))) (not (= ~queue~0.base |ULTIMATE.start_main_~#t2~0#1.base|)) (<= 0 ~front~0) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 0) (<= (+ 2 ~queue~0.base) |ULTIMATE.start_main_~#t3~0#1.base|) (<= 1 ~W~0) (<= ~front~0 0)), Black: 379#(and (= |ULTIMATE.start_create_fresh_int_array_~i~0#1| 1) (<= |thread1Thread1of1ForFork1_~w~0#1| ~W~0) (<= (+ 2 ~queue~0.base) |ULTIMATE.start_main_~#t2~0#1.base|) (<= ~n~0 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= ~back~0 ~front~0) (= ~v_assert~0 1) (<= ~d~0 ~W~0) (= ~queue~0.offset 0) (<= (+ |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base| 2) |ULTIMATE.start_main_~#t1~0#1.base|) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 0) (<= (+ |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base| 2) |ULTIMATE.start_main_~#t3~0#1.base|) (<= (+ 2 ~queue~0.base) |ULTIMATE.start_main_~#t3~0#1.base|) (<= (+ |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base| 2) |ULTIMATE.start_main_~#t2~0#1.base|) (<= ~n~0 1) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), Black: 392#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (< (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (or (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (not (< ~back~0 ~n~0)) (forall ((v_ArrVal_129 (Array Int Int))) (< (+ ~d~0 (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1))) (not (<= 0 ~back~0))))]) [2022-12-06 05:38:31,854 INFO L382 tUnfolder$Statistics]: this new event has 19 ancestors and is cut-off event [2022-12-06 05:38:31,855 INFO L385 tUnfolder$Statistics]: existing Event has 17 ancestors and is cut-off event [2022-12-06 05:38:31,855 INFO L385 tUnfolder$Statistics]: existing Event has 15 ancestors and is cut-off event [2022-12-06 05:38:31,855 INFO L385 tUnfolder$Statistics]: existing Event has 17 ancestors and is cut-off event [2022-12-06 05:38:31,895 INFO L130 PetriNetUnfolder]: 1418/3662 cut-off events. [2022-12-06 05:38:31,895 INFO L131 PetriNetUnfolder]: For 57424/58345 co-relation queries the response was YES. [2022-12-06 05:38:31,911 INFO L83 FinitePrefix]: Finished finitePrefix Result has 20538 conditions, 3662 events. 1418/3662 cut-off events. For 57424/58345 co-relation queries the response was YES. Maximal size of possible extension queue 379. Compared 34087 event pairs, 230 based on Foata normal form. 46/3547 useless extension candidates. Maximal degree in co-relation 20275. Up to 996 conditions per place. [2022-12-06 05:38:31,941 INFO L184 LiptonReduction]: Starting Lipton reduction on Petri net that has 168 places, 407 transitions, 3645 flow [2022-12-06 05:38:31,942 INFO L188 LiptonReduction]: Number of co-enabled transitions 2090 [2022-12-06 05:38:31,947 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] and [546] L48-4-->L55: Formula: (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_25| v_~v_assert~0_66) (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_29|) (not (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_25| 256) 0))) InVars {~v_assert~0=v_~v_assert~0_66, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_29|} OutVars{~v_assert~0=v_~v_assert~0_66, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_29|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_25|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_~cond~0#1] [2022-12-06 05:38:32,005 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [485] L55-->L48-4: Formula: (and (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9| 0)) (= (+ |v_thread1Thread1of1ForFork1_~w~0#1_21| 1) |v_thread1Thread1of1ForFork1_~w~0#1_22|) (= (ite (= (select (select |v_#memory_int_56| v_~queue~0.base_37) (+ (* 4 v_~back~0_59) v_~queue~0.offset_37)) 1) 1 0) |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|) (= v_~back~0_58 (+ v_~back~0_59 1)) (not (= (ite (and (<= 0 v_~back~0_59) (< v_~back~0_59 v_~n~0_36)) 1 0) 0))) InVars {~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_22|, ~back~0=v_~back~0_59, #memory_int=|v_#memory_int_56|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36} OutVars{~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_17|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_9|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_21|, ~back~0=v_~back~0_58, #memory_int=|v_#memory_int_56|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_9|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#t~post1#1, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread1Thread1of1ForFork1_~w~0#1, ~back~0, thread1Thread1of1ForFork1_#t~mem2#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] and [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] [2022-12-06 05:38:32,192 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [543] L81-->L75: Formula: (and (= (select (select |v_#memory_int_104| v_~queue~0.base_55) (+ (* v_~front~0_67 4) v_~queue~0.offset_55)) |v_thread2Thread1of1ForFork2_~temp~0#1_21|) (not (= (mod |v_thread2Thread1of1ForFork2_~cond~1#1_17| 256) 0)) (not (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11| 0)) (= (+ v_~front~0_67 1) v_~front~0_66) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11| (ite (and (< v_~front~0_67 v_~n~0_56) (<= 0 v_~front~0_67) (< v_~front~0_67 v_~back~0_70)) 1 0)) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11| |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11|)) InVars {thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_17|, ~queue~0.offset=v_~queue~0.offset_55, #memory_int=|v_#memory_int_104|, ~back~0=v_~back~0_70, ~queue~0.base=v_~queue~0.base_55, ~n~0=v_~n~0_56, ~front~0=v_~front~0_67} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_17|, ~queue~0.offset=v_~queue~0.offset_55, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_21|, thread2Thread1of1ForFork2_#t~post5#1=|v_thread2Thread1of1ForFork2_#t~post5#1_11|, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11|, thread2Thread1of1ForFork2_#t~mem4#1=|v_thread2Thread1of1ForFork2_#t~mem4#1_11|, #memory_int=|v_#memory_int_104|, ~back~0=v_~back~0_70, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11|, ~queue~0.base=v_~queue~0.base_55, ~n~0=v_~n~0_56, ~front~0=v_~front~0_66} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~temp~0#1, thread2Thread1of1ForFork2_#t~post5#1, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1, thread2Thread1of1ForFork2_#t~mem4#1, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1, ~front~0] and [546] L48-4-->L55: Formula: (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_25| v_~v_assert~0_66) (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_29|) (not (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_25| 256) 0))) InVars {~v_assert~0=v_~v_assert~0_66, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_29|} OutVars{~v_assert~0=v_~v_assert~0_66, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_29|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_25|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_~cond~0#1] [2022-12-06 05:38:32,317 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [546] L48-4-->L55: Formula: (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_25| v_~v_assert~0_66) (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_29|) (not (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_25| 256) 0))) InVars {~v_assert~0=v_~v_assert~0_66, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_29|} OutVars{~v_assert~0=v_~v_assert~0_66, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_29|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_25|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_~cond~0#1] and [543] L81-->L75: Formula: (and (= (select (select |v_#memory_int_104| v_~queue~0.base_55) (+ (* v_~front~0_67 4) v_~queue~0.offset_55)) |v_thread2Thread1of1ForFork2_~temp~0#1_21|) (not (= (mod |v_thread2Thread1of1ForFork2_~cond~1#1_17| 256) 0)) (not (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11| 0)) (= (+ v_~front~0_67 1) v_~front~0_66) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11| (ite (and (< v_~front~0_67 v_~n~0_56) (<= 0 v_~front~0_67) (< v_~front~0_67 v_~back~0_70)) 1 0)) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11| |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11|)) InVars {thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_17|, ~queue~0.offset=v_~queue~0.offset_55, #memory_int=|v_#memory_int_104|, ~back~0=v_~back~0_70, ~queue~0.base=v_~queue~0.base_55, ~n~0=v_~n~0_56, ~front~0=v_~front~0_67} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_17|, ~queue~0.offset=v_~queue~0.offset_55, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_21|, thread2Thread1of1ForFork2_#t~post5#1=|v_thread2Thread1of1ForFork2_#t~post5#1_11|, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11|, thread2Thread1of1ForFork2_#t~mem4#1=|v_thread2Thread1of1ForFork2_#t~mem4#1_11|, #memory_int=|v_#memory_int_104|, ~back~0=v_~back~0_70, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11|, ~queue~0.base=v_~queue~0.base_55, ~n~0=v_~n~0_56, ~front~0=v_~front~0_66} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~temp~0#1, thread2Thread1of1ForFork2_#t~post5#1, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1, thread2Thread1of1ForFork2_#t~mem4#1, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1, ~front~0] [2022-12-06 05:38:32,383 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [528] L109-4-->L110-3: Formula: (and (= |v_ULTIMATE.start_main_#t~pre14#1_21| |v_#pthreadsForks_51|) (= |v_#pthreadsForks_50| (+ |v_#pthreadsForks_51| 1)) (= (store |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27| (store (select |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27|) |v_ULTIMATE.start_main_~#t3~0#1.offset_27| |v_ULTIMATE.start_main_#t~pre14#1_21|)) |v_#memory_int_88|)) InVars {#pthreadsForks=|v_#pthreadsForks_51|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_89|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} OutVars{ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_19|, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_21|, #pthreadsForks=|v_#pthreadsForks_50|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_88|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_11|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre12#1, ULTIMATE.start_main_#t~pre14#1, #pthreadsForks, #memory_int, ULTIMATE.start_main_#t~nondet13#1] and [482] $Ultimate##0-->L81: Formula: (= |v_thread2Thread1of1ForFork2_~cond~1#1_13| v_~v_assert~0_33) InVars {~v_assert~0=v_~v_assert~0_33} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_13|, ~v_assert~0=v_~v_assert~0_33, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_17|} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~cond~1#1, thread2Thread1of1ForFork2_~temp~0#1] [2022-12-06 05:38:32,503 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [601] $Ultimate##0-->L110-3: Formula: (and (not (= (ite (and (< v_~back~0_136 v_~n~0_110) (<= 0 v_~back~0_136)) 1 0) 0)) (= |v_thread2Thread1of1ForFork2_~cond~1#1_72| v_~v_assert~0_215) (= v_~back~0_135 (+ v_~back~0_136 1)) (= |v_#pthreadsForks_137| (+ |v_#pthreadsForks_138| 1)) (= (store |v_#memory_int_240| |v_ULTIMATE.start_main_~#t3~0#1.base_71| (store (select |v_#memory_int_240| |v_ULTIMATE.start_main_~#t3~0#1.base_71|) |v_ULTIMATE.start_main_~#t3~0#1.offset_71| |v_ULTIMATE.start_main_#t~pre14#1_67|)) |v_#memory_int_239|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_21| (ite (= (select (select |v_#memory_int_240| v_~queue~0.base_114) (+ (* v_~back~0_136 4) v_~queue~0.offset_114)) 1) 1 0)) (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_21| 0)) (= |v_ULTIMATE.start_main_#t~pre14#1_67| |v_#pthreadsForks_138|) (= |v_thread1Thread1of1ForFork1_~w~0#1_134| (+ |v_thread1Thread1of1ForFork1_~w~0#1_133| 1)) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_21| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_21|)) InVars {~queue~0.offset=v_~queue~0.offset_114, ~v_assert~0=v_~v_assert~0_215, #pthreadsForks=|v_#pthreadsForks_138|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_71|, #memory_int=|v_#memory_int_240|, ~back~0=v_~back~0_136, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_134|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_71|, ~queue~0.base=v_~queue~0.base_114, ~n~0=v_~n~0_110} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_72|, ~queue~0.offset=v_~queue~0.offset_114, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_76|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_71|, ~back~0=v_~back~0_135, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_71|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_21|, ~queue~0.base=v_~queue~0.base_114, ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_77|, ~v_assert~0=v_~v_assert~0_215, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_29|, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_67|, #pthreadsForks=|v_#pthreadsForks_137|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_21|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_21|, #memory_int=|v_#memory_int_239|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_56|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_133|, ~n~0=v_~n~0_110, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_21|} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~cond~1#1, thread2Thread1of1ForFork2_~temp~0#1, ~back~0, thread1Thread1of1ForFork1_#t~mem2#1, ULTIMATE.start_main_#t~pre12#1, thread1Thread1of1ForFork1_#t~post1#1, ULTIMATE.start_main_#t~pre14#1, #pthreadsForks, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, #memory_int, ULTIMATE.start_main_#t~nondet13#1, thread1Thread1of1ForFork1_~w~0#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] and [546] L48-4-->L55: Formula: (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_25| v_~v_assert~0_66) (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_29|) (not (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_25| 256) 0))) InVars {~v_assert~0=v_~v_assert~0_66, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_29|} OutVars{~v_assert~0=v_~v_assert~0_66, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_29|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_25|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_~cond~0#1] [2022-12-06 05:38:32,597 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [601] $Ultimate##0-->L110-3: Formula: (and (not (= (ite (and (< v_~back~0_136 v_~n~0_110) (<= 0 v_~back~0_136)) 1 0) 0)) (= |v_thread2Thread1of1ForFork2_~cond~1#1_72| v_~v_assert~0_215) (= v_~back~0_135 (+ v_~back~0_136 1)) (= |v_#pthreadsForks_137| (+ |v_#pthreadsForks_138| 1)) (= (store |v_#memory_int_240| |v_ULTIMATE.start_main_~#t3~0#1.base_71| (store (select |v_#memory_int_240| |v_ULTIMATE.start_main_~#t3~0#1.base_71|) |v_ULTIMATE.start_main_~#t3~0#1.offset_71| |v_ULTIMATE.start_main_#t~pre14#1_67|)) |v_#memory_int_239|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_21| (ite (= (select (select |v_#memory_int_240| v_~queue~0.base_114) (+ (* v_~back~0_136 4) v_~queue~0.offset_114)) 1) 1 0)) (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_21| 0)) (= |v_ULTIMATE.start_main_#t~pre14#1_67| |v_#pthreadsForks_138|) (= |v_thread1Thread1of1ForFork1_~w~0#1_134| (+ |v_thread1Thread1of1ForFork1_~w~0#1_133| 1)) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_21| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_21|)) InVars {~queue~0.offset=v_~queue~0.offset_114, ~v_assert~0=v_~v_assert~0_215, #pthreadsForks=|v_#pthreadsForks_138|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_71|, #memory_int=|v_#memory_int_240|, ~back~0=v_~back~0_136, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_134|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_71|, ~queue~0.base=v_~queue~0.base_114, ~n~0=v_~n~0_110} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_72|, ~queue~0.offset=v_~queue~0.offset_114, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_76|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_71|, ~back~0=v_~back~0_135, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_71|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_21|, ~queue~0.base=v_~queue~0.base_114, ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_77|, ~v_assert~0=v_~v_assert~0_215, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_29|, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_67|, #pthreadsForks=|v_#pthreadsForks_137|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_21|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_21|, #memory_int=|v_#memory_int_239|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_56|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_133|, ~n~0=v_~n~0_110, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_21|} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~cond~1#1, thread2Thread1of1ForFork2_~temp~0#1, ~back~0, thread1Thread1of1ForFork1_#t~mem2#1, ULTIMATE.start_main_#t~pre12#1, thread1Thread1of1ForFork1_#t~post1#1, ULTIMATE.start_main_#t~pre14#1, #pthreadsForks, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, #memory_int, ULTIMATE.start_main_#t~nondet13#1, thread1Thread1of1ForFork1_~w~0#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] and [610] L81-->L78: Formula: (and (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_43| |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_43|) (= v_~d~0_128 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_101| v_~d~0_129)) (not (= (mod |v_thread2Thread1of1ForFork2_~cond~1#1_87| 256) 0)) (= |v_thread2Thread1of1ForFork2_~temp~0#1_101| (select (select |v_#memory_int_257| v_~queue~0.base_126) (+ (* v_~front~0_149 4) v_~queue~0.offset_126))) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_43| (ite (and (< v_~front~0_149 v_~back~0_160) (<= 0 v_~front~0_149) (< v_~front~0_149 v_~n~0_122)) 1 0)) (not (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_43| 0)) (= (+ v_~front~0_149 1) v_~front~0_148)) InVars {thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_87|, ~queue~0.offset=v_~queue~0.offset_126, ~d~0=v_~d~0_129, #memory_int=|v_#memory_int_257|, ~back~0=v_~back~0_160, ~queue~0.base=v_~queue~0.base_126, ~n~0=v_~n~0_122, ~front~0=v_~front~0_149} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_87|, ~queue~0.offset=v_~queue~0.offset_126, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_101|, ~back~0=v_~back~0_160, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_43|, ~queue~0.base=v_~queue~0.base_126, thread2Thread1of1ForFork2_#t~post5#1=|v_thread2Thread1of1ForFork2_#t~post5#1_43|, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_43|, ~d~0=v_~d~0_128, thread2Thread1of1ForFork2_#t~mem4#1=|v_thread2Thread1of1ForFork2_#t~mem4#1_43|, #memory_int=|v_#memory_int_257|, ~n~0=v_~n~0_122, ~front~0=v_~front~0_148} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~temp~0#1, thread2Thread1of1ForFork2_#t~post5#1, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1, ~d~0, thread2Thread1of1ForFork2_#t~mem4#1, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1, ~front~0] [2022-12-06 05:38:32,739 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [601] $Ultimate##0-->L110-3: Formula: (and (not (= (ite (and (< v_~back~0_136 v_~n~0_110) (<= 0 v_~back~0_136)) 1 0) 0)) (= |v_thread2Thread1of1ForFork2_~cond~1#1_72| v_~v_assert~0_215) (= v_~back~0_135 (+ v_~back~0_136 1)) (= |v_#pthreadsForks_137| (+ |v_#pthreadsForks_138| 1)) (= (store |v_#memory_int_240| |v_ULTIMATE.start_main_~#t3~0#1.base_71| (store (select |v_#memory_int_240| |v_ULTIMATE.start_main_~#t3~0#1.base_71|) |v_ULTIMATE.start_main_~#t3~0#1.offset_71| |v_ULTIMATE.start_main_#t~pre14#1_67|)) |v_#memory_int_239|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_21| (ite (= (select (select |v_#memory_int_240| v_~queue~0.base_114) (+ (* v_~back~0_136 4) v_~queue~0.offset_114)) 1) 1 0)) (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_21| 0)) (= |v_ULTIMATE.start_main_#t~pre14#1_67| |v_#pthreadsForks_138|) (= |v_thread1Thread1of1ForFork1_~w~0#1_134| (+ |v_thread1Thread1of1ForFork1_~w~0#1_133| 1)) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_21| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_21|)) InVars {~queue~0.offset=v_~queue~0.offset_114, ~v_assert~0=v_~v_assert~0_215, #pthreadsForks=|v_#pthreadsForks_138|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_71|, #memory_int=|v_#memory_int_240|, ~back~0=v_~back~0_136, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_134|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_71|, ~queue~0.base=v_~queue~0.base_114, ~n~0=v_~n~0_110} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_72|, ~queue~0.offset=v_~queue~0.offset_114, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_76|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_71|, ~back~0=v_~back~0_135, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_71|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_21|, ~queue~0.base=v_~queue~0.base_114, ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_77|, ~v_assert~0=v_~v_assert~0_215, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_29|, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_67|, #pthreadsForks=|v_#pthreadsForks_137|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_21|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_21|, #memory_int=|v_#memory_int_239|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_56|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_133|, ~n~0=v_~n~0_110, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_21|} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~cond~1#1, thread2Thread1of1ForFork2_~temp~0#1, ~back~0, thread1Thread1of1ForFork1_#t~mem2#1, ULTIMATE.start_main_#t~pre12#1, thread1Thread1of1ForFork1_#t~post1#1, ULTIMATE.start_main_#t~pre14#1, #pthreadsForks, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, #memory_int, ULTIMATE.start_main_#t~nondet13#1, thread1Thread1of1ForFork1_~w~0#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] and [611] L81-->L55: Formula: (and (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_45| (ite (and (<= 0 v_~front~0_153) (< v_~front~0_153 v_~n~0_124) (< v_~front~0_153 v_~back~0_162)) 1 0)) (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_166|) (= (+ |v_thread2Thread1of1ForFork2_~temp~0#1_103| v_~d~0_133) v_~d~0_132) (not (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_45| 0)) (= v_~v_assert~0_232 |v_thread1Thread1of1ForFork1_~cond~0#1_192|) (not (= (mod |v_thread2Thread1of1ForFork2_~cond~1#1_89| 256) 0)) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_45| |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_45|) (= |v_thread2Thread1of1ForFork2_~temp~0#1_103| (select (select |v_#memory_int_259| v_~queue~0.base_128) (+ (* v_~front~0_153 4) v_~queue~0.offset_128))) (not (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_192| 256) 0)) (= (+ v_~front~0_153 1) v_~front~0_152)) InVars {thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_89|, ~v_assert~0=v_~v_assert~0_232, ~queue~0.offset=v_~queue~0.offset_128, ~d~0=v_~d~0_133, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_166|, #memory_int=|v_#memory_int_259|, ~back~0=v_~back~0_162, ~queue~0.base=v_~queue~0.base_128, ~n~0=v_~n~0_124, ~front~0=v_~front~0_153} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_89|, ~queue~0.offset=v_~queue~0.offset_128, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_103|, ~back~0=v_~back~0_162, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_45|, ~queue~0.base=v_~queue~0.base_128, ~v_assert~0=v_~v_assert~0_232, thread2Thread1of1ForFork2_#t~post5#1=|v_thread2Thread1of1ForFork2_#t~post5#1_45|, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_45|, ~d~0=v_~d~0_132, thread2Thread1of1ForFork2_#t~mem4#1=|v_thread2Thread1of1ForFork2_#t~mem4#1_45|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_166|, #memory_int=|v_#memory_int_259|, ~n~0=v_~n~0_124, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_192|, ~front~0=v_~front~0_152} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~temp~0#1, thread2Thread1of1ForFork2_#t~post5#1, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1, ~d~0, thread2Thread1of1ForFork2_#t~mem4#1, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1, thread1Thread1of1ForFork1_~cond~0#1, ~front~0] [2022-12-06 05:38:32,969 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [601] $Ultimate##0-->L110-3: Formula: (and (not (= (ite (and (< v_~back~0_136 v_~n~0_110) (<= 0 v_~back~0_136)) 1 0) 0)) (= |v_thread2Thread1of1ForFork2_~cond~1#1_72| v_~v_assert~0_215) (= v_~back~0_135 (+ v_~back~0_136 1)) (= |v_#pthreadsForks_137| (+ |v_#pthreadsForks_138| 1)) (= (store |v_#memory_int_240| |v_ULTIMATE.start_main_~#t3~0#1.base_71| (store (select |v_#memory_int_240| |v_ULTIMATE.start_main_~#t3~0#1.base_71|) |v_ULTIMATE.start_main_~#t3~0#1.offset_71| |v_ULTIMATE.start_main_#t~pre14#1_67|)) |v_#memory_int_239|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_21| (ite (= (select (select |v_#memory_int_240| v_~queue~0.base_114) (+ (* v_~back~0_136 4) v_~queue~0.offset_114)) 1) 1 0)) (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_21| 0)) (= |v_ULTIMATE.start_main_#t~pre14#1_67| |v_#pthreadsForks_138|) (= |v_thread1Thread1of1ForFork1_~w~0#1_134| (+ |v_thread1Thread1of1ForFork1_~w~0#1_133| 1)) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_21| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_21|)) InVars {~queue~0.offset=v_~queue~0.offset_114, ~v_assert~0=v_~v_assert~0_215, #pthreadsForks=|v_#pthreadsForks_138|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_71|, #memory_int=|v_#memory_int_240|, ~back~0=v_~back~0_136, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_134|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_71|, ~queue~0.base=v_~queue~0.base_114, ~n~0=v_~n~0_110} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_72|, ~queue~0.offset=v_~queue~0.offset_114, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_76|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_71|, ~back~0=v_~back~0_135, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_71|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_21|, ~queue~0.base=v_~queue~0.base_114, ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_77|, ~v_assert~0=v_~v_assert~0_215, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_29|, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_67|, #pthreadsForks=|v_#pthreadsForks_137|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_21|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_21|, #memory_int=|v_#memory_int_239|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_56|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_133|, ~n~0=v_~n~0_110, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_21|} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~cond~1#1, thread2Thread1of1ForFork2_~temp~0#1, ~back~0, thread1Thread1of1ForFork1_#t~mem2#1, ULTIMATE.start_main_#t~pre12#1, thread1Thread1of1ForFork1_#t~post1#1, ULTIMATE.start_main_#t~pre14#1, #pthreadsForks, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, #memory_int, ULTIMATE.start_main_#t~nondet13#1, thread1Thread1of1ForFork1_~w~0#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] and [612] L81-->L55: Formula: (and (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_168|) (= v_~v_assert~0_234 |v_thread1Thread1of1ForFork1_~cond~0#1_194|) (= |v_thread2Thread1of1ForFork2_~temp~0#1_105| (select (select |v_#memory_int_261| v_~queue~0.base_130) (+ v_~queue~0.offset_130 (* v_~front~0_157 4)))) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_47| |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_47|) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_47| (ite (and (< v_~front~0_157 v_~back~0_164) (< v_~front~0_157 v_~n~0_126) (<= 0 v_~front~0_157)) 1 0)) (not (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_194| 256) 0)) (= (+ v_~front~0_157 1) v_~front~0_156) (not (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_47| 0)) (not (= (mod |v_thread2Thread1of1ForFork2_~cond~1#1_91| 256) 0))) InVars {thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_91|, ~v_assert~0=v_~v_assert~0_234, ~queue~0.offset=v_~queue~0.offset_130, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_168|, #memory_int=|v_#memory_int_261|, ~back~0=v_~back~0_164, ~queue~0.base=v_~queue~0.base_130, ~n~0=v_~n~0_126, ~front~0=v_~front~0_157} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_91|, ~queue~0.offset=v_~queue~0.offset_130, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_105|, ~back~0=v_~back~0_164, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_47|, ~queue~0.base=v_~queue~0.base_130, ~v_assert~0=v_~v_assert~0_234, thread2Thread1of1ForFork2_#t~post5#1=|v_thread2Thread1of1ForFork2_#t~post5#1_47|, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_47|, thread2Thread1of1ForFork2_#t~mem4#1=|v_thread2Thread1of1ForFork2_#t~mem4#1_47|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_168|, #memory_int=|v_#memory_int_261|, ~n~0=v_~n~0_126, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_194|, ~front~0=v_~front~0_156} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~temp~0#1, thread2Thread1of1ForFork2_#t~post5#1, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1, thread2Thread1of1ForFork2_#t~mem4#1, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1, thread1Thread1of1ForFork1_~cond~0#1, ~front~0] [2022-12-06 05:38:33,191 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [601] $Ultimate##0-->L110-3: Formula: (and (not (= (ite (and (< v_~back~0_136 v_~n~0_110) (<= 0 v_~back~0_136)) 1 0) 0)) (= |v_thread2Thread1of1ForFork2_~cond~1#1_72| v_~v_assert~0_215) (= v_~back~0_135 (+ v_~back~0_136 1)) (= |v_#pthreadsForks_137| (+ |v_#pthreadsForks_138| 1)) (= (store |v_#memory_int_240| |v_ULTIMATE.start_main_~#t3~0#1.base_71| (store (select |v_#memory_int_240| |v_ULTIMATE.start_main_~#t3~0#1.base_71|) |v_ULTIMATE.start_main_~#t3~0#1.offset_71| |v_ULTIMATE.start_main_#t~pre14#1_67|)) |v_#memory_int_239|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_21| (ite (= (select (select |v_#memory_int_240| v_~queue~0.base_114) (+ (* v_~back~0_136 4) v_~queue~0.offset_114)) 1) 1 0)) (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_21| 0)) (= |v_ULTIMATE.start_main_#t~pre14#1_67| |v_#pthreadsForks_138|) (= |v_thread1Thread1of1ForFork1_~w~0#1_134| (+ |v_thread1Thread1of1ForFork1_~w~0#1_133| 1)) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_21| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_21|)) InVars {~queue~0.offset=v_~queue~0.offset_114, ~v_assert~0=v_~v_assert~0_215, #pthreadsForks=|v_#pthreadsForks_138|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_71|, #memory_int=|v_#memory_int_240|, ~back~0=v_~back~0_136, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_134|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_71|, ~queue~0.base=v_~queue~0.base_114, ~n~0=v_~n~0_110} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_72|, ~queue~0.offset=v_~queue~0.offset_114, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_76|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_71|, ~back~0=v_~back~0_135, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_71|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_21|, ~queue~0.base=v_~queue~0.base_114, ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_77|, ~v_assert~0=v_~v_assert~0_215, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_29|, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_67|, #pthreadsForks=|v_#pthreadsForks_137|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_21|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_21|, #memory_int=|v_#memory_int_239|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_56|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_133|, ~n~0=v_~n~0_110, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_21|} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~cond~1#1, thread2Thread1of1ForFork2_~temp~0#1, ~back~0, thread1Thread1of1ForFork1_#t~mem2#1, ULTIMATE.start_main_#t~pre12#1, thread1Thread1of1ForFork1_#t~post1#1, ULTIMATE.start_main_#t~pre14#1, #pthreadsForks, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, #memory_int, ULTIMATE.start_main_#t~nondet13#1, thread1Thread1of1ForFork1_~w~0#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] and [613] L81-->L55: Formula: (and (= |v_thread2Thread1of1ForFork2_~cond~1#1_93| v_~v_assert~0_236) (not (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_49| 0)) (= (+ |v_thread2Thread1of1ForFork2_~temp~0#1_107| v_~d~0_137) v_~d~0_136) (not (= (mod |v_thread2Thread1of1ForFork2_~cond~1#1_94| 256) 0)) (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_170|) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_49| |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_49|) (= (+ v_~front~0_161 1) v_~front~0_160) (not (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_196| 256) 0)) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_49| (ite (and (< v_~front~0_161 v_~n~0_128) (< v_~front~0_161 v_~back~0_166) (<= 0 v_~front~0_161)) 1 0)) (= v_~v_assert~0_236 |v_thread1Thread1of1ForFork1_~cond~0#1_196|) (= |v_thread2Thread1of1ForFork2_~temp~0#1_107| (select (select |v_#memory_int_263| v_~queue~0.base_132) (+ v_~queue~0.offset_132 (* v_~front~0_161 4))))) InVars {thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_94|, ~v_assert~0=v_~v_assert~0_236, ~queue~0.offset=v_~queue~0.offset_132, ~d~0=v_~d~0_137, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_170|, #memory_int=|v_#memory_int_263|, ~back~0=v_~back~0_166, ~queue~0.base=v_~queue~0.base_132, ~n~0=v_~n~0_128, ~front~0=v_~front~0_161} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_93|, ~queue~0.offset=v_~queue~0.offset_132, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_107|, ~back~0=v_~back~0_166, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_49|, ~queue~0.base=v_~queue~0.base_132, ~v_assert~0=v_~v_assert~0_236, thread2Thread1of1ForFork2_#t~post5#1=|v_thread2Thread1of1ForFork2_#t~post5#1_49|, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_49|, ~d~0=v_~d~0_136, thread2Thread1of1ForFork2_#t~mem4#1=|v_thread2Thread1of1ForFork2_#t~mem4#1_49|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_170|, #memory_int=|v_#memory_int_263|, ~n~0=v_~n~0_128, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_196|, ~front~0=v_~front~0_160} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~cond~1#1, thread2Thread1of1ForFork2_~temp~0#1, thread2Thread1of1ForFork2_#t~post5#1, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1, ~d~0, thread2Thread1of1ForFork2_#t~mem4#1, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1, thread1Thread1of1ForFork1_~cond~0#1, ~front~0] [2022-12-06 05:38:33,431 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [601] $Ultimate##0-->L110-3: Formula: (and (not (= (ite (and (< v_~back~0_136 v_~n~0_110) (<= 0 v_~back~0_136)) 1 0) 0)) (= |v_thread2Thread1of1ForFork2_~cond~1#1_72| v_~v_assert~0_215) (= v_~back~0_135 (+ v_~back~0_136 1)) (= |v_#pthreadsForks_137| (+ |v_#pthreadsForks_138| 1)) (= (store |v_#memory_int_240| |v_ULTIMATE.start_main_~#t3~0#1.base_71| (store (select |v_#memory_int_240| |v_ULTIMATE.start_main_~#t3~0#1.base_71|) |v_ULTIMATE.start_main_~#t3~0#1.offset_71| |v_ULTIMATE.start_main_#t~pre14#1_67|)) |v_#memory_int_239|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_21| (ite (= (select (select |v_#memory_int_240| v_~queue~0.base_114) (+ (* v_~back~0_136 4) v_~queue~0.offset_114)) 1) 1 0)) (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_21| 0)) (= |v_ULTIMATE.start_main_#t~pre14#1_67| |v_#pthreadsForks_138|) (= |v_thread1Thread1of1ForFork1_~w~0#1_134| (+ |v_thread1Thread1of1ForFork1_~w~0#1_133| 1)) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_21| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_21|)) InVars {~queue~0.offset=v_~queue~0.offset_114, ~v_assert~0=v_~v_assert~0_215, #pthreadsForks=|v_#pthreadsForks_138|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_71|, #memory_int=|v_#memory_int_240|, ~back~0=v_~back~0_136, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_134|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_71|, ~queue~0.base=v_~queue~0.base_114, ~n~0=v_~n~0_110} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_72|, ~queue~0.offset=v_~queue~0.offset_114, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_76|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_71|, ~back~0=v_~back~0_135, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_71|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_21|, ~queue~0.base=v_~queue~0.base_114, ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_77|, ~v_assert~0=v_~v_assert~0_215, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_29|, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_67|, #pthreadsForks=|v_#pthreadsForks_137|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_21|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_21|, #memory_int=|v_#memory_int_239|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_56|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_133|, ~n~0=v_~n~0_110, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_21|} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~cond~1#1, thread2Thread1of1ForFork2_~temp~0#1, ~back~0, thread1Thread1of1ForFork1_#t~mem2#1, ULTIMATE.start_main_#t~pre12#1, thread1Thread1of1ForFork1_#t~post1#1, ULTIMATE.start_main_#t~pre14#1, #pthreadsForks, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, #memory_int, ULTIMATE.start_main_#t~nondet13#1, thread1Thread1of1ForFork1_~w~0#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] and [614] L48-4-->L75: Formula: (and (not (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_198| 256) 0)) (= (ite (and (< v_~front~0_165 v_~back~0_168) (< v_~front~0_165 v_~n~0_130) (<= 0 v_~front~0_165)) 1 0) |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_51|) (= |v_thread2Thread1of1ForFork2_~temp~0#1_109| (select (select |v_#memory_int_265| v_~queue~0.base_134) (+ (* v_~front~0_165 4) v_~queue~0.offset_134))) (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_172|) (not (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_51| 0)) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_51| |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_51|) (not (= (mod |v_thread2Thread1of1ForFork2_~cond~1#1_97| 256) 0)) (= v_~v_assert~0_238 |v_thread1Thread1of1ForFork1_~cond~0#1_198|) (= v_~front~0_164 (+ v_~front~0_165 1))) InVars {thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_97|, ~queue~0.offset=v_~queue~0.offset_134, ~v_assert~0=v_~v_assert~0_238, #memory_int=|v_#memory_int_265|, ~back~0=v_~back~0_168, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_172|, ~queue~0.base=v_~queue~0.base_134, ~n~0=v_~n~0_130, ~front~0=v_~front~0_165} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_97|, ~queue~0.offset=v_~queue~0.offset_134, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_109|, ~back~0=v_~back~0_168, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_51|, ~queue~0.base=v_~queue~0.base_134, ~v_assert~0=v_~v_assert~0_238, thread2Thread1of1ForFork2_#t~post5#1=|v_thread2Thread1of1ForFork2_#t~post5#1_51|, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_51|, thread2Thread1of1ForFork2_#t~mem4#1=|v_thread2Thread1of1ForFork2_#t~mem4#1_51|, #memory_int=|v_#memory_int_265|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_172|, ~n~0=v_~n~0_130, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_198|, ~front~0=v_~front~0_164} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~temp~0#1, thread2Thread1of1ForFork2_#t~post5#1, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1, thread2Thread1of1ForFork2_#t~mem4#1, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1, thread1Thread1of1ForFork1_~cond~0#1, ~front~0] [2022-12-06 05:38:33,654 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [485] L55-->L48-4: Formula: (and (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9| 0)) (= (+ |v_thread1Thread1of1ForFork1_~w~0#1_21| 1) |v_thread1Thread1of1ForFork1_~w~0#1_22|) (= (ite (= (select (select |v_#memory_int_56| v_~queue~0.base_37) (+ (* 4 v_~back~0_59) v_~queue~0.offset_37)) 1) 1 0) |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|) (= v_~back~0_58 (+ v_~back~0_59 1)) (not (= (ite (and (<= 0 v_~back~0_59) (< v_~back~0_59 v_~n~0_36)) 1 0) 0))) InVars {~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_22|, ~back~0=v_~back~0_59, #memory_int=|v_#memory_int_56|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36} OutVars{~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_17|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_9|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_21|, ~back~0=v_~back~0_58, #memory_int=|v_#memory_int_56|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_9|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#t~post1#1, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread1Thread1of1ForFork1_~w~0#1, ~back~0, thread1Thread1of1ForFork1_#t~mem2#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] and [482] $Ultimate##0-->L81: Formula: (= |v_thread2Thread1of1ForFork2_~cond~1#1_13| v_~v_assert~0_33) InVars {~v_assert~0=v_~v_assert~0_33} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_13|, ~v_assert~0=v_~v_assert~0_33, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_17|} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~cond~1#1, thread2Thread1of1ForFork2_~temp~0#1] [2022-12-06 05:38:33,718 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [485] L55-->L48-4: Formula: (and (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9| 0)) (= (+ |v_thread1Thread1of1ForFork1_~w~0#1_21| 1) |v_thread1Thread1of1ForFork1_~w~0#1_22|) (= (ite (= (select (select |v_#memory_int_56| v_~queue~0.base_37) (+ (* 4 v_~back~0_59) v_~queue~0.offset_37)) 1) 1 0) |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|) (= v_~back~0_58 (+ v_~back~0_59 1)) (not (= (ite (and (<= 0 v_~back~0_59) (< v_~back~0_59 v_~n~0_36)) 1 0) 0))) InVars {~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_22|, ~back~0=v_~back~0_59, #memory_int=|v_#memory_int_56|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36} OutVars{~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_17|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_9|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_21|, ~back~0=v_~back~0_58, #memory_int=|v_#memory_int_56|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_9|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#t~post1#1, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread1Thread1of1ForFork1_~w~0#1, ~back~0, thread1Thread1of1ForFork1_#t~mem2#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] and [528] L109-4-->L110-3: Formula: (and (= |v_ULTIMATE.start_main_#t~pre14#1_21| |v_#pthreadsForks_51|) (= |v_#pthreadsForks_50| (+ |v_#pthreadsForks_51| 1)) (= (store |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27| (store (select |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27|) |v_ULTIMATE.start_main_~#t3~0#1.offset_27| |v_ULTIMATE.start_main_#t~pre14#1_21|)) |v_#memory_int_88|)) InVars {#pthreadsForks=|v_#pthreadsForks_51|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_89|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} OutVars{ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_19|, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_21|, #pthreadsForks=|v_#pthreadsForks_50|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_88|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_11|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre12#1, ULTIMATE.start_main_#t~pre14#1, #pthreadsForks, #memory_int, ULTIMATE.start_main_#t~nondet13#1] [2022-12-06 05:38:33,779 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [485] L55-->L48-4: Formula: (and (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9| 0)) (= (+ |v_thread1Thread1of1ForFork1_~w~0#1_21| 1) |v_thread1Thread1of1ForFork1_~w~0#1_22|) (= (ite (= (select (select |v_#memory_int_56| v_~queue~0.base_37) (+ (* 4 v_~back~0_59) v_~queue~0.offset_37)) 1) 1 0) |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|) (= v_~back~0_58 (+ v_~back~0_59 1)) (not (= (ite (and (<= 0 v_~back~0_59) (< v_~back~0_59 v_~n~0_36)) 1 0) 0))) InVars {~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_22|, ~back~0=v_~back~0_59, #memory_int=|v_#memory_int_56|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36} OutVars{~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_17|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_9|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_21|, ~back~0=v_~back~0_58, #memory_int=|v_#memory_int_56|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_9|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#t~post1#1, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread1Thread1of1ForFork1_~w~0#1, ~back~0, thread1Thread1of1ForFork1_#t~mem2#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] and [471] L110-4-->L111-1: Formula: (= (select (select |v_#memory_int_44| |v_ULTIMATE.start_main_~#t1~0#1.base_11|) |v_ULTIMATE.start_main_~#t1~0#1.offset_11|) |v_ULTIMATE.start_main_#t~mem16#1_10|) InVars {#memory_int=|v_#memory_int_44|, ULTIMATE.start_main_~#t1~0#1.base=|v_ULTIMATE.start_main_~#t1~0#1.base_11|, ULTIMATE.start_main_~#t1~0#1.offset=|v_ULTIMATE.start_main_~#t1~0#1.offset_11|} OutVars{ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_11|, #memory_int=|v_#memory_int_44|, ULTIMATE.start_main_#t~mem16#1=|v_ULTIMATE.start_main_#t~mem16#1_10|, ULTIMATE.start_main_~#t1~0#1.base=|v_ULTIMATE.start_main_~#t1~0#1.base_11|, ULTIMATE.start_main_~#t1~0#1.offset=|v_ULTIMATE.start_main_~#t1~0#1.offset_11|, ULTIMATE.start_main_#t~nondet15#1=|v_ULTIMATE.start_main_#t~nondet15#1_7|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre14#1, ULTIMATE.start_main_#t~mem16#1, ULTIMATE.start_main_#t~nondet15#1] [2022-12-06 05:38:33,824 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [485] L55-->L48-4: Formula: (and (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9| 0)) (= (+ |v_thread1Thread1of1ForFork1_~w~0#1_21| 1) |v_thread1Thread1of1ForFork1_~w~0#1_22|) (= (ite (= (select (select |v_#memory_int_56| v_~queue~0.base_37) (+ (* 4 v_~back~0_59) v_~queue~0.offset_37)) 1) 1 0) |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|) (= v_~back~0_58 (+ v_~back~0_59 1)) (not (= (ite (and (<= 0 v_~back~0_59) (< v_~back~0_59 v_~n~0_36)) 1 0) 0))) InVars {~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_22|, ~back~0=v_~back~0_59, #memory_int=|v_#memory_int_56|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36} OutVars{~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_17|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_9|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_21|, ~back~0=v_~back~0_58, #memory_int=|v_#memory_int_56|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_9|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#t~post1#1, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread1Thread1of1ForFork1_~w~0#1, ~back~0, thread1Thread1of1ForFork1_#t~mem2#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] and [533] L108-3-->L109-3: Formula: (and (= |v_#pthreadsForks_54| (+ |v_#pthreadsForks_55| 1)) (= (store |v_#memory_int_93| |v_ULTIMATE.start_main_~#t2~0#1.base_27| (store (select |v_#memory_int_93| |v_ULTIMATE.start_main_~#t2~0#1.base_27|) |v_ULTIMATE.start_main_~#t2~0#1.offset_27| |v_ULTIMATE.start_main_#t~pre12#1_21|)) |v_#memory_int_92|) (= |v_ULTIMATE.start_main_#t~pre12#1_21| |v_#pthreadsForks_55|)) InVars {#pthreadsForks=|v_#pthreadsForks_55|, ULTIMATE.start_main_~#t2~0#1.offset=|v_ULTIMATE.start_main_~#t2~0#1.offset_27|, #memory_int=|v_#memory_int_93|, ULTIMATE.start_main_~#t2~0#1.base=|v_ULTIMATE.start_main_~#t2~0#1.base_27|} OutVars{ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_21|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_9|, #pthreadsForks=|v_#pthreadsForks_54|, ULTIMATE.start_main_~#t2~0#1.offset=|v_ULTIMATE.start_main_~#t2~0#1.offset_27|, ULTIMATE.start_main_#t~pre10#1=|v_ULTIMATE.start_main_#t~pre10#1_29|, #memory_int=|v_#memory_int_92|, ULTIMATE.start_main_~#t2~0#1.base=|v_ULTIMATE.start_main_~#t2~0#1.base_27|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre12#1, ULTIMATE.start_main_#t~nondet11#1, #pthreadsForks, ULTIMATE.start_main_#t~pre10#1, #memory_int] [2022-12-06 05:38:33,967 INFO L203 LiptonReduction]: Total number of compositions: 7 [2022-12-06 05:38:33,968 INFO L143 eatedLiptonReduction]: Time needed for LBE in milliseconds: 2495 [2022-12-06 05:38:33,968 INFO L495 AbstractCegarLoop]: Abstraction has has 167 places, 406 transitions, 3792 flow [2022-12-06 05:38:33,968 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 7.5) internal successors, (30), 4 states have internal predecessors, (30), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-12-06 05:38:33,968 INFO L205 CegarLoopForPetriNet]: Found error trace [2022-12-06 05:38:33,968 INFO L213 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-12-06 05:38:33,968 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2022-12-06 05:38:33,968 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2022-12-06 05:38:33,969 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-12-06 05:38:33,969 INFO L85 PathProgramCache]: Analyzing trace with hash 133219186, now seen corresponding path program 1 times [2022-12-06 05:38:33,969 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-12-06 05:38:33,969 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [198051385] [2022-12-06 05:38:33,969 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 05:38:33,969 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-12-06 05:38:34,005 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 05:38:34,794 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-12-06 05:38:34,794 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-12-06 05:38:34,794 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [198051385] [2022-12-06 05:38:34,794 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [198051385] provided 0 perfect and 1 imperfect interpolant sequences [2022-12-06 05:38:34,794 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1164332893] [2022-12-06 05:38:34,794 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 05:38:34,794 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-12-06 05:38:34,795 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-12-06 05:38:34,796 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-12-06 05:38:34,797 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-12-06 05:38:34,876 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 05:38:34,877 INFO L263 TraceCheckSpWp]: Trace formula consists of 246 conjuncts, 38 conjunts are in the unsatisfiable core [2022-12-06 05:38:34,885 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-12-06 05:38:35,014 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-12-06 05:38:35,015 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 20 [2022-12-06 05:38:35,104 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 7 [2022-12-06 05:38:35,184 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-12-06 05:38:35,184 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-12-06 05:38:35,355 INFO L321 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-12-06 05:38:35,355 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 50 treesize of output 46 [2022-12-06 05:38:35,370 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 7 [2022-12-06 05:38:35,470 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-12-06 05:38:35,470 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1164332893] provided 0 perfect and 2 imperfect interpolant sequences [2022-12-06 05:38:35,470 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-12-06 05:38:35,470 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10, 10] total 26 [2022-12-06 05:38:35,470 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [553739988] [2022-12-06 05:38:35,470 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-12-06 05:38:35,471 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 27 states [2022-12-06 05:38:35,471 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-12-06 05:38:35,471 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2022-12-06 05:38:35,471 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=102, Invalid=599, Unknown=1, NotChecked=0, Total=702 [2022-12-06 05:38:35,472 INFO L490 CegarLoopForPetriNet]: Number of universal loopers: 0 out of 64 [2022-12-06 05:38:35,472 INFO L100 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 167 places, 406 transitions, 3792 flow. Second operand has 27 states, 27 states have (on average 1.8148148148148149) internal successors, (49), 26 states have internal predecessors, (49), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-12-06 05:38:35,472 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-12-06 05:38:35,472 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 0 of 64 [2022-12-06 05:38:35,472 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-12-06 05:38:40,874 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2022-12-06 05:38:43,007 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.03s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2022-12-06 05:39:03,771 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.01s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2022-12-06 05:39:20,844 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2022-12-06 05:39:28,941 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2022-12-06 05:39:30,984 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.04s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2022-12-06 05:39:32,998 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.01s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2022-12-06 05:39:35,032 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.03s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2022-12-06 05:39:37,542 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.03s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2022-12-06 05:39:39,591 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.04s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2022-12-06 05:39:41,621 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.03s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2022-12-06 05:39:43,634 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.01s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2022-12-06 05:39:45,806 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.05s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2022-12-06 05:39:47,819 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.01s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2022-12-06 05:39:49,830 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.01s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2022-12-06 05:39:51,843 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.01s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2022-12-06 05:39:53,896 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.05s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2022-12-06 05:39:56,246 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2022-12-06 05:39:58,257 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.01s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2022-12-06 05:40:00,383 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2022-12-06 05:40:02,392 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.01s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2022-12-06 05:40:04,610 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.02s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2022-12-06 05:40:06,924 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2022-12-06 05:40:09,292 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2022-12-06 05:40:11,547 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.01s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2022-12-06 05:40:13,594 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.05s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2022-12-06 05:40:15,705 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.01s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2022-12-06 05:40:17,871 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.05s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2022-12-06 05:40:20,092 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2022-12-06 05:40:20,867 INFO L130 PetriNetUnfolder]: 12943/22347 cut-off events. [2022-12-06 05:40:20,867 INFO L131 PetriNetUnfolder]: For 330788/330788 co-relation queries the response was YES. [2022-12-06 05:40:20,981 INFO L83 FinitePrefix]: Finished finitePrefix Result has 141547 conditions, 22347 events. 12943/22347 cut-off events. For 330788/330788 co-relation queries the response was YES. Maximal size of possible extension queue 1155. Compared 182007 event pairs, 1318 based on Foata normal form. 132/22472 useless extension candidates. Maximal degree in co-relation 139527. Up to 6716 conditions per place. [2022-12-06 05:40:21,086 INFO L137 encePairwiseOnDemand]: 13/64 looper letters, 974 selfloop transitions, 812 changer transitions 274/2060 dead transitions. [2022-12-06 05:40:21,086 INFO L142 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 251 places, 2060 transitions, 23625 flow [2022-12-06 05:40:21,086 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 85 states. [2022-12-06 05:40:21,087 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 85 states. [2022-12-06 05:40:21,089 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 85 states to 85 states and 838 transitions. [2022-12-06 05:40:21,090 INFO L535 CegarLoopForPetriNet]: DFA transition density 0.15404411764705883 [2022-12-06 05:40:21,090 INFO L175 Difference]: Start difference. First operand has 167 places, 406 transitions, 3792 flow. Second operand 85 states and 838 transitions. [2022-12-06 05:40:21,090 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 251 places, 2060 transitions, 23625 flow [2022-12-06 05:40:22,391 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 248 places, 2060 transitions, 21904 flow, removed 516 selfloop flow, removed 3 redundant places. [2022-12-06 05:40:22,409 INFO L231 Difference]: Finished difference. Result has 291 places, 1050 transitions, 12486 flow [2022-12-06 05:40:22,409 INFO L276 CegarLoopForPetriNet]: {PETRI_ALPHABET=64, PETRI_DIFFERENCE_MINUEND_FLOW=3530, PETRI_DIFFERENCE_MINUEND_PLACES=164, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=406, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=224, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=149, PETRI_DIFFERENCE_SUBTRAHEND_STATES=85, PETRI_FLOW=12486, PETRI_PLACES=291, PETRI_TRANSITIONS=1050} [2022-12-06 05:40:22,409 INFO L294 CegarLoopForPetriNet]: 32 programPoint places, 259 predicate places. [2022-12-06 05:40:22,410 WARN L163 eatedLiptonReduction]: Counterexample is not a run of mAbstraction. Replaying acceptance of the word... [2022-12-06 05:40:22,410 INFO L89 Accepts]: Start accepts. Operand has 291 places, 1050 transitions, 12486 flow [2022-12-06 05:40:22,415 INFO L95 Accepts]: Finished accepts. [2022-12-06 05:40:22,415 INFO L195 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-12-06 05:40:22,415 INFO L167 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 291 places, 1050 transitions, 12486 flow [2022-12-06 05:40:22,422 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 289 places, 1050 transitions, 12486 flow [2022-12-06 05:40:23,881 INFO L130 PetriNetUnfolder]: 3136/7984 cut-off events. [2022-12-06 05:40:23,881 INFO L131 PetriNetUnfolder]: For 247512/249881 co-relation queries the response was YES. [2022-12-06 05:40:23,930 INFO L83 FinitePrefix]: Finished finitePrefix Result has 56027 conditions, 7984 events. 3136/7984 cut-off events. For 247512/249881 co-relation queries the response was YES. Maximal size of possible extension queue 822. Compared 85922 event pairs, 693 based on Foata normal form. 48/7509 useless extension candidates. Maximal degree in co-relation 55816. Up to 2479 conditions per place. [2022-12-06 05:40:23,996 INFO L184 LiptonReduction]: Starting Lipton reduction on Petri net that has 289 places, 1050 transitions, 12486 flow [2022-12-06 05:40:23,996 INFO L188 LiptonReduction]: Number of co-enabled transitions 6066 [2022-12-06 05:40:24,004 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [528] L109-4-->L110-3: Formula: (and (= |v_ULTIMATE.start_main_#t~pre14#1_21| |v_#pthreadsForks_51|) (= |v_#pthreadsForks_50| (+ |v_#pthreadsForks_51| 1)) (= (store |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27| (store (select |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27|) |v_ULTIMATE.start_main_~#t3~0#1.offset_27| |v_ULTIMATE.start_main_#t~pre14#1_21|)) |v_#memory_int_88|)) InVars {#pthreadsForks=|v_#pthreadsForks_51|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_89|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} OutVars{ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_19|, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_21|, #pthreadsForks=|v_#pthreadsForks_50|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_88|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_11|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre12#1, ULTIMATE.start_main_#t~pre14#1, #pthreadsForks, #memory_int, ULTIMATE.start_main_#t~nondet13#1] and [543] L81-->L75: Formula: (and (= (select (select |v_#memory_int_104| v_~queue~0.base_55) (+ (* v_~front~0_67 4) v_~queue~0.offset_55)) |v_thread2Thread1of1ForFork2_~temp~0#1_21|) (not (= (mod |v_thread2Thread1of1ForFork2_~cond~1#1_17| 256) 0)) (not (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11| 0)) (= (+ v_~front~0_67 1) v_~front~0_66) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11| (ite (and (< v_~front~0_67 v_~n~0_56) (<= 0 v_~front~0_67) (< v_~front~0_67 v_~back~0_70)) 1 0)) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11| |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11|)) InVars {thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_17|, ~queue~0.offset=v_~queue~0.offset_55, #memory_int=|v_#memory_int_104|, ~back~0=v_~back~0_70, ~queue~0.base=v_~queue~0.base_55, ~n~0=v_~n~0_56, ~front~0=v_~front~0_67} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_17|, ~queue~0.offset=v_~queue~0.offset_55, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_21|, thread2Thread1of1ForFork2_#t~post5#1=|v_thread2Thread1of1ForFork2_#t~post5#1_11|, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11|, thread2Thread1of1ForFork2_#t~mem4#1=|v_thread2Thread1of1ForFork2_#t~mem4#1_11|, #memory_int=|v_#memory_int_104|, ~back~0=v_~back~0_70, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11|, ~queue~0.base=v_~queue~0.base_55, ~n~0=v_~n~0_56, ~front~0=v_~front~0_66} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~temp~0#1, thread2Thread1of1ForFork2_#t~post5#1, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1, thread2Thread1of1ForFork2_#t~mem4#1, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1, ~front~0] [2022-12-06 05:40:24,066 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [626] L55-->L55: Formula: (and (= v_~v_assert~0_256 |v_thread1Thread1of1ForFork1_~cond~0#1_210|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_55| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_55|) (= v_~back~0_210 (+ v_~back~0_211 1)) (not (= (ite (and (<= 0 v_~back~0_211) (< v_~back~0_211 v_~n~0_152)) 1 0) 0)) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_55| (ite (= (select (select |v_#memory_int_307| v_~queue~0.base_156) (+ (* v_~back~0_211 4) v_~queue~0.offset_156)) 1) 1 0)) (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_214|) (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_55| 0)) (= |v_thread1Thread1of1ForFork1_~w~0#1_215| (+ |v_thread1Thread1of1ForFork1_~w~0#1_214| 1)) (not (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_210| 256) 0))) InVars {~v_assert~0=v_~v_assert~0_256, ~queue~0.offset=v_~queue~0.offset_156, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_215|, ~back~0=v_~back~0_211, #memory_int=|v_#memory_int_307|, ~queue~0.base=v_~queue~0.base_156, ~n~0=v_~n~0_152} OutVars{~queue~0.offset=v_~queue~0.offset_156, ~back~0=v_~back~0_210, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_55|, ~queue~0.base=v_~queue~0.base_156, ~v_assert~0=v_~v_assert~0_256, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_63|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_55|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_55|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_214|, #memory_int=|v_#memory_int_307|, ~n~0=v_~n~0_152, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_210|, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_55|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#t~post1#1, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, ~back~0, thread1Thread1of1ForFork1_~w~0#1, thread1Thread1of1ForFork1_#t~mem2#1, thread1Thread1of1ForFork1_~cond~0#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] and [533] L108-3-->L109-3: Formula: (and (= |v_#pthreadsForks_54| (+ |v_#pthreadsForks_55| 1)) (= (store |v_#memory_int_93| |v_ULTIMATE.start_main_~#t2~0#1.base_27| (store (select |v_#memory_int_93| |v_ULTIMATE.start_main_~#t2~0#1.base_27|) |v_ULTIMATE.start_main_~#t2~0#1.offset_27| |v_ULTIMATE.start_main_#t~pre12#1_21|)) |v_#memory_int_92|) (= |v_ULTIMATE.start_main_#t~pre12#1_21| |v_#pthreadsForks_55|)) InVars {#pthreadsForks=|v_#pthreadsForks_55|, ULTIMATE.start_main_~#t2~0#1.offset=|v_ULTIMATE.start_main_~#t2~0#1.offset_27|, #memory_int=|v_#memory_int_93|, ULTIMATE.start_main_~#t2~0#1.base=|v_ULTIMATE.start_main_~#t2~0#1.base_27|} OutVars{ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_21|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_9|, #pthreadsForks=|v_#pthreadsForks_54|, ULTIMATE.start_main_~#t2~0#1.offset=|v_ULTIMATE.start_main_~#t2~0#1.offset_27|, ULTIMATE.start_main_#t~pre10#1=|v_ULTIMATE.start_main_#t~pre10#1_29|, #memory_int=|v_#memory_int_92|, ULTIMATE.start_main_~#t2~0#1.base=|v_ULTIMATE.start_main_~#t2~0#1.base_27|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre12#1, ULTIMATE.start_main_#t~nondet11#1, #pthreadsForks, ULTIMATE.start_main_#t~pre10#1, #memory_int] [2022-12-06 05:40:24,150 WARN L322 ript$VariableManager]: TermVariable LBE234 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 05:40:24,151 WARN L322 ript$VariableManager]: TermVariable LBE241 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 05:40:24,151 WARN L322 ript$VariableManager]: TermVariable LBE35 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 05:40:24,151 WARN L322 ript$VariableManager]: TermVariable LBE23 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 05:40:24,445 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [482] $Ultimate##0-->L81: Formula: (= |v_thread2Thread1of1ForFork2_~cond~1#1_13| v_~v_assert~0_33) InVars {~v_assert~0=v_~v_assert~0_33} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_13|, ~v_assert~0=v_~v_assert~0_33, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_17|} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~cond~1#1, thread2Thread1of1ForFork2_~temp~0#1] and [528] L109-4-->L110-3: Formula: (and (= |v_ULTIMATE.start_main_#t~pre14#1_21| |v_#pthreadsForks_51|) (= |v_#pthreadsForks_50| (+ |v_#pthreadsForks_51| 1)) (= (store |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27| (store (select |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27|) |v_ULTIMATE.start_main_~#t3~0#1.offset_27| |v_ULTIMATE.start_main_#t~pre14#1_21|)) |v_#memory_int_88|)) InVars {#pthreadsForks=|v_#pthreadsForks_51|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_89|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} OutVars{ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_19|, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_21|, #pthreadsForks=|v_#pthreadsForks_50|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_88|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_11|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre12#1, ULTIMATE.start_main_#t~pre14#1, #pthreadsForks, #memory_int, ULTIMATE.start_main_#t~nondet13#1] [2022-12-06 05:40:24,466 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [482] $Ultimate##0-->L81: Formula: (= |v_thread2Thread1of1ForFork2_~cond~1#1_13| v_~v_assert~0_33) InVars {~v_assert~0=v_~v_assert~0_33} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_13|, ~v_assert~0=v_~v_assert~0_33, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_17|} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~cond~1#1, thread2Thread1of1ForFork2_~temp~0#1] and [485] L55-->L48-4: Formula: (and (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9| 0)) (= (+ |v_thread1Thread1of1ForFork1_~w~0#1_21| 1) |v_thread1Thread1of1ForFork1_~w~0#1_22|) (= (ite (= (select (select |v_#memory_int_56| v_~queue~0.base_37) (+ (* 4 v_~back~0_59) v_~queue~0.offset_37)) 1) 1 0) |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|) (= v_~back~0_58 (+ v_~back~0_59 1)) (not (= (ite (and (<= 0 v_~back~0_59) (< v_~back~0_59 v_~n~0_36)) 1 0) 0))) InVars {~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_22|, ~back~0=v_~back~0_59, #memory_int=|v_#memory_int_56|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36} OutVars{~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_17|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_9|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_21|, ~back~0=v_~back~0_58, #memory_int=|v_#memory_int_56|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_9|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#t~post1#1, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread1Thread1of1ForFork1_~w~0#1, ~back~0, thread1Thread1of1ForFork1_#t~mem2#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] [2022-12-06 05:40:24,795 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [485] L55-->L48-4: Formula: (and (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9| 0)) (= (+ |v_thread1Thread1of1ForFork1_~w~0#1_21| 1) |v_thread1Thread1of1ForFork1_~w~0#1_22|) (= (ite (= (select (select |v_#memory_int_56| v_~queue~0.base_37) (+ (* 4 v_~back~0_59) v_~queue~0.offset_37)) 1) 1 0) |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|) (= v_~back~0_58 (+ v_~back~0_59 1)) (not (= (ite (and (<= 0 v_~back~0_59) (< v_~back~0_59 v_~n~0_36)) 1 0) 0))) InVars {~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_22|, ~back~0=v_~back~0_59, #memory_int=|v_#memory_int_56|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36} OutVars{~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_17|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_9|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_21|, ~back~0=v_~back~0_58, #memory_int=|v_#memory_int_56|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_9|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#t~post1#1, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread1Thread1of1ForFork1_~w~0#1, ~back~0, thread1Thread1of1ForFork1_#t~mem2#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] and [543] L81-->L75: Formula: (and (= (select (select |v_#memory_int_104| v_~queue~0.base_55) (+ (* v_~front~0_67 4) v_~queue~0.offset_55)) |v_thread2Thread1of1ForFork2_~temp~0#1_21|) (not (= (mod |v_thread2Thread1of1ForFork2_~cond~1#1_17| 256) 0)) (not (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11| 0)) (= (+ v_~front~0_67 1) v_~front~0_66) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11| (ite (and (< v_~front~0_67 v_~n~0_56) (<= 0 v_~front~0_67) (< v_~front~0_67 v_~back~0_70)) 1 0)) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11| |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11|)) InVars {thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_17|, ~queue~0.offset=v_~queue~0.offset_55, #memory_int=|v_#memory_int_104|, ~back~0=v_~back~0_70, ~queue~0.base=v_~queue~0.base_55, ~n~0=v_~n~0_56, ~front~0=v_~front~0_67} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_17|, ~queue~0.offset=v_~queue~0.offset_55, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_21|, thread2Thread1of1ForFork2_#t~post5#1=|v_thread2Thread1of1ForFork2_#t~post5#1_11|, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11|, thread2Thread1of1ForFork2_#t~mem4#1=|v_thread2Thread1of1ForFork2_#t~mem4#1_11|, #memory_int=|v_#memory_int_104|, ~back~0=v_~back~0_70, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11|, ~queue~0.base=v_~queue~0.base_55, ~n~0=v_~n~0_56, ~front~0=v_~front~0_66} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~temp~0#1, thread2Thread1of1ForFork2_#t~post5#1, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1, thread2Thread1of1ForFork2_#t~mem4#1, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1, ~front~0] [2022-12-06 05:40:24,990 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [575] $Ultimate##0-->L110-3: Formula: (and (= |v_ULTIMATE.start_main_#t~pre14#1_47| |v_#pthreadsForks_94|) (= (store |v_#memory_int_170| |v_ULTIMATE.start_main_~#t3~0#1.base_51| (store (select |v_#memory_int_170| |v_ULTIMATE.start_main_~#t3~0#1.base_51|) |v_ULTIMATE.start_main_~#t3~0#1.offset_51| |v_ULTIMATE.start_main_#t~pre14#1_47|)) |v_#memory_int_169|) (= (+ |v_#pthreadsForks_94| 1) |v_#pthreadsForks_93|) (= |v_thread2Thread1of1ForFork2_~cond~1#1_48| v_~v_assert~0_163)) InVars {~v_assert~0=v_~v_assert~0_163, #pthreadsForks=|v_#pthreadsForks_94|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_51|, #memory_int=|v_#memory_int_170|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_51|} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_48|, ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_53|, ~v_assert~0=v_~v_assert~0_163, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_50|, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_47|, #pthreadsForks=|v_#pthreadsForks_93|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_51|, #memory_int=|v_#memory_int_169|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_36|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_51|} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~cond~1#1, ULTIMATE.start_main_#t~pre12#1, thread2Thread1of1ForFork2_~temp~0#1, ULTIMATE.start_main_#t~pre14#1, #pthreadsForks, #memory_int, ULTIMATE.start_main_#t~nondet13#1] and [485] L55-->L48-4: Formula: (and (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9| 0)) (= (+ |v_thread1Thread1of1ForFork1_~w~0#1_21| 1) |v_thread1Thread1of1ForFork1_~w~0#1_22|) (= (ite (= (select (select |v_#memory_int_56| v_~queue~0.base_37) (+ (* 4 v_~back~0_59) v_~queue~0.offset_37)) 1) 1 0) |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|) (= v_~back~0_58 (+ v_~back~0_59 1)) (not (= (ite (and (<= 0 v_~back~0_59) (< v_~back~0_59 v_~n~0_36)) 1 0) 0))) InVars {~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_22|, ~back~0=v_~back~0_59, #memory_int=|v_#memory_int_56|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36} OutVars{~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_17|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_9|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_21|, ~back~0=v_~back~0_58, #memory_int=|v_#memory_int_56|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_9|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#t~post1#1, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread1Thread1of1ForFork1_~w~0#1, ~back~0, thread1Thread1of1ForFork1_#t~mem2#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] [2022-12-06 05:40:25,084 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [482] $Ultimate##0-->L81: Formula: (= |v_thread2Thread1of1ForFork2_~cond~1#1_13| v_~v_assert~0_33) InVars {~v_assert~0=v_~v_assert~0_33} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_13|, ~v_assert~0=v_~v_assert~0_33, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_17|} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~cond~1#1, thread2Thread1of1ForFork2_~temp~0#1] and [485] L55-->L48-4: Formula: (and (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9| 0)) (= (+ |v_thread1Thread1of1ForFork1_~w~0#1_21| 1) |v_thread1Thread1of1ForFork1_~w~0#1_22|) (= (ite (= (select (select |v_#memory_int_56| v_~queue~0.base_37) (+ (* 4 v_~back~0_59) v_~queue~0.offset_37)) 1) 1 0) |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|) (= v_~back~0_58 (+ v_~back~0_59 1)) (not (= (ite (and (<= 0 v_~back~0_59) (< v_~back~0_59 v_~n~0_36)) 1 0) 0))) InVars {~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_22|, ~back~0=v_~back~0_59, #memory_int=|v_#memory_int_56|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36} OutVars{~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_17|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_9|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_21|, ~back~0=v_~back~0_58, #memory_int=|v_#memory_int_56|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_9|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#t~post1#1, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread1Thread1of1ForFork1_~w~0#1, ~back~0, thread1Thread1of1ForFork1_#t~mem2#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] [2022-12-06 05:40:25,146 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [578] L48-4-->L110-3: Formula: (and (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.base_47| 0)) (.cse2 (= |v_thread1Thread1of1ForFork1_#res#1.offset_47| 0)) (.cse1 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_91|))) (or (and .cse0 (not .cse1) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_98| |v_thread1Thread1of1ForFork1_~cond~0#1_97|)) (and .cse0 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_97| 256) 0) (= v_~v_assert~0_169 |v_thread1Thread1of1ForFork1_~cond~0#1_97|) .cse2 .cse1))) (= |v_ULTIMATE.start_main_#t~pre14#1_51| |v_#pthreadsForks_106|) (= (store |v_#memory_int_182| |v_ULTIMATE.start_main_~#t3~0#1.base_55| (store (select |v_#memory_int_182| |v_ULTIMATE.start_main_~#t3~0#1.base_55|) |v_ULTIMATE.start_main_~#t3~0#1.offset_55| |v_ULTIMATE.start_main_#t~pre14#1_51|)) |v_#memory_int_181|) (= (+ |v_#pthreadsForks_106| 1) |v_#pthreadsForks_105|)) InVars {~v_assert~0=v_~v_assert~0_169, #pthreadsForks=|v_#pthreadsForks_106|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_55|, #memory_int=|v_#memory_int_182|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_91|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_55|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_98|} OutVars{ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_59|, ~v_assert~0=v_~v_assert~0_169, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_51|, #pthreadsForks=|v_#pthreadsForks_105|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_55|, #memory_int=|v_#memory_int_181|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_40|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_91|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_55|, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_47|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_47|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_97|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre12#1, ULTIMATE.start_main_#t~pre14#1, #pthreadsForks, #memory_int, ULTIMATE.start_main_#t~nondet13#1, thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [482] $Ultimate##0-->L81: Formula: (= |v_thread2Thread1of1ForFork2_~cond~1#1_13| v_~v_assert~0_33) InVars {~v_assert~0=v_~v_assert~0_33} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_13|, ~v_assert~0=v_~v_assert~0_33, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_17|} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~cond~1#1, thread2Thread1of1ForFork2_~temp~0#1] [2022-12-06 05:40:25,270 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [528] L109-4-->L110-3: Formula: (and (= |v_ULTIMATE.start_main_#t~pre14#1_21| |v_#pthreadsForks_51|) (= |v_#pthreadsForks_50| (+ |v_#pthreadsForks_51| 1)) (= (store |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27| (store (select |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27|) |v_ULTIMATE.start_main_~#t3~0#1.offset_27| |v_ULTIMATE.start_main_#t~pre14#1_21|)) |v_#memory_int_88|)) InVars {#pthreadsForks=|v_#pthreadsForks_51|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_89|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} OutVars{ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_19|, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_21|, #pthreadsForks=|v_#pthreadsForks_50|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_88|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_11|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre12#1, ULTIMATE.start_main_#t~pre14#1, #pthreadsForks, #memory_int, ULTIMATE.start_main_#t~nondet13#1] and [485] L55-->L48-4: Formula: (and (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9| 0)) (= (+ |v_thread1Thread1of1ForFork1_~w~0#1_21| 1) |v_thread1Thread1of1ForFork1_~w~0#1_22|) (= (ite (= (select (select |v_#memory_int_56| v_~queue~0.base_37) (+ (* 4 v_~back~0_59) v_~queue~0.offset_37)) 1) 1 0) |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|) (= v_~back~0_58 (+ v_~back~0_59 1)) (not (= (ite (and (<= 0 v_~back~0_59) (< v_~back~0_59 v_~n~0_36)) 1 0) 0))) InVars {~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_22|, ~back~0=v_~back~0_59, #memory_int=|v_#memory_int_56|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36} OutVars{~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_17|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_9|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_21|, ~back~0=v_~back~0_58, #memory_int=|v_#memory_int_56|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_9|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#t~post1#1, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread1Thread1of1ForFork1_~w~0#1, ~back~0, thread1Thread1of1ForFork1_#t~mem2#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] [2022-12-06 05:40:25,341 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [528] L109-4-->L110-3: Formula: (and (= |v_ULTIMATE.start_main_#t~pre14#1_21| |v_#pthreadsForks_51|) (= |v_#pthreadsForks_50| (+ |v_#pthreadsForks_51| 1)) (= (store |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27| (store (select |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27|) |v_ULTIMATE.start_main_~#t3~0#1.offset_27| |v_ULTIMATE.start_main_#t~pre14#1_21|)) |v_#memory_int_88|)) InVars {#pthreadsForks=|v_#pthreadsForks_51|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_89|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} OutVars{ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_19|, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_21|, #pthreadsForks=|v_#pthreadsForks_50|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_88|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_11|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre12#1, ULTIMATE.start_main_#t~pre14#1, #pthreadsForks, #memory_int, ULTIMATE.start_main_#t~nondet13#1] and [482] $Ultimate##0-->L81: Formula: (= |v_thread2Thread1of1ForFork2_~cond~1#1_13| v_~v_assert~0_33) InVars {~v_assert~0=v_~v_assert~0_33} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_13|, ~v_assert~0=v_~v_assert~0_33, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_17|} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~cond~1#1, thread2Thread1of1ForFork2_~temp~0#1] [2022-12-06 05:40:25,363 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [485] L55-->L48-4: Formula: (and (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9| 0)) (= (+ |v_thread1Thread1of1ForFork1_~w~0#1_21| 1) |v_thread1Thread1of1ForFork1_~w~0#1_22|) (= (ite (= (select (select |v_#memory_int_56| v_~queue~0.base_37) (+ (* 4 v_~back~0_59) v_~queue~0.offset_37)) 1) 1 0) |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|) (= v_~back~0_58 (+ v_~back~0_59 1)) (not (= (ite (and (<= 0 v_~back~0_59) (< v_~back~0_59 v_~n~0_36)) 1 0) 0))) InVars {~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_22|, ~back~0=v_~back~0_59, #memory_int=|v_#memory_int_56|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36} OutVars{~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_17|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_9|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_21|, ~back~0=v_~back~0_58, #memory_int=|v_#memory_int_56|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_9|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#t~post1#1, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread1Thread1of1ForFork1_~w~0#1, ~back~0, thread1Thread1of1ForFork1_#t~mem2#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] and [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] [2022-12-06 05:40:25,412 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [485] L55-->L48-4: Formula: (and (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9| 0)) (= (+ |v_thread1Thread1of1ForFork1_~w~0#1_21| 1) |v_thread1Thread1of1ForFork1_~w~0#1_22|) (= (ite (= (select (select |v_#memory_int_56| v_~queue~0.base_37) (+ (* 4 v_~back~0_59) v_~queue~0.offset_37)) 1) 1 0) |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|) (= v_~back~0_58 (+ v_~back~0_59 1)) (not (= (ite (and (<= 0 v_~back~0_59) (< v_~back~0_59 v_~n~0_36)) 1 0) 0))) InVars {~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_22|, ~back~0=v_~back~0_59, #memory_int=|v_#memory_int_56|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36} OutVars{~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_17|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_9|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_21|, ~back~0=v_~back~0_58, #memory_int=|v_#memory_int_56|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_9|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#t~post1#1, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread1Thread1of1ForFork1_~w~0#1, ~back~0, thread1Thread1of1ForFork1_#t~mem2#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] and [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] [2022-12-06 05:40:25,748 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [485] L55-->L48-4: Formula: (and (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9| 0)) (= (+ |v_thread1Thread1of1ForFork1_~w~0#1_21| 1) |v_thread1Thread1of1ForFork1_~w~0#1_22|) (= (ite (= (select (select |v_#memory_int_56| v_~queue~0.base_37) (+ (* 4 v_~back~0_59) v_~queue~0.offset_37)) 1) 1 0) |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|) (= v_~back~0_58 (+ v_~back~0_59 1)) (not (= (ite (and (<= 0 v_~back~0_59) (< v_~back~0_59 v_~n~0_36)) 1 0) 0))) InVars {~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_22|, ~back~0=v_~back~0_59, #memory_int=|v_#memory_int_56|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36} OutVars{~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_17|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_9|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_21|, ~back~0=v_~back~0_58, #memory_int=|v_#memory_int_56|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_9|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#t~post1#1, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread1Thread1of1ForFork1_~w~0#1, ~back~0, thread1Thread1of1ForFork1_#t~mem2#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] and [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] [2022-12-06 05:40:25,954 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [485] L55-->L48-4: Formula: (and (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9| 0)) (= (+ |v_thread1Thread1of1ForFork1_~w~0#1_21| 1) |v_thread1Thread1of1ForFork1_~w~0#1_22|) (= (ite (= (select (select |v_#memory_int_56| v_~queue~0.base_37) (+ (* 4 v_~back~0_59) v_~queue~0.offset_37)) 1) 1 0) |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|) (= v_~back~0_58 (+ v_~back~0_59 1)) (not (= (ite (and (<= 0 v_~back~0_59) (< v_~back~0_59 v_~n~0_36)) 1 0) 0))) InVars {~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_22|, ~back~0=v_~back~0_59, #memory_int=|v_#memory_int_56|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36} OutVars{~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_17|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_9|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_21|, ~back~0=v_~back~0_58, #memory_int=|v_#memory_int_56|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_9|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#t~post1#1, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread1Thread1of1ForFork1_~w~0#1, ~back~0, thread1Thread1of1ForFork1_#t~mem2#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] and [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] [2022-12-06 05:40:26,004 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [485] L55-->L48-4: Formula: (and (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9| 0)) (= (+ |v_thread1Thread1of1ForFork1_~w~0#1_21| 1) |v_thread1Thread1of1ForFork1_~w~0#1_22|) (= (ite (= (select (select |v_#memory_int_56| v_~queue~0.base_37) (+ (* 4 v_~back~0_59) v_~queue~0.offset_37)) 1) 1 0) |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|) (= v_~back~0_58 (+ v_~back~0_59 1)) (not (= (ite (and (<= 0 v_~back~0_59) (< v_~back~0_59 v_~n~0_36)) 1 0) 0))) InVars {~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_22|, ~back~0=v_~back~0_59, #memory_int=|v_#memory_int_56|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36} OutVars{~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_17|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_9|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_21|, ~back~0=v_~back~0_58, #memory_int=|v_#memory_int_56|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_9|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#t~post1#1, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread1Thread1of1ForFork1_~w~0#1, ~back~0, thread1Thread1of1ForFork1_#t~mem2#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] and [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] [2022-12-06 05:40:26,053 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [485] L55-->L48-4: Formula: (and (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9| 0)) (= (+ |v_thread1Thread1of1ForFork1_~w~0#1_21| 1) |v_thread1Thread1of1ForFork1_~w~0#1_22|) (= (ite (= (select (select |v_#memory_int_56| v_~queue~0.base_37) (+ (* 4 v_~back~0_59) v_~queue~0.offset_37)) 1) 1 0) |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|) (= v_~back~0_58 (+ v_~back~0_59 1)) (not (= (ite (and (<= 0 v_~back~0_59) (< v_~back~0_59 v_~n~0_36)) 1 0) 0))) InVars {~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_22|, ~back~0=v_~back~0_59, #memory_int=|v_#memory_int_56|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36} OutVars{~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_17|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_9|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_21|, ~back~0=v_~back~0_58, #memory_int=|v_#memory_int_56|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_9|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#t~post1#1, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread1Thread1of1ForFork1_~w~0#1, ~back~0, thread1Thread1of1ForFork1_#t~mem2#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] and [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] [2022-12-06 05:40:26,237 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [485] L55-->L48-4: Formula: (and (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9| 0)) (= (+ |v_thread1Thread1of1ForFork1_~w~0#1_21| 1) |v_thread1Thread1of1ForFork1_~w~0#1_22|) (= (ite (= (select (select |v_#memory_int_56| v_~queue~0.base_37) (+ (* 4 v_~back~0_59) v_~queue~0.offset_37)) 1) 1 0) |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|) (= v_~back~0_58 (+ v_~back~0_59 1)) (not (= (ite (and (<= 0 v_~back~0_59) (< v_~back~0_59 v_~n~0_36)) 1 0) 0))) InVars {~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_22|, ~back~0=v_~back~0_59, #memory_int=|v_#memory_int_56|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36} OutVars{~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_17|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_9|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_21|, ~back~0=v_~back~0_58, #memory_int=|v_#memory_int_56|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_9|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#t~post1#1, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread1Thread1of1ForFork1_~w~0#1, ~back~0, thread1Thread1of1ForFork1_#t~mem2#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] and [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] [2022-12-06 05:40:26,295 INFO L203 LiptonReduction]: Total number of compositions: 10 [2022-12-06 05:40:26,296 INFO L143 eatedLiptonReduction]: Time needed for LBE in milliseconds: 3886 [2022-12-06 05:40:26,296 INFO L495 AbstractCegarLoop]: Abstraction has has 285 places, 1046 transitions, 12701 flow [2022-12-06 05:40:26,296 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 27 states, 27 states have (on average 1.8148148148148149) internal successors, (49), 26 states have internal predecessors, (49), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-12-06 05:40:26,296 INFO L205 CegarLoopForPetriNet]: Found error trace [2022-12-06 05:40:26,296 INFO L213 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-12-06 05:40:26,303 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Ended with exit code 0 [2022-12-06 05:40:26,502 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-12-06 05:40:26,502 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2022-12-06 05:40:26,503 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-12-06 05:40:26,503 INFO L85 PathProgramCache]: Analyzing trace with hash 310489073, now seen corresponding path program 1 times [2022-12-06 05:40:26,503 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-12-06 05:40:26,503 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [855389913] [2022-12-06 05:40:26,503 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 05:40:26,503 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-12-06 05:40:26,543 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 05:40:27,376 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-12-06 05:40:27,377 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-12-06 05:40:27,377 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [855389913] [2022-12-06 05:40:27,377 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [855389913] provided 0 perfect and 1 imperfect interpolant sequences [2022-12-06 05:40:27,377 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [508018478] [2022-12-06 05:40:27,377 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 05:40:27,377 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-12-06 05:40:27,377 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-12-06 05:40:27,380 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-12-06 05:40:27,382 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-12-06 05:40:27,477 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 05:40:27,482 INFO L263 TraceCheckSpWp]: Trace formula consists of 257 conjuncts, 43 conjunts are in the unsatisfiable core [2022-12-06 05:40:27,483 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-12-06 05:40:27,566 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-12-06 05:40:27,568 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 21 [2022-12-06 05:40:27,651 INFO L321 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-12-06 05:40:27,651 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 47 treesize of output 13 [2022-12-06 05:40:27,739 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-12-06 05:40:27,739 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-12-06 05:40:27,892 INFO L321 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-12-06 05:40:27,893 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 4 select indices, 4 select index equivalence classes, 0 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 6 case distinctions, treesize of input 102 treesize of output 120 [2022-12-06 05:40:27,909 INFO L321 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-12-06 05:40:27,910 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 0 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 51 treesize of output 57 [2022-12-06 05:40:28,204 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-12-06 05:40:28,205 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [508018478] provided 0 perfect and 2 imperfect interpolant sequences [2022-12-06 05:40:28,205 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-12-06 05:40:28,205 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9, 9] total 23 [2022-12-06 05:40:28,205 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1026566404] [2022-12-06 05:40:28,205 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-12-06 05:40:28,206 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 24 states [2022-12-06 05:40:28,206 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-12-06 05:40:28,207 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 24 interpolants. [2022-12-06 05:40:28,207 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=72, Invalid=480, Unknown=0, NotChecked=0, Total=552 [2022-12-06 05:40:28,207 INFO L490 CegarLoopForPetriNet]: Number of universal loopers: 0 out of 88 [2022-12-06 05:40:28,207 INFO L100 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 285 places, 1046 transitions, 12701 flow. Second operand has 24 states, 24 states have (on average 2.0416666666666665) internal successors, (49), 23 states have internal predecessors, (49), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-12-06 05:40:28,207 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-12-06 05:40:28,207 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 0 of 88 [2022-12-06 05:40:28,207 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-12-06 05:40:38,576 INFO L130 PetriNetUnfolder]: 14354/25038 cut-off events. [2022-12-06 05:40:38,576 INFO L131 PetriNetUnfolder]: For 733164/733164 co-relation queries the response was YES. [2022-12-06 05:40:38,738 INFO L83 FinitePrefix]: Finished finitePrefix Result has 190109 conditions, 25038 events. 14354/25038 cut-off events. For 733164/733164 co-relation queries the response was YES. Maximal size of possible extension queue 1346. Compared 211946 event pairs, 1370 based on Foata normal form. 108/25128 useless extension candidates. Maximal degree in co-relation 189898. Up to 7870 conditions per place. [2022-12-06 05:40:38,871 INFO L137 encePairwiseOnDemand]: 13/88 looper letters, 824 selfloop transitions, 913 changer transitions 93/1830 dead transitions. [2022-12-06 05:40:38,872 INFO L142 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 347 places, 1830 transitions, 26360 flow [2022-12-06 05:40:38,872 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 63 states. [2022-12-06 05:40:38,872 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 63 states. [2022-12-06 05:40:38,876 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 63 states to 63 states and 516 transitions. [2022-12-06 05:40:38,877 INFO L535 CegarLoopForPetriNet]: DFA transition density 0.09307359307359307 [2022-12-06 05:40:38,877 INFO L175 Difference]: Start difference. First operand has 285 places, 1046 transitions, 12701 flow. Second operand 63 states and 516 transitions. [2022-12-06 05:40:38,877 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 347 places, 1830 transitions, 26360 flow [2022-12-06 05:40:44,518 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 333 places, 1830 transitions, 23856 flow, removed 1087 selfloop flow, removed 14 redundant places. [2022-12-06 05:40:44,540 INFO L231 Difference]: Finished difference. Result has 354 places, 1261 transitions, 16885 flow [2022-12-06 05:40:44,541 INFO L276 CegarLoopForPetriNet]: {PETRI_ALPHABET=88, PETRI_DIFFERENCE_MINUEND_FLOW=11236, PETRI_DIFFERENCE_MINUEND_PLACES=271, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=1046, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=687, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=338, PETRI_DIFFERENCE_SUBTRAHEND_STATES=63, PETRI_FLOW=16885, PETRI_PLACES=354, PETRI_TRANSITIONS=1261} [2022-12-06 05:40:44,542 INFO L294 CegarLoopForPetriNet]: 32 programPoint places, 322 predicate places. [2022-12-06 05:40:44,542 WARN L163 eatedLiptonReduction]: Counterexample is not a run of mAbstraction. Replaying acceptance of the word... [2022-12-06 05:40:44,542 INFO L89 Accepts]: Start accepts. Operand has 354 places, 1261 transitions, 16885 flow [2022-12-06 05:40:44,548 INFO L95 Accepts]: Finished accepts. [2022-12-06 05:40:44,548 INFO L195 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-12-06 05:40:44,548 INFO L167 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 354 places, 1261 transitions, 16885 flow [2022-12-06 05:40:44,558 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 354 places, 1261 transitions, 16885 flow [2022-12-06 05:40:46,184 INFO L130 PetriNetUnfolder]: 3863/9876 cut-off events. [2022-12-06 05:40:46,184 INFO L131 PetriNetUnfolder]: For 395167/397926 co-relation queries the response was YES. [2022-12-06 05:40:46,275 INFO L83 FinitePrefix]: Finished finitePrefix Result has 73149 conditions, 9876 events. 3863/9876 cut-off events. For 395167/397926 co-relation queries the response was YES. Maximal size of possible extension queue 1032. Compared 110164 event pairs, 896 based on Foata normal form. 54/9226 useless extension candidates. Maximal degree in co-relation 72959. Up to 3131 conditions per place. [2022-12-06 05:40:46,394 INFO L184 LiptonReduction]: Starting Lipton reduction on Petri net that has 354 places, 1261 transitions, 16885 flow [2022-12-06 05:40:46,394 INFO L188 LiptonReduction]: Number of co-enabled transitions 7252 [2022-12-06 05:40:46,399 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [567] L48-4-->L110-3: Formula: (and (= (store |v_#memory_int_146| |v_ULTIMATE.start_main_~#t3~0#1.base_45| (store (select |v_#memory_int_146| |v_ULTIMATE.start_main_~#t3~0#1.base_45|) |v_ULTIMATE.start_main_~#t3~0#1.offset_45| |v_ULTIMATE.start_main_#t~pre14#1_41|)) |v_#memory_int_145|) (= |v_ULTIMATE.start_main_#t~pre14#1_41| |v_#pthreadsForks_82|) (let ((.cse0 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_73|)) (.cse1 (= |v_thread1Thread1of1ForFork1_#res#1.offset_37| 0)) (.cse2 (= |v_thread1Thread1of1ForFork1_#res#1.base_37| 0))) (or (and (= v_~v_assert~0_149 |v_thread1Thread1of1ForFork1_~cond~0#1_75|) .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_75| 256) 0) .cse2) (and (not .cse0) (= |v_thread1Thread1of1ForFork1_~cond~0#1_76| |v_thread1Thread1of1ForFork1_~cond~0#1_75|) .cse1 .cse2))) (= |v_#pthreadsForks_81| (+ |v_#pthreadsForks_82| 1))) InVars {~v_assert~0=v_~v_assert~0_149, #pthreadsForks=|v_#pthreadsForks_82|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_45|, #memory_int=|v_#memory_int_146|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_73|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_45|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_76|} OutVars{ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_45|, ~v_assert~0=v_~v_assert~0_149, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_41|, #pthreadsForks=|v_#pthreadsForks_81|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_45|, #memory_int=|v_#memory_int_145|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_30|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_73|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_45|, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_37|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_37|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_75|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre12#1, ULTIMATE.start_main_#t~pre14#1, #pthreadsForks, #memory_int, ULTIMATE.start_main_#t~nondet13#1, thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] [2022-12-06 05:40:46,502 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] [2022-12-06 05:40:46,603 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [567] L48-4-->L110-3: Formula: (and (= (store |v_#memory_int_146| |v_ULTIMATE.start_main_~#t3~0#1.base_45| (store (select |v_#memory_int_146| |v_ULTIMATE.start_main_~#t3~0#1.base_45|) |v_ULTIMATE.start_main_~#t3~0#1.offset_45| |v_ULTIMATE.start_main_#t~pre14#1_41|)) |v_#memory_int_145|) (= |v_ULTIMATE.start_main_#t~pre14#1_41| |v_#pthreadsForks_82|) (let ((.cse0 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_73|)) (.cse1 (= |v_thread1Thread1of1ForFork1_#res#1.offset_37| 0)) (.cse2 (= |v_thread1Thread1of1ForFork1_#res#1.base_37| 0))) (or (and (= v_~v_assert~0_149 |v_thread1Thread1of1ForFork1_~cond~0#1_75|) .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_75| 256) 0) .cse2) (and (not .cse0) (= |v_thread1Thread1of1ForFork1_~cond~0#1_76| |v_thread1Thread1of1ForFork1_~cond~0#1_75|) .cse1 .cse2))) (= |v_#pthreadsForks_81| (+ |v_#pthreadsForks_82| 1))) InVars {~v_assert~0=v_~v_assert~0_149, #pthreadsForks=|v_#pthreadsForks_82|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_45|, #memory_int=|v_#memory_int_146|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_73|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_45|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_76|} OutVars{ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_45|, ~v_assert~0=v_~v_assert~0_149, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_41|, #pthreadsForks=|v_#pthreadsForks_81|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_45|, #memory_int=|v_#memory_int_145|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_30|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_73|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_45|, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_37|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_37|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_75|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre12#1, ULTIMATE.start_main_#t~pre14#1, #pthreadsForks, #memory_int, ULTIMATE.start_main_#t~nondet13#1, thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] [2022-12-06 05:40:46,727 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] and [485] L55-->L48-4: Formula: (and (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9| 0)) (= (+ |v_thread1Thread1of1ForFork1_~w~0#1_21| 1) |v_thread1Thread1of1ForFork1_~w~0#1_22|) (= (ite (= (select (select |v_#memory_int_56| v_~queue~0.base_37) (+ (* 4 v_~back~0_59) v_~queue~0.offset_37)) 1) 1 0) |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|) (= v_~back~0_58 (+ v_~back~0_59 1)) (not (= (ite (and (<= 0 v_~back~0_59) (< v_~back~0_59 v_~n~0_36)) 1 0) 0))) InVars {~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_22|, ~back~0=v_~back~0_59, #memory_int=|v_#memory_int_56|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36} OutVars{~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_17|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_9|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_21|, ~back~0=v_~back~0_58, #memory_int=|v_#memory_int_56|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_9|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#t~post1#1, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread1Thread1of1ForFork1_~w~0#1, ~back~0, thread1Thread1of1ForFork1_#t~mem2#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] [2022-12-06 05:40:46,831 WARN L322 ript$VariableManager]: TermVariable LBE247 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 05:40:46,831 WARN L322 ript$VariableManager]: TermVariable LBE234 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 05:40:46,831 WARN L322 ript$VariableManager]: TermVariable LBE241 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 05:40:46,831 WARN L322 ript$VariableManager]: TermVariable LBE69 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 05:40:46,832 WARN L322 ript$VariableManager]: TermVariable LBE35 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 05:40:46,832 WARN L322 ript$VariableManager]: TermVariable LBE23 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 05:40:47,189 WARN L322 ript$VariableManager]: TermVariable LBE247 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 05:40:47,189 WARN L322 ript$VariableManager]: TermVariable LBE234 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 05:40:47,189 WARN L322 ript$VariableManager]: TermVariable LBE241 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 05:40:47,189 WARN L322 ript$VariableManager]: TermVariable LBE69 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 05:40:47,190 WARN L322 ript$VariableManager]: TermVariable LBE35 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 05:40:47,190 WARN L322 ript$VariableManager]: TermVariable LBE23 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 05:40:47,719 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [662] $Ultimate##0-->L48-4: Formula: (let ((.cse0 (+ v_~back~0_337 1)) (.cse1 (* v_~back~0_337 4)) (.cse2 (select |v_#memory_int_413| v_~queue~0.base_218))) (and (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_119| 0)) (= (+ |v_thread2Thread1of1ForFork2_~temp~0#1_207| v_~d~0_235) v_~d~0_234) (= (+ v_~front~0_217 1) v_~front~0_216) (not (= 0 (ite (and (< .cse0 v_~n~0_213) (<= 0 .cse0)) 1 0))) (= v_~v_assert~0_306 |v_thread2Thread1of1ForFork2_~cond~1#1_149|) (= |v_thread1Thread1of1ForFork1_~w~0#1_345| (+ |v_thread1Thread1of1ForFork1_~w~0#1_343| 2)) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_78| |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_78|) (= v_~v_assert~0_306 |v_thread1Thread1of1ForFork1_~cond~0#1_270|) (not (= (ite (= (select (select |v_#memory_int_414| v_~queue~0.base_218) (+ .cse1 v_~queue~0.offset_218)) 1) 1 0) 0)) (< 0 (+ |v_thread1Thread1of1ForFork1_~w~0#1_343| 1)) (= |v_ULTIMATE.start_main_#t~pre14#1_121| |v_#pthreadsForks_244|) (= v_~back~0_335 (+ v_~back~0_337 2)) (not (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_270| 256) 0)) (not (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_78| 0)) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_78| (ite (and (< v_~front~0_217 .cse0) (< v_~front~0_217 v_~n~0_213) (<= 0 v_~front~0_217)) 1 0)) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_119| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_119|) (= (store |v_#memory_int_414| |v_ULTIMATE.start_main_~#t3~0#1.base_118| (store (select |v_#memory_int_414| |v_ULTIMATE.start_main_~#t3~0#1.base_118|) |v_ULTIMATE.start_main_~#t3~0#1.offset_117| |v_ULTIMATE.start_main_#t~pre14#1_121|)) |v_#memory_int_413|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_119| (ite (= (select .cse2 (+ .cse1 v_~queue~0.offset_218 4)) 1) 1 0)) (= (+ |v_#pthreadsForks_244| 1) |v_#pthreadsForks_243|) (= (select .cse2 (+ (* v_~front~0_217 4) v_~queue~0.offset_218)) |v_thread2Thread1of1ForFork2_~temp~0#1_207|))) InVars {~queue~0.offset=v_~queue~0.offset_218, ~v_assert~0=v_~v_assert~0_306, #pthreadsForks=|v_#pthreadsForks_244|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_117|, ~d~0=v_~d~0_235, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_345|, ~back~0=v_~back~0_337, #memory_int=|v_#memory_int_414|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_118|, ~queue~0.base=v_~queue~0.base_218, ~n~0=v_~n~0_213, ~front~0=v_~front~0_217} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_207|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_117|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_119|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_118|, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_78|, ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_133|, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_127|, thread2Thread1of1ForFork2_#t~post5#1=|v_thread2Thread1of1ForFork2_#t~post5#1_78|, #pthreadsForks=|v_#pthreadsForks_243|, thread2Thread1of1ForFork2_#t~mem4#1=|v_thread2Thread1of1ForFork2_#t~mem4#1_78|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_343|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_105|, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_119|, ~front~0=v_~front~0_216, thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_149|, ~queue~0.offset=v_~queue~0.offset_218, ~back~0=v_~back~0_335, ~queue~0.base=v_~queue~0.base_218, ~v_assert~0=v_~v_assert~0_306, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_78|, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_121|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_119|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_119|, ~d~0=v_~d~0_234, #memory_int=|v_#memory_int_413|, ~n~0=v_~n~0_213, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_270|} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~cond~1#1, thread2Thread1of1ForFork2_~temp~0#1, ~back~0, thread1Thread1of1ForFork1_#t~mem2#1, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1, ULTIMATE.start_main_#t~pre12#1, thread1Thread1of1ForFork1_#t~post1#1, thread2Thread1of1ForFork2_#t~post5#1, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1, #pthreadsForks, ULTIMATE.start_main_#t~pre14#1, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread2Thread1of1ForFork2_#t~mem4#1, ~d~0, thread1Thread1of1ForFork1_~w~0#1, ULTIMATE.start_main_#t~nondet13#1, #memory_int, thread1Thread1of1ForFork1_~cond~0#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1, ~front~0] and [543] L81-->L75: Formula: (and (= (select (select |v_#memory_int_104| v_~queue~0.base_55) (+ (* v_~front~0_67 4) v_~queue~0.offset_55)) |v_thread2Thread1of1ForFork2_~temp~0#1_21|) (not (= (mod |v_thread2Thread1of1ForFork2_~cond~1#1_17| 256) 0)) (not (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11| 0)) (= (+ v_~front~0_67 1) v_~front~0_66) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11| (ite (and (< v_~front~0_67 v_~n~0_56) (<= 0 v_~front~0_67) (< v_~front~0_67 v_~back~0_70)) 1 0)) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11| |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11|)) InVars {thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_17|, ~queue~0.offset=v_~queue~0.offset_55, #memory_int=|v_#memory_int_104|, ~back~0=v_~back~0_70, ~queue~0.base=v_~queue~0.base_55, ~n~0=v_~n~0_56, ~front~0=v_~front~0_67} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_17|, ~queue~0.offset=v_~queue~0.offset_55, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_21|, thread2Thread1of1ForFork2_#t~post5#1=|v_thread2Thread1of1ForFork2_#t~post5#1_11|, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11|, thread2Thread1of1ForFork2_#t~mem4#1=|v_thread2Thread1of1ForFork2_#t~mem4#1_11|, #memory_int=|v_#memory_int_104|, ~back~0=v_~back~0_70, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11|, ~queue~0.base=v_~queue~0.base_55, ~n~0=v_~n~0_56, ~front~0=v_~front~0_66} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~temp~0#1, thread2Thread1of1ForFork2_#t~post5#1, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1, thread2Thread1of1ForFork2_#t~mem4#1, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1, ~front~0] [2022-12-06 05:40:48,151 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [533] L108-3-->L109-3: Formula: (and (= |v_#pthreadsForks_54| (+ |v_#pthreadsForks_55| 1)) (= (store |v_#memory_int_93| |v_ULTIMATE.start_main_~#t2~0#1.base_27| (store (select |v_#memory_int_93| |v_ULTIMATE.start_main_~#t2~0#1.base_27|) |v_ULTIMATE.start_main_~#t2~0#1.offset_27| |v_ULTIMATE.start_main_#t~pre12#1_21|)) |v_#memory_int_92|) (= |v_ULTIMATE.start_main_#t~pre12#1_21| |v_#pthreadsForks_55|)) InVars {#pthreadsForks=|v_#pthreadsForks_55|, ULTIMATE.start_main_~#t2~0#1.offset=|v_ULTIMATE.start_main_~#t2~0#1.offset_27|, #memory_int=|v_#memory_int_93|, ULTIMATE.start_main_~#t2~0#1.base=|v_ULTIMATE.start_main_~#t2~0#1.base_27|} OutVars{ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_21|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_9|, #pthreadsForks=|v_#pthreadsForks_54|, ULTIMATE.start_main_~#t2~0#1.offset=|v_ULTIMATE.start_main_~#t2~0#1.offset_27|, ULTIMATE.start_main_#t~pre10#1=|v_ULTIMATE.start_main_#t~pre10#1_29|, #memory_int=|v_#memory_int_92|, ULTIMATE.start_main_~#t2~0#1.base=|v_ULTIMATE.start_main_~#t2~0#1.base_27|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre12#1, ULTIMATE.start_main_#t~nondet11#1, #pthreadsForks, ULTIMATE.start_main_#t~pre10#1, #memory_int] and [482] $Ultimate##0-->L81: Formula: (= |v_thread2Thread1of1ForFork2_~cond~1#1_13| v_~v_assert~0_33) InVars {~v_assert~0=v_~v_assert~0_33} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_13|, ~v_assert~0=v_~v_assert~0_33, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_17|} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~cond~1#1, thread2Thread1of1ForFork2_~temp~0#1] [2022-12-06 05:40:48,172 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [637] L55-->L75: Formula: (let ((.cse0 (select |v_#memory_int_350| v_~queue~0.base_182))) (and (= (+ v_~back~0_261 1) v_~back~0_260) (= |v_thread2Thread1of1ForFork2_~temp~0#1_160| (select .cse0 (+ (* v_~front~0_202 4) v_~queue~0.offset_182))) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_69| (ite (and (<= 0 v_~front~0_202) (< v_~front~0_202 v_~back~0_260) (< v_~front~0_202 v_~n~0_177)) 1 0)) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_80| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_80|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_80| (ite (= (select .cse0 (+ (* v_~back~0_261 4) v_~queue~0.offset_182)) 1) 1 0)) (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_80| 0)) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_69| |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_69|) (not (= (ite (and (< v_~back~0_261 v_~n~0_177) (<= 0 v_~back~0_261)) 1 0) 0)) (= (+ v_~front~0_202 1) v_~front~0_201) (not (= (mod |v_thread2Thread1of1ForFork2_~cond~1#1_132| 256) 0)) (= |v_thread1Thread1of1ForFork1_~w~0#1_261| (+ |v_thread1Thread1of1ForFork1_~w~0#1_260| 1)) (not (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_69| 0)))) InVars {thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_132|, ~queue~0.offset=v_~queue~0.offset_182, #memory_int=|v_#memory_int_350|, ~back~0=v_~back~0_261, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_261|, ~queue~0.base=v_~queue~0.base_182, ~n~0=v_~n~0_177, ~front~0=v_~front~0_202} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_132|, ~queue~0.offset=v_~queue~0.offset_182, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_160|, ~back~0=v_~back~0_260, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_80|, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_69|, ~queue~0.base=v_~queue~0.base_182, thread2Thread1of1ForFork2_#t~post5#1=|v_thread2Thread1of1ForFork2_#t~post5#1_69|, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_69|, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_88|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_80|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_80|, thread2Thread1of1ForFork2_#t~mem4#1=|v_thread2Thread1of1ForFork2_#t~mem4#1_69|, #memory_int=|v_#memory_int_350|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_260|, ~n~0=v_~n~0_177, ~front~0=v_~front~0_201, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_80|} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~temp~0#1, ~back~0, thread1Thread1of1ForFork1_#t~mem2#1, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1, thread2Thread1of1ForFork2_#t~post5#1, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1, thread1Thread1of1ForFork1_#t~post1#1, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread2Thread1of1ForFork2_#t~mem4#1, thread1Thread1of1ForFork1_~w~0#1, ~front~0, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] and [568] L48-4-->L78: Formula: (and (= v_~d~0_90 (+ v_~d~0_91 |v_thread2Thread1of1ForFork2_~temp~0#1_44|)) (let ((.cse1 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_75|)) (.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_39| 0)) (.cse2 (= |v_thread1Thread1of1ForFork1_#res#1.base_39| 0))) (or (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_79| |v_thread1Thread1of1ForFork1_~cond~0#1_80|) .cse0 (not .cse1) .cse2) (and .cse1 (= v_~v_assert~0_151 |v_thread1Thread1of1ForFork1_~cond~0#1_79|) (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_79| 256) 0) .cse0 .cse2)))) InVars {~v_assert~0=v_~v_assert~0_151, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_44|, ~d~0=v_~d~0_91, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_75|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_80|} OutVars{~v_assert~0=v_~v_assert~0_151, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_44|, ~d~0=v_~d~0_90, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_75|, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_39|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_39|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_79|} AuxVars[] AssignedVars[~d~0, thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] [2022-12-06 05:40:48,501 INFO L203 LiptonReduction]: Total number of compositions: 9 [2022-12-06 05:40:48,502 INFO L143 eatedLiptonReduction]: Time needed for LBE in milliseconds: 3960 [2022-12-06 05:40:48,502 INFO L495 AbstractCegarLoop]: Abstraction has has 350 places, 1257 transitions, 16931 flow [2022-12-06 05:40:48,504 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 24 states, 24 states have (on average 2.0416666666666665) internal successors, (49), 23 states have internal predecessors, (49), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-12-06 05:40:48,504 INFO L205 CegarLoopForPetriNet]: Found error trace [2022-12-06 05:40:48,504 INFO L213 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-12-06 05:40:48,511 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-12-06 05:40:48,705 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-12-06 05:40:48,706 INFO L420 AbstractCegarLoop]: === Iteration 10 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2022-12-06 05:40:48,706 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-12-06 05:40:48,706 INFO L85 PathProgramCache]: Analyzing trace with hash 182821510, now seen corresponding path program 1 times [2022-12-06 05:40:48,706 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-12-06 05:40:48,706 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1835499465] [2022-12-06 05:40:48,706 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 05:40:48,706 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-12-06 05:40:48,749 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 05:40:49,358 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-12-06 05:40:49,358 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-12-06 05:40:49,358 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1835499465] [2022-12-06 05:40:49,358 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1835499465] provided 0 perfect and 1 imperfect interpolant sequences [2022-12-06 05:40:49,358 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [678011773] [2022-12-06 05:40:49,358 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 05:40:49,358 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-12-06 05:40:49,359 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-12-06 05:40:49,360 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-12-06 05:40:49,367 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-12-06 05:40:49,452 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 05:40:49,454 INFO L263 TraceCheckSpWp]: Trace formula consists of 230 conjuncts, 35 conjunts are in the unsatisfiable core [2022-12-06 05:40:49,456 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-12-06 05:40:49,539 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-12-06 05:40:49,540 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 20 [2022-12-06 05:40:49,574 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-12-06 05:40:49,575 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 20 [2022-12-06 05:40:49,625 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 7 [2022-12-06 05:40:49,695 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-12-06 05:40:49,695 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-12-06 05:40:49,778 WARN L837 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_367 (Array Int Int))) (< (+ (select (select (store |c_#memory_int| |c_ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_367) c_~queue~0.base) (+ c_~queue~0.offset (* c_~front~0 4))) c_~d~0) (+ c_~W~0 1))) is different from false [2022-12-06 05:40:49,836 INFO L321 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-12-06 05:40:49,836 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 174 treesize of output 162 [2022-12-06 05:40:49,842 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 146 treesize of output 122 [2022-12-06 05:40:49,848 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 67 treesize of output 55 [2022-12-06 05:40:49,918 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-12-06 05:40:49,919 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [678011773] provided 0 perfect and 2 imperfect interpolant sequences [2022-12-06 05:40:49,919 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-12-06 05:40:49,919 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 9, 9] total 22 [2022-12-06 05:40:49,919 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [770756798] [2022-12-06 05:40:49,919 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-12-06 05:40:49,920 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 23 states [2022-12-06 05:40:49,920 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-12-06 05:40:49,920 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2022-12-06 05:40:49,920 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=82, Invalid=377, Unknown=7, NotChecked=40, Total=506 [2022-12-06 05:40:49,921 INFO L490 CegarLoopForPetriNet]: Number of universal loopers: 0 out of 101 [2022-12-06 05:40:49,921 INFO L100 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 350 places, 1257 transitions, 16931 flow. Second operand has 23 states, 23 states have (on average 2.260869565217391) internal successors, (52), 22 states have internal predecessors, (52), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-12-06 05:40:49,921 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-12-06 05:40:49,921 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 0 of 101 [2022-12-06 05:40:49,921 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-12-06 05:40:59,316 INFO L130 PetriNetUnfolder]: 14381/25168 cut-off events. [2022-12-06 05:40:59,316 INFO L131 PetriNetUnfolder]: For 888972/888972 co-relation queries the response was YES. [2022-12-06 05:40:59,484 INFO L83 FinitePrefix]: Finished finitePrefix Result has 197130 conditions, 25168 events. 14381/25168 cut-off events. For 888972/888972 co-relation queries the response was YES. Maximal size of possible extension queue 1335. Compared 213163 event pairs, 2884 based on Foata normal form. 96/25259 useless extension candidates. Maximal degree in co-relation 196414. Up to 9077 conditions per place. [2022-12-06 05:40:59,622 INFO L137 encePairwiseOnDemand]: 30/101 looper letters, 689 selfloop transitions, 732 changer transitions 56/1477 dead transitions. [2022-12-06 05:40:59,622 INFO L142 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 369 places, 1477 transitions, 23139 flow [2022-12-06 05:40:59,622 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-12-06 05:40:59,622 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2022-12-06 05:40:59,623 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 249 transitions. [2022-12-06 05:40:59,623 INFO L535 CegarLoopForPetriNet]: DFA transition density 0.12326732673267327 [2022-12-06 05:40:59,623 INFO L175 Difference]: Start difference. First operand has 350 places, 1257 transitions, 16931 flow. Second operand 20 states and 249 transitions. [2022-12-06 05:40:59,623 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 369 places, 1477 transitions, 23139 flow [2022-12-06 05:41:06,943 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 356 places, 1477 transitions, 22388 flow, removed 318 selfloop flow, removed 13 redundant places. [2022-12-06 05:41:06,962 INFO L231 Difference]: Finished difference. Result has 358 places, 1259 transitions, 18446 flow [2022-12-06 05:41:06,963 INFO L276 CegarLoopForPetriNet]: {PETRI_ALPHABET=101, PETRI_DIFFERENCE_MINUEND_FLOW=16292, PETRI_DIFFERENCE_MINUEND_PLACES=337, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=1255, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=726, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=523, PETRI_DIFFERENCE_SUBTRAHEND_STATES=20, PETRI_FLOW=18446, PETRI_PLACES=358, PETRI_TRANSITIONS=1259} [2022-12-06 05:41:06,964 INFO L294 CegarLoopForPetriNet]: 32 programPoint places, 326 predicate places. [2022-12-06 05:41:06,964 WARN L163 eatedLiptonReduction]: Counterexample is not a run of mAbstraction. Replaying acceptance of the word... [2022-12-06 05:41:06,964 INFO L89 Accepts]: Start accepts. Operand has 358 places, 1259 transitions, 18446 flow [2022-12-06 05:41:06,969 INFO L95 Accepts]: Finished accepts. [2022-12-06 05:41:06,969 INFO L195 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-12-06 05:41:06,970 INFO L167 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 358 places, 1259 transitions, 18446 flow [2022-12-06 05:41:06,979 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 358 places, 1259 transitions, 18446 flow [2022-12-06 05:41:08,505 INFO L380 tUnfolder$Statistics]: inserting event number 4 for the transition-marking pair ([507] $Ultimate##0-->thread3EXIT: Formula: (and (= (ite (= (ite (<= v_~d~0_19 v_~W~0_32) 1 0) 0) 0 1) v_~v_assert~0_45) (= |v_thread3Thread1of1ForFork0_#res.offset_7| 0) (= |v_thread3Thread1of1ForFork0_#res.base_7| 0)) InVars {~d~0=v_~d~0_19, ~W~0=v_~W~0_32} OutVars{~v_assert~0=v_~v_assert~0_45, thread3Thread1of1ForFork0_#res.offset=|v_thread3Thread1of1ForFork0_#res.offset_7|, ~d~0=v_~d~0_19, thread3Thread1of1ForFork0_#res.base=|v_thread3Thread1of1ForFork0_#res.base_7|, ~W~0=v_~W~0_32} AuxVars[] AssignedVars[~v_assert~0, thread3Thread1of1ForFork0_#res.offset, thread3Thread1of1ForFork0_#res.base][609], [Black: 723#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (<= ~d~0 0) (<= 1 ~W~0)), Black: 394#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (not (< 0 |thread1Thread1of1ForFork1_~w~0#1|)) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)) (forall ((v_ArrVal_128 (Array Int Int)) (v_ArrVal_129 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< (+ ~d~0 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1))))) (forall ((v_ArrVal_129 (Array Int Int))) (< (+ ~d~0 (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1)))), Black: 383#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (< |ULTIMATE.start_create_fresh_int_array_~i~0#1| |ULTIMATE.start_create_fresh_int_array_~size#1|) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)) (forall ((v_ArrVal_128 (Array Int Int)) (v_ArrVal_127 (Array Int Int)) (v_ArrVal_129 (Array Int Int))) (or (< (+ ~d~0 (select (select (store (store (store |#memory_int| |ULTIMATE.start_main_~#t1~0#1.base| v_ArrVal_127) |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) (+ (* ~front~0 4) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset|))) 2) (not (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t1~0#1.base| v_ArrVal_127) |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) (+ (* ~back~0 4) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset|)) 1))))) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (or (<= (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0 |thread1Thread1of1ForFork1_~w~0#1|) (+ ~W~0 1)) (and (or (<= (+ ~queue~0.offset (* ~back~0 4)) 0) (<= ~n~0 1)) (not (= (+ ~queue~0.offset (* ~back~0 4)) 0)))) (not (= ~queue~0.base |ULTIMATE.start_main_~#t2~0#1.base|)) (<= 0 ~front~0) (= ~queue~0.offset 0) (<= ~d~0 0) (<= (+ 2 ~queue~0.base) |ULTIMATE.start_main_~#t3~0#1.base|) (<= 1 ~W~0) (<= ~front~0 0)), Black: 630#(not (<= (mod |thread2Thread1of1ForFork2_~cond~1#1| 256) 0)), Black: 530#true, Black: 717#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= ~d~0 0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (or (not (< 0 |thread1Thread1of1ForFork1_~w~0#1|)) (= (* ~front~0 4) (* ~back~0 4))) (<= 0 ~front~0) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= 1 ~W~0)), Black: 295#(not (<= (mod |thread2Thread1of1ForFork2_~cond~1#1| 256) 0)), Black: 400#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (< |ULTIMATE.start_create_fresh_int_array_~i~0#1| |ULTIMATE.start_create_fresh_int_array_~size#1|) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)) (forall ((v_ArrVal_128 (Array Int Int)) (v_ArrVal_127 (Array Int Int)) (v_ArrVal_129 (Array Int Int))) (or (< (+ ~d~0 (select (select (store (store (store |#memory_int| |ULTIMATE.start_main_~#t1~0#1.base| v_ArrVal_127) |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) (+ (* ~front~0 4) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset|))) 2) (not (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t1~0#1.base| v_ArrVal_127) |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) (+ (* ~back~0 4) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset|)) 1))))) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (or (<= (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0 |thread1Thread1of1ForFork1_~w~0#1|) (+ ~W~0 1)) (and (or (<= (+ ~queue~0.offset (* ~back~0 4)) 0) (<= ~n~0 1)) (not (= (+ ~queue~0.offset (* ~back~0 4)) 0)))) (not (= ~queue~0.base |ULTIMATE.start_main_~#t2~0#1.base|)) (<= 0 ~front~0) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 0) (<= (+ 2 ~queue~0.base) |ULTIMATE.start_main_~#t3~0#1.base|) (<= 1 ~W~0) (<= ~front~0 0)), Black: 701#(and (<= |thread1Thread1of1ForFork1_~w~0#1| ~W~0) (= ~back~0 ~front~0) (= ~v_assert~0 1) (<= ~d~0 ~W~0) (<= ~d~0 0)), Black: 739#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= ~d~0 0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (<= 0 ~front~0) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= 1 ~W~0) (= |thread2Thread1of1ForFork2_~temp~0#1| 1)), Black: 404#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (forall ((v_ArrVal_129 (Array Int Int))) (< (+ ~d~0 (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1))) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 735#(and (<= |thread1Thread1of1ForFork1_~w~0#1| ~W~0) (= ~back~0 ~front~0) (= ~v_assert~0 1) (<= ~d~0 ~W~0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 0)), Black: 464#(and (or (not (< 0 |thread1Thread1of1ForFork1_~w~0#1|)) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)) (forall ((v_ArrVal_128 (Array Int Int)) (v_ArrVal_129 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< (+ ~d~0 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1))))) (not (<= (mod ~v_assert~0 256) 0))), Black: 371#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (< |ULTIMATE.start_create_fresh_int_array_~i~0#1| |ULTIMATE.start_create_fresh_int_array_~size#1|) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)) (forall ((v_ArrVal_128 (Array Int Int)) (v_ArrVal_127 (Array Int Int)) (v_ArrVal_129 (Array Int Int))) (or (< (+ ~d~0 (select (select (store (store (store |#memory_int| |ULTIMATE.start_main_~#t1~0#1.base| v_ArrVal_127) |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) (+ (* ~front~0 4) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset|))) 2) (not (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t1~0#1.base| v_ArrVal_127) |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) (+ (* ~back~0 4) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset|)) 1))))) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (or (<= (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0 |thread1Thread1of1ForFork1_~w~0#1|) (+ ~W~0 1)) (and (or (<= (+ ~queue~0.offset (* ~back~0 4)) 0) (<= ~n~0 1)) (not (= (+ ~queue~0.offset (* ~back~0 4)) 0)))) (not (= ~queue~0.base |ULTIMATE.start_main_~#t2~0#1.base|)) (<= 0 ~front~0) (= ~queue~0.offset 0) (<= ~d~0 0) (<= (+ 2 ~queue~0.base) |ULTIMATE.start_main_~#t3~0#1.base|) (<= 1 ~W~0) (<= ~front~0 0)), Black: 699#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= ~d~0 0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (<= 0 ~front~0) (= ~queue~0.offset 0) (<= 1 ~W~0)), Black: 697#(and (<= |thread1Thread1of1ForFork1_~w~0#1| ~W~0) (= ~d~0 0) (= ~back~0 ~front~0) (= ~v_assert~0 1) (<= ~d~0 ~W~0) (not (= ~queue~0.base |ULTIMATE.start_main_~#t2~0#1.base|)) (= ~queue~0.offset 0) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|))), Black: 747#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 0) (<= 1 ~W~0)), Black: 761#(and (not (<= (mod |thread2Thread1of1ForFork2_~cond~1#1| 256) 0)) (or (not (< 0 |thread1Thread1of1ForFork1_~w~0#1|)) (and (< ~d~0 ~W~0) (= (* ~front~0 4) (* ~back~0 4))) (= (mod ~v_assert~0 256) 0))), Black: 757#(and (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (or (not (< 0 |thread1Thread1of1ForFork1_~w~0#1|)) (and (< ~d~0 ~W~0) (= (* ~front~0 4) (* ~back~0 4))) (= (mod ~v_assert~0 256) 0))), Black: 719#(and (<= |thread1Thread1of1ForFork1_~w~0#1| ~W~0) (= ~d~0 0) (= ~back~0 ~front~0) (= ~v_assert~0 1) (<= ~d~0 ~W~0) (not (= ~queue~0.base |ULTIMATE.start_main_~#t2~0#1.base|)) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|))), 862#(and (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 674#(or (not (< 0 |thread1Thread1of1ForFork1_~w~0#1|)) (and (< ~d~0 ~W~0) (= (* ~front~0 4) (* ~back~0 4))) (= (mod ~v_assert~0 256) 0)), Black: 751#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (or (not (< 0 |thread1Thread1of1ForFork1_~w~0#1|)) (= (* ~front~0 4) (* ~back~0 4))) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 0) (<= 1 ~W~0)), Black: 713#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= ~d~0 0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (<= 0 ~front~0) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= 1 ~W~0)), Black: 703#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= ~d~0 0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (or (not (< 0 |thread1Thread1of1ForFork1_~w~0#1|)) (= (* ~front~0 4) (* ~back~0 4))) (<= 0 ~front~0) (= ~queue~0.offset 0) (<= 1 ~W~0)), Black: 799#(<= ~back~0 ~front~0), Black: 800#(<= ~back~0 (+ ~front~0 1)), 1487#(and (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 1584#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 1) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= 1 ~W~0)), Black: 1592#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), 1217#(and (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 979#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~n~0 2) (< 0 (+ (* ~front~0 4) ~queue~0.offset 1)) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (and (= ~d~0 0) (<= 2 ~W~0))) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (= ~queue~0.offset 0) (<= ~d~0 0) (<= (+ 2 ~queue~0.base) |ULTIMATE.start_main_~#t3~0#1.base|) (<= 1 ~W~0) (< ~front~0 ~n~0) (<= ~front~0 0) (<= (+ ~front~0 1) ~back~0)), Black: 1021#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (< (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (<= ~d~0 ~W~0) (or (forall ((v_ArrVal_260 (Array Int Int))) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_260) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1))) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), Black: 977#(and (or (and (or (<= (+ ~queue~0.offset (* ~back~0 4)) 0) (<= ~n~0 2)) (or (and (<= |thread1Thread1of1ForFork1_~w~0#1| ~W~0) (= ~d~0 0) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|))) (not (= (+ ~queue~0.offset (* ~back~0 4)) 0)))) (not (= (+ (* ~front~0 4) ~queue~0.offset) 0))) (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 1) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (or (<= (+ ~front~0 ~n~0) (+ ~back~0 2)) (<= (+ (* ~front~0 4) ~queue~0.offset) 0)) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= 1 ~W~0) (or (< 0 (+ (* ~front~0 4) ~queue~0.offset 1)) (<= ~back~0 ~front~0))), Black: 1005#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 1) (<= 1 ~W~0) (or (forall ((v_ArrVal_260 (Array Int Int))) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_260) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1))) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), Black: 1078#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 ~W~0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), 797#true, 68#L78true, Black: 1054#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 1) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (< (+ |thread2Thread1of1ForFork2_~temp~0#1| ~d~0) (+ ~W~0 1)) (<= 1 ~W~0)), Black: 1035#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (< (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (<= ~d~0 1) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= 1 ~W~0) (or (forall ((v_ArrVal_260 (Array Int Int))) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_260) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1))) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), Black: 1065#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (and (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|) (not (<= 0 ~back~0))) (and (= ~d~0 0) (<= 2 ~W~0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1))) (or (<= (+ ~front~0 ~n~0) (+ ~back~0 1)) (<= (+ (* ~front~0 4) ~queue~0.offset) 0)) (<= ~d~0 1) (<= 0 ~front~0) (= ~queue~0.offset 0) (<= 1 ~W~0) (or (forall ((v_ArrVal_260 (Array Int Int))) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_260) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1))) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), Black: 1049#(and (or (and (or (<= (+ ~queue~0.offset (* ~back~0 4)) 0) (<= ~n~0 2)) (or (and (<= |thread1Thread1of1ForFork1_~w~0#1| ~W~0) (= ~d~0 0) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|))) (not (= (+ ~queue~0.offset (* ~back~0 4)) 0)))) (not (= (+ (* ~front~0 4) ~queue~0.offset) 0))) (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 1) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (or (<= (+ ~front~0 ~n~0) (+ ~back~0 2)) (<= (+ (* ~front~0 4) ~queue~0.offset) 0)) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= 1 ~W~0) (or (< 0 (+ (* ~front~0 4) ~queue~0.offset 1)) (<= ~back~0 ~front~0)) (or (forall ((v_ArrVal_260 (Array Int Int))) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_260) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1))) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), Black: 1056#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 1) (or (< (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0))) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= 1 ~W~0)), Black: 1015#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 1) (or (< ~back~0 0) (and (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (= (* ~front~0 4) (* ~back~0 4))) (< ~n~0 (+ ~back~0 2))) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= 1 ~W~0) (or (< ~back~0 0) (< ~n~0 (+ ~back~0 2)) (< ~d~0 1))), Black: 1110#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 1) (or (< ~back~0 0) (and (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (= (* ~front~0 4) (* ~back~0 4))) (< ~n~0 (+ ~back~0 2))) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (< (+ |thread2Thread1of1ForFork2_~temp~0#1| ~d~0) (+ ~W~0 1)) (<= 1 ~W~0) (or (< ~back~0 0) (< ~n~0 (+ ~back~0 2)) (< ~d~0 1))), Black: 1092#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 1) (or (< (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0))) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (< (+ |thread2Thread1of1ForFork2_~temp~0#1| ~d~0) (+ ~W~0 1)) (<= 1 ~W~0)), Black: 1023#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 ~W~0) (or (forall ((v_ArrVal_260 (Array Int Int))) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_260) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1))) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), Black: 1090#(and (or (and (or (<= (+ ~queue~0.offset (* ~back~0 4)) 0) (<= ~n~0 2)) (or (and (<= |thread1Thread1of1ForFork1_~w~0#1| ~W~0) (= ~d~0 0) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|))) (not (= (+ ~queue~0.offset (* ~back~0 4)) 0)))) (not (= (+ (* ~front~0 4) ~queue~0.offset) 0))) (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (< (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (<= ~d~0 1) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (or (<= (+ ~front~0 ~n~0) (+ ~back~0 2)) (<= (+ (* ~front~0 4) ~queue~0.offset) 0)) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (< (+ |thread2Thread1of1ForFork2_~temp~0#1| ~d~0) (+ ~W~0 1)) (<= 1 ~W~0) (or (< 0 (+ (* ~front~0 4) ~queue~0.offset 1)) (<= ~back~0 ~front~0)) (or (forall ((v_ArrVal_260 (Array Int Int))) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_260) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1))) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), Black: 967#(and (or (and (or (<= (+ ~queue~0.offset (* ~back~0 4)) 0) (<= ~n~0 2)) (or (and (<= |thread1Thread1of1ForFork1_~w~0#1| ~W~0) (= ~d~0 0) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|))) (not (= (+ ~queue~0.offset (* ~back~0 4)) 0)))) (not (= (+ (* ~front~0 4) ~queue~0.offset) 0))) (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 1) (= ~queue~0.offset 0) (or (<= (+ ~front~0 ~n~0) (+ ~back~0 2)) (<= (+ (* ~front~0 4) ~queue~0.offset) 0)) (<= 1 ~W~0) (or (< 0 (+ (* ~front~0 4) ~queue~0.offset 1)) (<= ~back~0 ~front~0))), Black: 1001#(and (or (and (or (<= (+ ~queue~0.offset (* ~back~0 4)) 0) (<= ~n~0 2)) (or (and (<= |thread1Thread1of1ForFork1_~w~0#1| ~W~0) (= ~d~0 0) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|))) (not (= (+ ~queue~0.offset (* ~back~0 4)) 0)))) (not (= (+ (* ~front~0 4) ~queue~0.offset) 0))) (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= |thread2Thread1of1ForFork2_~temp~0#1| 1) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (or (<= (+ ~front~0 ~n~0) (+ ~back~0 2)) (<= (+ (* ~front~0 4) ~queue~0.offset) 0)) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 0) (<= 1 ~W~0) (or (< 0 (+ (* ~front~0 4) ~queue~0.offset 1)) (<= ~back~0 ~front~0))), Black: 1013#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= |thread2Thread1of1ForFork2_~temp~0#1| 1) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 0) (<= 1 ~W~0) (or (forall ((v_ArrVal_260 (Array Int Int))) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_260) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1))) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), Black: 1086#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (and (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|) (not (<= 0 ~back~0))) (and (= ~d~0 0) (<= 2 ~W~0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1))) (or (<= (+ ~front~0 ~n~0) (+ ~back~0 1)) (<= (+ (* ~front~0 4) ~queue~0.offset) 0)) (<= ~d~0 1) (<= 0 ~front~0) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= 1 ~W~0) (or (forall ((v_ArrVal_260 (Array Int Int))) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_260) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1))) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), Black: 1011#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= ~d~0 0) (<= 2 ~W~0) (or (not (= (+ (* ~front~0 4) ~queue~0.offset) 0)) (and (or (not (= (+ ~queue~0.offset (* ~back~0 4)) 0)) (and (<= |thread1Thread1of1ForFork1_~w~0#1| ~W~0) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)))) (or (<= (+ ~queue~0.offset (* ~back~0 4)) 0) (<= ~n~0 2)))) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (or (<= (+ ~front~0 ~n~0) (+ ~back~0 2)) (<= (+ (* ~front~0 4) ~queue~0.offset) 0)) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (= |thread2Thread1of1ForFork2_~temp~0#1| 1) (or (< 0 (+ (* ~front~0 4) ~queue~0.offset 1)) (<= ~back~0 ~front~0))), Black: 1029#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~n~0 2) (< 0 (+ (* ~front~0 4) ~queue~0.offset 1)) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (and (= ~d~0 0) (<= 2 ~W~0))) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 0) (<= (+ 2 ~queue~0.base) |ULTIMATE.start_main_~#t3~0#1.base|) (<= 1 ~W~0) (< ~front~0 ~n~0) (<= ~front~0 0) (<= (+ ~front~0 1) ~back~0)), Black: 971#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~n~0 2) (< 0 (+ (* ~front~0 4) ~queue~0.offset 1)) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 0) (<= (+ 2 ~queue~0.base) |ULTIMATE.start_main_~#t3~0#1.base|) (<= 1 ~W~0) (< ~front~0 ~n~0) (<= (+ ~front~0 1) ~back~0)), Black: 1088#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= ~d~0 0) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (not (<= 0 ~back~0))) (<= 2 ~W~0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (<= 0 ~front~0) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (= |thread2Thread1of1ForFork2_~temp~0#1| 1) (<= (+ (* ~front~0 4) ~queue~0.offset) 0)), Black: 995#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 1) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= 1 ~W~0)), Black: 997#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= ~d~0 0) (<= ~n~0 2) (< 0 (+ (* ~front~0 4) ~queue~0.offset 1)) (<= 2 ~W~0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= (+ 2 ~queue~0.base) |ULTIMATE.start_main_~#t3~0#1.base|) (< ~front~0 ~n~0) (<= (+ (* ~front~0 4) ~queue~0.offset) 0) (<= (+ ~front~0 1) ~back~0)), Black: 987#(and (or (and (or (<= (+ ~queue~0.offset (* ~back~0 4)) 0) (<= ~n~0 2)) (or (and (<= |thread1Thread1of1ForFork1_~w~0#1| ~W~0) (= ~d~0 0) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|))) (not (= (+ ~queue~0.offset (* ~back~0 4)) 0)))) (not (= (+ (* ~front~0 4) ~queue~0.offset) 0))) (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (and (= ~d~0 0) (<= 2 ~W~0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (or (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (not (<= 0 ~back~0))))) (or (<= (+ ~front~0 ~n~0) (+ ~back~0 1)) (<= (+ (* ~front~0 4) ~queue~0.offset) 0)) (<= ~d~0 ~W~0) (<= 0 ~front~0) (= ~queue~0.offset 0)), Black: 973#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~n~0 2) (< 0 (+ (* ~front~0 4) ~queue~0.offset 1)) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (and (= ~d~0 0) (<= 2 ~W~0))) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 0) (<= (+ 2 ~queue~0.base) |ULTIMATE.start_main_~#t3~0#1.base|) (<= 1 ~W~0) (< ~front~0 ~n~0) (<= (+ ~front~0 1) ~back~0)), Black: 1069#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 ~W~0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (or (forall ((v_ArrVal_260 (Array Int Int))) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_260) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1))) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), Black: 1039#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (< (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (<= ~d~0 1) (<= 1 ~W~0) (or (forall ((v_ArrVal_260 (Array Int Int))) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_260) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1))) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), Black: 1003#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 1) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= 1 ~W~0) (or (forall ((v_ArrVal_260 (Array Int Int))) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_260) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1))) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), 255#(and (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 1075#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= ~d~0 0) (or (<= (+ ~front~0 ~n~0) (+ ~back~0 1)) (<= (+ (* ~front~0 4) ~queue~0.offset) 0)) (<= 2 ~W~0) (<= 0 ~front~0) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (and (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|) (not (<= 0 ~back~0)))) (= |thread2Thread1of1ForFork2_~temp~0#1| 1) (or (forall ((v_ArrVal_260 (Array Int Int))) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_260) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1))) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), Black: 1080#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 ~W~0) (or (< (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0))) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 1100#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (< (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (<= ~d~0 1) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (< (+ |thread2Thread1of1ForFork2_~temp~0#1| ~d~0) (+ ~W~0 1)) (<= 1 ~W~0) (or (forall ((v_ArrVal_260 (Array Int Int))) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_260) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1))) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), Black: 1051#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (< (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (<= |thread2Thread1of1ForFork2_~temp~0#1| 1) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 0) (<= 1 ~W~0) (or (forall ((v_ArrVal_260 (Array Int Int))) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_260) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1))) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), Black: 1033#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~n~0 2) (< 0 (+ (* ~front~0 4) ~queue~0.offset 1)) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (and (= ~d~0 0) (<= 2 ~W~0))) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (<= |thread2Thread1of1ForFork2_~temp~0#1| 1) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 0) (<= (+ 2 ~queue~0.base) |ULTIMATE.start_main_~#t3~0#1.base|) (<= 1 ~W~0) (< ~front~0 ~n~0) (<= ~front~0 0) (<= (+ ~front~0 1) ~back~0)), Black: 1061#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 ~W~0) (or (< (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), Black: 1375#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 1031#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 1) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (< (+ |thread2Thread1of1ForFork2_~temp~0#1| ~d~0) (+ ~W~0 1)) (or (< ~back~0 0) (< ~n~0 (+ ~back~0 2)) (and (< ~d~0 ~W~0) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (= (* ~front~0 4) (* ~back~0 4)))) (<= 1 ~W~0)), Black: 1339#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (<= (+ ~d~0 1) ~W~0) (or (and (< (+ ~d~0 1) ~W~0) (= (* ~front~0 4) (* ~back~0 4))) (< |thread1Thread1of1ForFork1_~w~0#1| 2))), Black: 1047#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= ~d~0 0) (or (<= (+ ~front~0 ~n~0) (+ ~back~0 1)) (<= (+ (* ~front~0 4) ~queue~0.offset) 0)) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (and (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (or (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (not (<= 0 ~back~0))))) (<= 2 ~W~0) (<= 0 ~front~0) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (= |thread2Thread1of1ForFork2_~temp~0#1| 1)), Black: 1379#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= 2 ~W~0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (<= (+ ~d~0 1) ~W~0) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (= (* ~front~0 4) (* ~back~0 4))) (<= ~d~0 2)), Black: 1059#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (< (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (<= ~d~0 ~W~0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (or (forall ((v_ArrVal_260 (Array Int Int))) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_260) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1))) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), Black: 1071#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 1) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (< (+ |thread2Thread1of1ForFork2_~temp~0#1| ~d~0) (+ ~W~0 1)) (<= 1 ~W~0) (or (forall ((v_ArrVal_260 (Array Int Int))) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_260) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1))) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), Black: 1019#(and (or (and (or (<= (+ ~queue~0.offset (* ~back~0 4)) 0) (<= ~n~0 2)) (or (and (<= |thread1Thread1of1ForFork1_~w~0#1| ~W~0) (= ~d~0 0) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|))) (not (= (+ ~queue~0.offset (* ~back~0 4)) 0)))) (not (= (+ (* ~front~0 4) ~queue~0.offset) 0))) (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 ~W~0) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (or (<= (+ ~front~0 ~n~0) (+ ~back~0 2)) (<= (+ (* ~front~0 4) ~queue~0.offset) 0)) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (or (< ~back~0 0) (< ~d~0 ~W~0) (< ~n~0 (+ ~back~0 2))) (or (< 0 (+ (* ~front~0 4) ~queue~0.offset 1)) (<= ~back~0 ~front~0)) (or (forall ((v_ArrVal_260 (Array Int Int))) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_260) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1))) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), Black: 1331#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 ~W~0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 1361#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 1) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) (- 4) ~queue~0.offset)) 1) (<= 2 ~W~0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (= |thread2Thread1of1ForFork2_~temp~0#1| 1) (or (and (< (+ ~d~0 1) ~W~0) (= (* ~front~0 4) (* ~back~0 4))) (< |thread1Thread1of1ForFork1_~w~0#1| 2))), Black: 1359#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= 2 ~W~0) (or (and (< (+ ~d~0 1) ~W~0) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (= (* ~front~0 4) (* ~back~0 4))) (< |thread1Thread1of1ForFork1_~w~0#1| 2)) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 2)), Black: 1399#(and (or (and (< (+ ~d~0 1) ~W~0) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (= (* ~front~0 4) (* ~back~0 4))) (< |thread1Thread1of1ForFork1_~w~0#1| 2)) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 1389#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= 2 ~W~0) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (<= (+ ~d~0 1) ~W~0) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (= (* ~front~0 4) (* ~back~0 4))) (= |thread2Thread1of1ForFork2_~temp~0#1| 1) (<= ~d~0 2)), Black: 1343#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 1) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) (- 4) ~queue~0.offset)) 1) (<= 2 ~W~0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (= |thread2Thread1of1ForFork2_~temp~0#1| 1)), Black: 1347#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= 2 ~W~0) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (and (<= (+ ~d~0 1) ~W~0) (= (* ~front~0 4) (* ~back~0 4)))) (= ~queue~0.offset 0) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (<= ~d~0 2)), Black: 1381#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= 2 ~W~0) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (and (<= (+ ~d~0 1) ~W~0) (= (* ~front~0 4) (* ~back~0 4)))) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (<= ~d~0 2)), Black: 1315#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (<= (+ ~d~0 1) ~W~0)), Black: 1397#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= 2 ~W~0) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (or (< (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1))) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (<= (+ ~d~0 1) ~W~0) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (= (* ~front~0 4) (* ~back~0 4))) (= |thread2Thread1of1ForFork2_~temp~0#1| 1) (<= ~d~0 2)), Black: 1385#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (and (< (+ ~d~0 1) ~W~0) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (= (* ~front~0 4) (* ~back~0 4))) (< |thread1Thread1of1ForFork1_~w~0#1| 2)) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 1325#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= 2 ~W~0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (= ~queue~0.offset 0) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (<= (+ ~d~0 1) ~W~0) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (= (* ~front~0 4) (* ~back~0 4))) (<= ~d~0 2)), Black: 1313#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= 2 ~W~0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (<= (+ ~d~0 1) ~W~0) (<= ~d~0 2)), Black: 1333#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 ~W~0) (or (and (< (+ ~d~0 1) ~W~0) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (= (* ~front~0 4) (* ~back~0 4))) (< |thread1Thread1of1ForFork1_~w~0#1| 2)) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 1351#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= 2 ~W~0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (<= (+ ~d~0 1) ~W~0) (or (and (< (+ ~d~0 1) ~W~0) (= (* ~front~0 4) (* ~back~0 4))) (< |thread1Thread1of1ForFork1_~w~0#1| 2)) (<= ~d~0 2)), Black: 1357#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= 2 ~W~0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 2)), Black: 151#(and (= ~v_assert~0 1) (= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 166#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 ~W~0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= (div |thread2Thread1of1ForFork2_~cond~1#1| 256) 0)), Black: 173#(or (<= ~back~0 ~front~0) (<= ~n~0 ~front~0) (not (<= 0 ~front~0))), 602#(and (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), 29#L110-4true, 5#L55true, Black: 299#(not (<= (mod ~v_assert~0 256) 0)), Black: 456#(and (or (not (< 0 |thread1Thread1of1ForFork1_~w~0#1|)) (not (< ~back~0 ~n~0)) (= (mod ~v_assert~0 256) 0) (not (<= 0 ~back~0)) (forall ((v_ArrVal_128 (Array Int Int)) (v_ArrVal_129 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< (+ ~d~0 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1))))) (not (<= (mod |thread2Thread1of1ForFork2_~cond~1#1| 256) 0))), Black: 385#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (forall ((v_ArrVal_129 (Array Int Int))) (< (+ ~d~0 (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1)))), Black: 410#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (< (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (or (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (not (< ~back~0 ~n~0)) (forall ((v_ArrVal_129 (Array Int Int))) (< (+ ~d~0 (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1))) (not (<= 0 ~back~0))) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 183#true, Black: 398#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (< |ULTIMATE.start_create_fresh_int_array_~i~0#1| |ULTIMATE.start_create_fresh_int_array_~size#1|) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)) (forall ((v_ArrVal_128 (Array Int Int)) (v_ArrVal_127 (Array Int Int)) (v_ArrVal_129 (Array Int Int))) (or (< (+ ~d~0 (select (select (store (store (store |#memory_int| |ULTIMATE.start_main_~#t1~0#1.base| v_ArrVal_127) |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) (+ (* ~front~0 4) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset|))) 2) (not (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t1~0#1.base| v_ArrVal_127) |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) (+ (* ~back~0 4) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset|)) 1))))) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (or (<= (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0 |thread1Thread1of1ForFork1_~w~0#1|) (+ ~W~0 1)) (and (or (<= (+ ~queue~0.offset (* ~back~0 4)) 0) (<= ~n~0 1)) (not (= (+ ~queue~0.offset (* ~back~0 4)) 0)))) (not (= ~queue~0.base |ULTIMATE.start_main_~#t2~0#1.base|)) (<= 0 ~front~0) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 0) (<= (+ 2 ~queue~0.base) |ULTIMATE.start_main_~#t3~0#1.base|) (<= 1 ~W~0) (<= ~front~0 0)), Black: 392#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (< (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (or (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (not (< ~back~0 ~n~0)) (forall ((v_ArrVal_129 (Array Int Int))) (< (+ ~d~0 (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1))) (not (<= 0 ~back~0))))]) [2022-12-06 05:41:08,506 INFO L382 tUnfolder$Statistics]: this new event has 17 ancestors and is cut-off event [2022-12-06 05:41:08,506 INFO L385 tUnfolder$Statistics]: existing Event has 15 ancestors and is cut-off event [2022-12-06 05:41:08,506 INFO L385 tUnfolder$Statistics]: existing Event has 17 ancestors and is cut-off event [2022-12-06 05:41:08,506 INFO L385 tUnfolder$Statistics]: existing Event has 17 ancestors and is cut-off event [2022-12-06 05:41:08,836 INFO L130 PetriNetUnfolder]: 3914/10041 cut-off events. [2022-12-06 05:41:08,836 INFO L131 PetriNetUnfolder]: For 403686/406610 co-relation queries the response was YES. [2022-12-06 05:41:08,914 INFO L83 FinitePrefix]: Finished finitePrefix Result has 75923 conditions, 10041 events. 3914/10041 cut-off events. For 403686/406610 co-relation queries the response was YES. Maximal size of possible extension queue 1033. Compared 112457 event pairs, 952 based on Foata normal form. 57/9369 useless extension candidates. Maximal degree in co-relation 75701. Up to 3236 conditions per place. [2022-12-06 05:41:09,085 INFO L184 LiptonReduction]: Starting Lipton reduction on Petri net that has 358 places, 1259 transitions, 18446 flow [2022-12-06 05:41:09,086 INFO L188 LiptonReduction]: Number of co-enabled transitions 7262 [2022-12-06 05:41:09,093 INFO L203 LiptonReduction]: Total number of compositions: 0 [2022-12-06 05:41:09,093 INFO L143 eatedLiptonReduction]: Time needed for LBE in milliseconds: 2129 [2022-12-06 05:41:09,093 INFO L495 AbstractCegarLoop]: Abstraction has has 358 places, 1259 transitions, 18446 flow [2022-12-06 05:41:09,094 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 23 states, 23 states have (on average 2.260869565217391) internal successors, (52), 22 states have internal predecessors, (52), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-12-06 05:41:09,094 INFO L205 CegarLoopForPetriNet]: Found error trace [2022-12-06 05:41:09,094 INFO L213 CegarLoopForPetriNet]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-12-06 05:41:09,108 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-12-06 05:41:09,305 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2022-12-06 05:41:09,306 INFO L420 AbstractCegarLoop]: === Iteration 11 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2022-12-06 05:41:09,306 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-12-06 05:41:09,306 INFO L85 PathProgramCache]: Analyzing trace with hash -1783012358, now seen corresponding path program 1 times [2022-12-06 05:41:09,306 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-12-06 05:41:09,306 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1984953514] [2022-12-06 05:41:09,306 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 05:41:09,306 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-12-06 05:41:09,350 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 05:41:10,155 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-12-06 05:41:10,155 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-12-06 05:41:10,155 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1984953514] [2022-12-06 05:41:10,155 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1984953514] provided 0 perfect and 1 imperfect interpolant sequences [2022-12-06 05:41:10,155 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1919278488] [2022-12-06 05:41:10,156 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 05:41:10,156 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-12-06 05:41:10,156 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-12-06 05:41:10,157 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-12-06 05:41:10,160 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-12-06 05:41:10,257 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 05:41:10,259 INFO L263 TraceCheckSpWp]: Trace formula consists of 259 conjuncts, 64 conjunts are in the unsatisfiable core [2022-12-06 05:41:10,262 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-12-06 05:41:10,291 INFO L321 Elim1Store]: treesize reduction 15, result has 46.4 percent of original size [2022-12-06 05:41:10,291 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 22 treesize of output 32 [2022-12-06 05:41:10,297 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-12-06 05:41:10,298 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 20 treesize of output 22 [2022-12-06 05:41:10,347 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-12-06 05:41:10,391 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-12-06 05:41:10,392 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 21 [2022-12-06 05:41:10,595 INFO L321 Elim1Store]: treesize reduction 24, result has 11.1 percent of original size [2022-12-06 05:41:10,595 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 3 select indices, 3 select index equivalence classes, 0 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 47 treesize of output 16 [2022-12-06 05:41:10,671 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-12-06 05:41:10,671 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-12-06 05:41:11,031 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-12-06 05:41:11,032 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1919278488] provided 0 perfect and 2 imperfect interpolant sequences [2022-12-06 05:41:11,032 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-12-06 05:41:11,032 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10, 10] total 26 [2022-12-06 05:41:11,032 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [102579316] [2022-12-06 05:41:11,032 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-12-06 05:41:11,033 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 27 states [2022-12-06 05:41:11,033 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-12-06 05:41:11,033 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2022-12-06 05:41:11,033 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=101, Invalid=600, Unknown=1, NotChecked=0, Total=702 [2022-12-06 05:41:11,033 INFO L490 CegarLoopForPetriNet]: Number of universal loopers: 0 out of 99 [2022-12-06 05:41:11,034 INFO L100 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 358 places, 1259 transitions, 18446 flow. Second operand has 27 states, 27 states have (on average 1.9259259259259258) internal successors, (52), 26 states have internal predecessors, (52), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-12-06 05:41:11,034 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-12-06 05:41:11,034 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 0 of 99 [2022-12-06 05:41:11,034 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-12-06 05:41:15,225 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.01s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2022-12-06 05:41:27,562 INFO L130 PetriNetUnfolder]: 16225/28642 cut-off events. [2022-12-06 05:41:27,562 INFO L131 PetriNetUnfolder]: For 1029084/1029084 co-relation queries the response was YES. [2022-12-06 05:41:27,791 INFO L83 FinitePrefix]: Finished finitePrefix Result has 228545 conditions, 28642 events. 16225/28642 cut-off events. For 1029084/1029084 co-relation queries the response was YES. Maximal size of possible extension queue 1549. Compared 249987 event pairs, 1750 based on Foata normal form. 84/28721 useless extension candidates. Maximal degree in co-relation 227599. Up to 11554 conditions per place. [2022-12-06 05:41:27,978 INFO L137 encePairwiseOnDemand]: 11/99 looper letters, 770 selfloop transitions, 1143 changer transitions 85/1998 dead transitions. [2022-12-06 05:41:27,978 INFO L142 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 408 places, 1998 transitions, 32174 flow [2022-12-06 05:41:27,978 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 51 states. [2022-12-06 05:41:27,978 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 51 states. [2022-12-06 05:41:27,980 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 51 states to 51 states and 501 transitions. [2022-12-06 05:41:27,980 INFO L535 CegarLoopForPetriNet]: DFA transition density 0.0992275698158051 [2022-12-06 05:41:27,981 INFO L175 Difference]: Start difference. First operand has 358 places, 1259 transitions, 18446 flow. Second operand 51 states and 501 transitions. [2022-12-06 05:41:27,981 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 408 places, 1998 transitions, 32174 flow [2022-12-06 05:41:38,441 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 389 places, 1998 transitions, 30147 flow, removed 84 selfloop flow, removed 19 redundant places. [2022-12-06 05:41:38,495 INFO L231 Difference]: Finished difference. Result has 414 places, 1556 transitions, 24903 flow [2022-12-06 05:41:38,495 INFO L276 CegarLoopForPetriNet]: {PETRI_ALPHABET=99, PETRI_DIFFERENCE_MINUEND_FLOW=16803, PETRI_DIFFERENCE_MINUEND_PLACES=339, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=1259, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=858, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=289, PETRI_DIFFERENCE_SUBTRAHEND_STATES=51, PETRI_FLOW=24903, PETRI_PLACES=414, PETRI_TRANSITIONS=1556} [2022-12-06 05:41:38,496 INFO L294 CegarLoopForPetriNet]: 32 programPoint places, 382 predicate places. [2022-12-06 05:41:38,496 WARN L163 eatedLiptonReduction]: Counterexample is not a run of mAbstraction. Replaying acceptance of the word... [2022-12-06 05:41:38,496 INFO L89 Accepts]: Start accepts. Operand has 414 places, 1556 transitions, 24903 flow [2022-12-06 05:41:38,502 INFO L95 Accepts]: Finished accepts. [2022-12-06 05:41:38,503 INFO L195 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-12-06 05:41:38,503 INFO L167 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 414 places, 1556 transitions, 24903 flow [2022-12-06 05:41:38,516 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 414 places, 1556 transitions, 24903 flow [2022-12-06 05:41:40,671 INFO L380 tUnfolder$Statistics]: inserting event number 4 for the transition-marking pair ([507] $Ultimate##0-->thread3EXIT: Formula: (and (= (ite (= (ite (<= v_~d~0_19 v_~W~0_32) 1 0) 0) 0 1) v_~v_assert~0_45) (= |v_thread3Thread1of1ForFork0_#res.offset_7| 0) (= |v_thread3Thread1of1ForFork0_#res.base_7| 0)) InVars {~d~0=v_~d~0_19, ~W~0=v_~W~0_32} OutVars{~v_assert~0=v_~v_assert~0_45, thread3Thread1of1ForFork0_#res.offset=|v_thread3Thread1of1ForFork0_#res.offset_7|, ~d~0=v_~d~0_19, thread3Thread1of1ForFork0_#res.base=|v_thread3Thread1of1ForFork0_#res.base_7|, ~W~0=v_~W~0_32} AuxVars[] AssignedVars[~v_assert~0, thread3Thread1of1ForFork0_#res.offset, thread3Thread1of1ForFork0_#res.base][1192], [1657#(and (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 723#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (<= ~d~0 0) (<= 1 ~W~0)), Black: 394#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (not (< 0 |thread1Thread1of1ForFork1_~w~0#1|)) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)) (forall ((v_ArrVal_128 (Array Int Int)) (v_ArrVal_129 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< (+ ~d~0 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1))))) (forall ((v_ArrVal_129 (Array Int Int))) (< (+ ~d~0 (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1)))), Black: 383#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (< |ULTIMATE.start_create_fresh_int_array_~i~0#1| |ULTIMATE.start_create_fresh_int_array_~size#1|) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)) (forall ((v_ArrVal_128 (Array Int Int)) (v_ArrVal_127 (Array Int Int)) (v_ArrVal_129 (Array Int Int))) (or (< (+ ~d~0 (select (select (store (store (store |#memory_int| |ULTIMATE.start_main_~#t1~0#1.base| v_ArrVal_127) |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) (+ (* ~front~0 4) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset|))) 2) (not (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t1~0#1.base| v_ArrVal_127) |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) (+ (* ~back~0 4) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset|)) 1))))) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (or (<= (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0 |thread1Thread1of1ForFork1_~w~0#1|) (+ ~W~0 1)) (and (or (<= (+ ~queue~0.offset (* ~back~0 4)) 0) (<= ~n~0 1)) (not (= (+ ~queue~0.offset (* ~back~0 4)) 0)))) (not (= ~queue~0.base |ULTIMATE.start_main_~#t2~0#1.base|)) (<= 0 ~front~0) (= ~queue~0.offset 0) (<= ~d~0 0) (<= (+ 2 ~queue~0.base) |ULTIMATE.start_main_~#t3~0#1.base|) (<= 1 ~W~0) (<= ~front~0 0)), Black: 630#(not (<= (mod |thread2Thread1of1ForFork2_~cond~1#1| 256) 0)), Black: 530#true, Black: 717#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= ~d~0 0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (or (not (< 0 |thread1Thread1of1ForFork1_~w~0#1|)) (= (* ~front~0 4) (* ~back~0 4))) (<= 0 ~front~0) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= 1 ~W~0)), Black: 295#(not (<= (mod |thread2Thread1of1ForFork2_~cond~1#1| 256) 0)), Black: 400#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (< |ULTIMATE.start_create_fresh_int_array_~i~0#1| |ULTIMATE.start_create_fresh_int_array_~size#1|) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)) (forall ((v_ArrVal_128 (Array Int Int)) (v_ArrVal_127 (Array Int Int)) (v_ArrVal_129 (Array Int Int))) (or (< (+ ~d~0 (select (select (store (store (store |#memory_int| |ULTIMATE.start_main_~#t1~0#1.base| v_ArrVal_127) |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) (+ (* ~front~0 4) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset|))) 2) (not (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t1~0#1.base| v_ArrVal_127) |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) (+ (* ~back~0 4) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset|)) 1))))) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (or (<= (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0 |thread1Thread1of1ForFork1_~w~0#1|) (+ ~W~0 1)) (and (or (<= (+ ~queue~0.offset (* ~back~0 4)) 0) (<= ~n~0 1)) (not (= (+ ~queue~0.offset (* ~back~0 4)) 0)))) (not (= ~queue~0.base |ULTIMATE.start_main_~#t2~0#1.base|)) (<= 0 ~front~0) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 0) (<= (+ 2 ~queue~0.base) |ULTIMATE.start_main_~#t3~0#1.base|) (<= 1 ~W~0) (<= ~front~0 0)), Black: 701#(and (<= |thread1Thread1of1ForFork1_~w~0#1| ~W~0) (= ~back~0 ~front~0) (= ~v_assert~0 1) (<= ~d~0 ~W~0) (<= ~d~0 0)), Black: 739#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= ~d~0 0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (<= 0 ~front~0) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= 1 ~W~0) (= |thread2Thread1of1ForFork2_~temp~0#1| 1)), Black: 404#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (forall ((v_ArrVal_129 (Array Int Int))) (< (+ ~d~0 (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1))) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 735#(and (<= |thread1Thread1of1ForFork1_~w~0#1| ~W~0) (= ~back~0 ~front~0) (= ~v_assert~0 1) (<= ~d~0 ~W~0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 0)), Black: 464#(and (or (not (< 0 |thread1Thread1of1ForFork1_~w~0#1|)) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)) (forall ((v_ArrVal_128 (Array Int Int)) (v_ArrVal_129 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< (+ ~d~0 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1))))) (not (<= (mod ~v_assert~0 256) 0))), Black: 699#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= ~d~0 0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (<= 0 ~front~0) (= ~queue~0.offset 0) (<= 1 ~W~0)), Black: 371#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (< |ULTIMATE.start_create_fresh_int_array_~i~0#1| |ULTIMATE.start_create_fresh_int_array_~size#1|) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)) (forall ((v_ArrVal_128 (Array Int Int)) (v_ArrVal_127 (Array Int Int)) (v_ArrVal_129 (Array Int Int))) (or (< (+ ~d~0 (select (select (store (store (store |#memory_int| |ULTIMATE.start_main_~#t1~0#1.base| v_ArrVal_127) |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) (+ (* ~front~0 4) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset|))) 2) (not (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t1~0#1.base| v_ArrVal_127) |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) (+ (* ~back~0 4) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset|)) 1))))) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (or (<= (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0 |thread1Thread1of1ForFork1_~w~0#1|) (+ ~W~0 1)) (and (or (<= (+ ~queue~0.offset (* ~back~0 4)) 0) (<= ~n~0 1)) (not (= (+ ~queue~0.offset (* ~back~0 4)) 0)))) (not (= ~queue~0.base |ULTIMATE.start_main_~#t2~0#1.base|)) (<= 0 ~front~0) (= ~queue~0.offset 0) (<= ~d~0 0) (<= (+ 2 ~queue~0.base) |ULTIMATE.start_main_~#t3~0#1.base|) (<= 1 ~W~0) (<= ~front~0 0)), Black: 697#(and (<= |thread1Thread1of1ForFork1_~w~0#1| ~W~0) (= ~d~0 0) (= ~back~0 ~front~0) (= ~v_assert~0 1) (<= ~d~0 ~W~0) (not (= ~queue~0.base |ULTIMATE.start_main_~#t2~0#1.base|)) (= ~queue~0.offset 0) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|))), Black: 747#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 0) (<= 1 ~W~0)), Black: 761#(and (not (<= (mod |thread2Thread1of1ForFork2_~cond~1#1| 256) 0)) (or (not (< 0 |thread1Thread1of1ForFork1_~w~0#1|)) (and (< ~d~0 ~W~0) (= (* ~front~0 4) (* ~back~0 4))) (= (mod ~v_assert~0 256) 0))), Black: 757#(and (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (or (not (< 0 |thread1Thread1of1ForFork1_~w~0#1|)) (and (< ~d~0 ~W~0) (= (* ~front~0 4) (* ~back~0 4))) (= (mod ~v_assert~0 256) 0))), 862#(and (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 719#(and (<= |thread1Thread1of1ForFork1_~w~0#1| ~W~0) (= ~d~0 0) (= ~back~0 ~front~0) (= ~v_assert~0 1) (<= ~d~0 ~W~0) (not (= ~queue~0.base |ULTIMATE.start_main_~#t2~0#1.base|)) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|))), Black: 674#(or (not (< 0 |thread1Thread1of1ForFork1_~w~0#1|)) (and (< ~d~0 ~W~0) (= (* ~front~0 4) (* ~back~0 4))) (= (mod ~v_assert~0 256) 0)), Black: 751#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (or (not (< 0 |thread1Thread1of1ForFork1_~w~0#1|)) (= (* ~front~0 4) (* ~back~0 4))) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 0) (<= 1 ~W~0)), Black: 713#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= ~d~0 0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (<= 0 ~front~0) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= 1 ~W~0)), Black: 703#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= ~d~0 0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (or (not (< 0 |thread1Thread1of1ForFork1_~w~0#1|)) (= (* ~front~0 4) (* ~back~0 4))) (<= 0 ~front~0) (= ~queue~0.offset 0) (<= 1 ~W~0)), Black: 799#(<= ~back~0 ~front~0), Black: 800#(<= ~back~0 (+ ~front~0 1)), Black: 1829#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 1) (<= 2 ~W~0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~front~0 1) (< 3 (+ (* ~front~0 4) ~queue~0.offset)) (= |thread2Thread1of1ForFork2_~temp~0#1| 1)), Black: 1761#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (forall ((v_ArrVal_427 (Array Int Int)) (v_~back~0_366 Int) (v_ArrVal_428 (Array Int Int))) (or (< (+ ~d~0 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_427) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_427) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4))) 3) (not (< v_~back~0_366 ~n~0)) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_427) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (not (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_427) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* v_~back~0_366 4) ~queue~0.offset)) 1)) (not (<= (+ ~back~0 1) v_~back~0_366)))) (not (<= 0 ~back~0))) (<= ~d~0 ~W~0) (or (forall ((v_~back~0_366 Int) (v_ArrVal_428 (Array Int Int))) (or (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (not (< v_~back~0_366 ~n~0)) (not (<= (+ ~back~0 1) v_~back~0_366)) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* v_~back~0_366 4) ~queue~0.offset)) 1)))) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2) (not (<= 0 ~back~0)))), Black: 1787#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 ~W~0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 1759#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 ~W~0)), Black: 1835#(and (or (forall ((v_~back~0_366 Int) (v_ArrVal_428 (Array Int Int))) (or (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (not (< v_~back~0_366 ~n~0)) (not (<= (+ ~back~0 1) v_~back~0_366)) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* v_~back~0_366 4) ~queue~0.offset)) 1)))) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2) (not (<= 0 ~back~0))) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 1795#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= 2 ~W~0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 2)), Black: 1779#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (forall ((v_ArrVal_427 (Array Int Int)) (v_~back~0_366 Int) (v_ArrVal_428 (Array Int Int))) (or (< (+ ~d~0 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_427) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_427) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4))) 3) (not (< v_~back~0_366 ~n~0)) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_427) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (not (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_427) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* v_~back~0_366 4) ~queue~0.offset)) 1)) (not (<= (+ ~back~0 1) v_~back~0_366)))) (not (<= 0 ~back~0))) (<= ~d~0 ~W~0) (or (forall ((v_~back~0_366 Int) (v_ArrVal_428 (Array Int Int))) (or (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (not (< v_~back~0_366 ~n~0)) (not (<= (+ ~back~0 1) v_~back~0_366)) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* v_~back~0_366 4) ~queue~0.offset)) 1)))) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2) (not (<= 0 ~back~0))) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 1813#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 1) (or (forall ((v_ArrVal_427 (Array Int Int)) (v_~back~0_366 Int) (v_ArrVal_428 (Array Int Int))) (or (< (+ ~d~0 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_427) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_427) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4))) 3) (not (< v_~back~0_366 ~n~0)) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_427) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (not (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_427) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* v_~back~0_366 4) ~queue~0.offset)) 1)) (not (<= (+ ~back~0 1) v_~back~0_366)))) (not (<= 0 ~back~0))) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) (- 4) ~queue~0.offset)) 1) (<= 2 ~W~0) (or (forall ((v_~back~0_366 Int) (v_ArrVal_428 (Array Int Int))) (or (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (not (< v_~back~0_366 ~n~0)) (not (<= (+ ~back~0 1) v_~back~0_366)) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* v_~back~0_366 4) ~queue~0.offset)) 1)))) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2) (not (<= 0 ~back~0))) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (< 3 (+ (* ~front~0 4) ~queue~0.offset)) (= |thread2Thread1of1ForFork2_~temp~0#1| 1) (exists ((v_~back~0_365 Int)) (and (<= v_~back~0_365 1) (<= ~front~0 v_~back~0_365) (= (select (select |#memory_int| ~queue~0.base) (+ (* v_~back~0_365 4) ~queue~0.offset)) 1)))), Black: 1811#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (and (or (and (or (= ~d~0 0) (not (= 4 (+ ~queue~0.offset (* ~back~0 4))))) (or (<= ~n~0 2) (<= (+ ~queue~0.offset (* ~back~0 4)) 4)) (<= 1 ~back~0)) (not (= (+ (* ~front~0 4) ~queue~0.offset) 4))) (or (and (<= (+ ~front~0 ~n~0) (+ ~back~0 2)) (< 3 (+ (* ~front~0 4) ~queue~0.offset))) (= (+ (* ~front~0 4) ~queue~0.offset) 4)))) (<= ~d~0 1) (<= 2 ~W~0) (or (forall ((v_~back~0_366 Int) (v_ArrVal_428 (Array Int Int))) (or (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (not (< v_~back~0_366 ~n~0)) (not (<= (+ ~back~0 1) v_~back~0_366)) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* v_~back~0_366 4) ~queue~0.offset)) 1)))) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2)) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (= |thread2Thread1of1ForFork2_~temp~0#1| 1)), Black: 1753#(and (<= (+ 2 ~queue~0.base) |ULTIMATE.start_main_~#t2~0#1.base|) (= ~d~0 0) (<= (+ ~front~0 ~n~0) (+ ~back~0 2)) (= ~back~0 ~front~0) (= ~v_assert~0 1) (<= ~d~0 ~W~0) (or (forall ((v_~back~0_366 Int) (v_ArrVal_428 (Array Int Int))) (or (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (not (< v_~back~0_366 ~n~0)) (not (<= (+ ~back~0 1) v_~back~0_366)) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* v_~back~0_366 4) ~queue~0.offset)) 1)))) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2) (not (<= 0 ~back~0))) (= ~queue~0.offset 0) (<= (+ 2 ~queue~0.base) |ULTIMATE.start_main_~#t3~0#1.base|)), Black: 1805#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (forall ((v_ArrVal_427 (Array Int Int)) (v_~back~0_366 Int) (v_ArrVal_428 (Array Int Int))) (or (< (+ ~d~0 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_427) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_427) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4))) 3) (not (< v_~back~0_366 ~n~0)) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_427) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (not (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_427) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* v_~back~0_366 4) ~queue~0.offset)) 1)) (not (<= (+ ~back~0 1) v_~back~0_366)))) (not (<= 0 ~back~0))) (or (forall ((v_~back~0_366 Int) (v_ArrVal_428 (Array Int Int))) (or (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (not (< v_~back~0_366 ~n~0)) (not (<= (+ ~back~0 1) v_~back~0_366)) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* v_~back~0_366 4) ~queue~0.offset)) 1)))) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2) (not (<= 0 ~back~0))) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 1819#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= 2 ~W~0) (or (forall ((v_~back~0_366 Int) (v_ArrVal_428 (Array Int Int))) (or (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (not (< v_~back~0_366 ~n~0)) (not (<= (+ ~back~0 1) v_~back~0_366)) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* v_~back~0_366 4) ~queue~0.offset)) 1)))) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2) (not (<= 0 ~back~0))) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 2)), Black: 1775#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (< (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (or (forall ((v_ArrVal_427 (Array Int Int)) (v_~back~0_366 Int) (v_ArrVal_428 (Array Int Int))) (or (< (+ ~d~0 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_427) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_427) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4))) 3) (not (< v_~back~0_366 ~n~0)) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_427) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (not (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_427) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* v_~back~0_366 4) ~queue~0.offset)) 1)) (not (<= (+ ~back~0 1) v_~back~0_366)))) (not (<= 0 ~back~0))) (<= 2 ~W~0) (or (forall ((v_~back~0_366 Int) (v_ArrVal_428 (Array Int Int))) (or (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (not (< v_~back~0_366 ~n~0)) (not (<= (+ ~back~0 1) v_~back~0_366)) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* v_~back~0_366 4) ~queue~0.offset)) 1)))) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2) (not (<= 0 ~back~0))) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 2)), Black: 1584#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 1) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= 1 ~W~0)), Black: 1781#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (< (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (or (forall ((v_ArrVal_427 (Array Int Int)) (v_~back~0_366 Int) (v_ArrVal_428 (Array Int Int))) (or (< (+ ~d~0 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_427) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_427) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4))) 3) (not (< v_~back~0_366 ~n~0)) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_427) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (not (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_427) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* v_~back~0_366 4) ~queue~0.offset)) 1)) (not (<= (+ ~back~0 1) v_~back~0_366)))) (not (<= 0 ~back~0))) (<= 2 ~W~0) (or (forall ((v_~back~0_366 Int) (v_ArrVal_428 (Array Int Int))) (or (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (not (< v_~back~0_366 ~n~0)) (not (<= (+ ~back~0 1) v_~back~0_366)) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* v_~back~0_366 4) ~queue~0.offset)) 1)))) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2) (not (<= 0 ~back~0))) (<= ~d~0 2)), Black: 1801#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (forall ((v_~back~0_366 Int) (v_ArrVal_428 (Array Int Int))) (or (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (not (< v_~back~0_366 ~n~0)) (not (<= (+ ~back~0 1) v_~back~0_366)) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* v_~back~0_366 4) ~queue~0.offset)) 1)))) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2) (not (<= 0 ~back~0)))), Black: 1827#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 1) (<= 2 ~W~0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (= |thread2Thread1of1ForFork2_~temp~0#1| 1)), Black: 1783#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (< (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (or (forall ((v_ArrVal_427 (Array Int Int)) (v_~back~0_366 Int) (v_ArrVal_428 (Array Int Int))) (or (< (+ ~d~0 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_427) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_427) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4))) 3) (not (< v_~back~0_366 ~n~0)) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_427) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (not (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_427) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* v_~back~0_366 4) ~queue~0.offset)) 1)) (not (<= (+ ~back~0 1) v_~back~0_366)))) (not (<= 0 ~back~0))) (<= 2 ~W~0) (or (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (not (< ~back~0 ~n~0)) (< (+ |thread2Thread1of1ForFork2_~temp~0#1| (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (not (<= 0 ~back~0))) (or (forall ((v_~back~0_366 Int) (v_ArrVal_428 (Array Int Int))) (or (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (not (< v_~back~0_366 ~n~0)) (not (<= (+ ~back~0 1) v_~back~0_366)) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* v_~back~0_366 4) ~queue~0.offset)) 1)))) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2) (not (<= 0 ~back~0))) (<= ~d~0 2)), Black: 1821#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= 2 ~W~0) (<= ~d~0 2)), Black: 1823#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (< (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (<= 2 ~W~0) (or (forall ((v_~back~0_366 Int) (v_ArrVal_428 (Array Int Int))) (or (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (not (< v_~back~0_366 ~n~0)) (not (<= (+ ~back~0 1) v_~back~0_366)) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* v_~back~0_366 4) ~queue~0.offset)) 1)))) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2) (not (<= 0 ~back~0))) (< (+ |thread2Thread1of1ForFork2_~temp~0#1| (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (<= ~d~0 2)), Black: 1807#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (forall ((v_~back~0_366 Int) (v_ArrVal_428 (Array Int Int))) (or (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (not (< v_~back~0_366 ~n~0)) (not (<= (+ ~back~0 1) v_~back~0_366)) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* v_~back~0_366 4) ~queue~0.offset)) 1)))) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2) (not (<= 0 ~back~0))) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 1767#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 ~W~0) (or (forall ((v_~back~0_366 Int) (v_ArrVal_428 (Array Int Int))) (or (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (not (< v_~back~0_366 ~n~0)) (not (<= (+ ~back~0 1) v_~back~0_366)) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* v_~back~0_366 4) ~queue~0.offset)) 1)))) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2) (not (<= 0 ~back~0)))), Black: 1785#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 1777#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (and (or (and (or (= ~d~0 0) (not (= 4 (+ ~queue~0.offset (* ~back~0 4))))) (or (<= ~n~0 2) (<= (+ ~queue~0.offset (* ~back~0 4)) 4)) (<= 1 ~back~0)) (not (= (+ (* ~front~0 4) ~queue~0.offset) 4))) (or (and (<= (+ ~front~0 ~n~0) (+ ~back~0 2)) (< 3 (+ (* ~front~0 4) ~queue~0.offset))) (= (+ (* ~front~0 4) ~queue~0.offset) 4)))) (<= ~d~0 1) (or (forall ((v_ArrVal_427 (Array Int Int)) (v_~back~0_366 Int) (v_ArrVal_428 (Array Int Int))) (or (< (+ ~d~0 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_427) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_427) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4))) 3) (not (< v_~back~0_366 ~n~0)) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_427) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (not (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_427) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* v_~back~0_366 4) ~queue~0.offset)) 1)) (not (<= (+ ~back~0 1) v_~back~0_366)))) (not (<= 0 ~back~0))) (<= 2 ~W~0) (or (forall ((v_~back~0_366 Int) (v_ArrVal_428 (Array Int Int))) (or (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (not (< v_~back~0_366 ~n~0)) (not (<= (+ ~back~0 1) v_~back~0_366)) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* v_~back~0_366 4) ~queue~0.offset)) 1)))) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2)) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (= |thread2Thread1of1ForFork2_~temp~0#1| 1)), Black: 1771#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (and (or (= ~d~0 0) (not (= 4 (+ ~queue~0.offset (* ~back~0 4))))) (or (<= ~n~0 2) (<= (+ ~queue~0.offset (* ~back~0 4)) 4)) (<= 1 ~back~0)) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1))) (<= ~d~0 1) (or (forall ((v_ArrVal_427 (Array Int Int)) (v_~back~0_366 Int) (v_ArrVal_428 (Array Int Int))) (or (< (+ ~d~0 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_427) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_427) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4))) 3) (not (< v_~back~0_366 ~n~0)) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_427) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (not (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_427) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* v_~back~0_366 4) ~queue~0.offset)) 1)) (not (<= (+ ~back~0 1) v_~back~0_366)))) (not (<= 0 ~back~0))) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) (- 4) ~queue~0.offset)) 1) (<= 2 ~W~0) (or (forall ((v_~back~0_366 Int) (v_ArrVal_428 (Array Int Int))) (or (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (not (< v_~back~0_366 ~n~0)) (not (<= (+ ~back~0 1) v_~back~0_366)) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* v_~back~0_366 4) ~queue~0.offset)) 1)))) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2)) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (< 3 (+ (* ~front~0 4) ~queue~0.offset)) (= |thread2Thread1of1ForFork2_~temp~0#1| 1) (exists ((v_~back~0_365 Int)) (and (<= v_~back~0_365 1) (<= ~front~0 v_~back~0_365) (= (select (select |#memory_int| ~queue~0.base) (+ (* v_~back~0_365 4) ~queue~0.offset)) 1)))), Black: 1803#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 ~W~0) (or (forall ((v_~back~0_366 Int) (v_ArrVal_428 (Array Int Int))) (or (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (not (< v_~back~0_366 ~n~0)) (not (<= (+ ~back~0 1) v_~back~0_366)) (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_428) ~queue~0.base) (+ (* v_~back~0_366 4) ~queue~0.offset)) 1)))) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2) (not (<= 0 ~back~0))) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), 1217#(and (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 979#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~n~0 2) (< 0 (+ (* ~front~0 4) ~queue~0.offset 1)) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (and (= ~d~0 0) (<= 2 ~W~0))) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (= ~queue~0.offset 0) (<= ~d~0 0) (<= (+ 2 ~queue~0.base) |ULTIMATE.start_main_~#t3~0#1.base|) (<= 1 ~W~0) (< ~front~0 ~n~0) (<= ~front~0 0) (<= (+ ~front~0 1) ~back~0)), Black: 1021#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (< (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (<= ~d~0 ~W~0) (or (forall ((v_ArrVal_260 (Array Int Int))) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_260) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1))) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), Black: 977#(and (or (and (or (<= (+ ~queue~0.offset (* ~back~0 4)) 0) (<= ~n~0 2)) (or (and (<= |thread1Thread1of1ForFork1_~w~0#1| ~W~0) (= ~d~0 0) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|))) (not (= (+ ~queue~0.offset (* ~back~0 4)) 0)))) (not (= (+ (* ~front~0 4) ~queue~0.offset) 0))) (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 1) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (or (<= (+ ~front~0 ~n~0) (+ ~back~0 2)) (<= (+ (* ~front~0 4) ~queue~0.offset) 0)) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= 1 ~W~0) (or (< 0 (+ (* ~front~0 4) ~queue~0.offset 1)) (<= ~back~0 ~front~0))), Black: 1005#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 1) (<= 1 ~W~0) (or (forall ((v_ArrVal_260 (Array Int Int))) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_260) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1))) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), 797#true, 68#L78true, Black: 1054#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 1) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (< (+ |thread2Thread1of1ForFork2_~temp~0#1| ~d~0) (+ ~W~0 1)) (<= 1 ~W~0)), Black: 1035#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (< (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (<= ~d~0 1) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= 1 ~W~0) (or (forall ((v_ArrVal_260 (Array Int Int))) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_260) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1))) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), Black: 1065#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (and (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|) (not (<= 0 ~back~0))) (and (= ~d~0 0) (<= 2 ~W~0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1))) (or (<= (+ ~front~0 ~n~0) (+ ~back~0 1)) (<= (+ (* ~front~0 4) ~queue~0.offset) 0)) (<= ~d~0 1) (<= 0 ~front~0) (= ~queue~0.offset 0) (<= 1 ~W~0) (or (forall ((v_ArrVal_260 (Array Int Int))) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_260) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1))) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), Black: 1049#(and (or (and (or (<= (+ ~queue~0.offset (* ~back~0 4)) 0) (<= ~n~0 2)) (or (and (<= |thread1Thread1of1ForFork1_~w~0#1| ~W~0) (= ~d~0 0) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|))) (not (= (+ ~queue~0.offset (* ~back~0 4)) 0)))) (not (= (+ (* ~front~0 4) ~queue~0.offset) 0))) (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 1) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (or (<= (+ ~front~0 ~n~0) (+ ~back~0 2)) (<= (+ (* ~front~0 4) ~queue~0.offset) 0)) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= 1 ~W~0) (or (< 0 (+ (* ~front~0 4) ~queue~0.offset 1)) (<= ~back~0 ~front~0)) (or (forall ((v_ArrVal_260 (Array Int Int))) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_260) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1))) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), Black: 1056#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 1) (or (< (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0))) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= 1 ~W~0)), Black: 1015#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 1) (or (< ~back~0 0) (and (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (= (* ~front~0 4) (* ~back~0 4))) (< ~n~0 (+ ~back~0 2))) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= 1 ~W~0) (or (< ~back~0 0) (< ~n~0 (+ ~back~0 2)) (< ~d~0 1))), Black: 1110#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 1) (or (< ~back~0 0) (and (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (= (* ~front~0 4) (* ~back~0 4))) (< ~n~0 (+ ~back~0 2))) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (< (+ |thread2Thread1of1ForFork2_~temp~0#1| ~d~0) (+ ~W~0 1)) (<= 1 ~W~0) (or (< ~back~0 0) (< ~n~0 (+ ~back~0 2)) (< ~d~0 1))), Black: 1092#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 1) (or (< (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0))) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (< (+ |thread2Thread1of1ForFork2_~temp~0#1| ~d~0) (+ ~W~0 1)) (<= 1 ~W~0)), Black: 1023#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 ~W~0) (or (forall ((v_ArrVal_260 (Array Int Int))) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_260) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1))) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), Black: 1090#(and (or (and (or (<= (+ ~queue~0.offset (* ~back~0 4)) 0) (<= ~n~0 2)) (or (and (<= |thread1Thread1of1ForFork1_~w~0#1| ~W~0) (= ~d~0 0) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|))) (not (= (+ ~queue~0.offset (* ~back~0 4)) 0)))) (not (= (+ (* ~front~0 4) ~queue~0.offset) 0))) (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (< (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (<= ~d~0 1) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (or (<= (+ ~front~0 ~n~0) (+ ~back~0 2)) (<= (+ (* ~front~0 4) ~queue~0.offset) 0)) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (< (+ |thread2Thread1of1ForFork2_~temp~0#1| ~d~0) (+ ~W~0 1)) (<= 1 ~W~0) (or (< 0 (+ (* ~front~0 4) ~queue~0.offset 1)) (<= ~back~0 ~front~0)) (or (forall ((v_ArrVal_260 (Array Int Int))) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_260) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1))) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), Black: 967#(and (or (and (or (<= (+ ~queue~0.offset (* ~back~0 4)) 0) (<= ~n~0 2)) (or (and (<= |thread1Thread1of1ForFork1_~w~0#1| ~W~0) (= ~d~0 0) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|))) (not (= (+ ~queue~0.offset (* ~back~0 4)) 0)))) (not (= (+ (* ~front~0 4) ~queue~0.offset) 0))) (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 1) (= ~queue~0.offset 0) (or (<= (+ ~front~0 ~n~0) (+ ~back~0 2)) (<= (+ (* ~front~0 4) ~queue~0.offset) 0)) (<= 1 ~W~0) (or (< 0 (+ (* ~front~0 4) ~queue~0.offset 1)) (<= ~back~0 ~front~0))), Black: 1001#(and (or (and (or (<= (+ ~queue~0.offset (* ~back~0 4)) 0) (<= ~n~0 2)) (or (and (<= |thread1Thread1of1ForFork1_~w~0#1| ~W~0) (= ~d~0 0) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|))) (not (= (+ ~queue~0.offset (* ~back~0 4)) 0)))) (not (= (+ (* ~front~0 4) ~queue~0.offset) 0))) (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= |thread2Thread1of1ForFork2_~temp~0#1| 1) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (or (<= (+ ~front~0 ~n~0) (+ ~back~0 2)) (<= (+ (* ~front~0 4) ~queue~0.offset) 0)) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 0) (<= 1 ~W~0) (or (< 0 (+ (* ~front~0 4) ~queue~0.offset 1)) (<= ~back~0 ~front~0))), Black: 1013#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= |thread2Thread1of1ForFork2_~temp~0#1| 1) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 0) (<= 1 ~W~0) (or (forall ((v_ArrVal_260 (Array Int Int))) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_260) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1))) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), Black: 1086#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (and (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|) (not (<= 0 ~back~0))) (and (= ~d~0 0) (<= 2 ~W~0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1))) (or (<= (+ ~front~0 ~n~0) (+ ~back~0 1)) (<= (+ (* ~front~0 4) ~queue~0.offset) 0)) (<= ~d~0 1) (<= 0 ~front~0) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= 1 ~W~0) (or (forall ((v_ArrVal_260 (Array Int Int))) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_260) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1))) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), Black: 1011#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= ~d~0 0) (<= 2 ~W~0) (or (not (= (+ (* ~front~0 4) ~queue~0.offset) 0)) (and (or (not (= (+ ~queue~0.offset (* ~back~0 4)) 0)) (and (<= |thread1Thread1of1ForFork1_~w~0#1| ~W~0) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)))) (or (<= (+ ~queue~0.offset (* ~back~0 4)) 0) (<= ~n~0 2)))) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (or (<= (+ ~front~0 ~n~0) (+ ~back~0 2)) (<= (+ (* ~front~0 4) ~queue~0.offset) 0)) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (= |thread2Thread1of1ForFork2_~temp~0#1| 1) (or (< 0 (+ (* ~front~0 4) ~queue~0.offset 1)) (<= ~back~0 ~front~0))), Black: 1029#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~n~0 2) (< 0 (+ (* ~front~0 4) ~queue~0.offset 1)) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (and (= ~d~0 0) (<= 2 ~W~0))) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 0) (<= (+ 2 ~queue~0.base) |ULTIMATE.start_main_~#t3~0#1.base|) (<= 1 ~W~0) (< ~front~0 ~n~0) (<= ~front~0 0) (<= (+ ~front~0 1) ~back~0)), Black: 971#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~n~0 2) (< 0 (+ (* ~front~0 4) ~queue~0.offset 1)) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 0) (<= (+ 2 ~queue~0.base) |ULTIMATE.start_main_~#t3~0#1.base|) (<= 1 ~W~0) (< ~front~0 ~n~0) (<= (+ ~front~0 1) ~back~0)), Black: 1088#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= ~d~0 0) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (not (<= 0 ~back~0))) (<= 2 ~W~0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (<= 0 ~front~0) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (= |thread2Thread1of1ForFork2_~temp~0#1| 1) (<= (+ (* ~front~0 4) ~queue~0.offset) 0)), Black: 997#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= ~d~0 0) (<= ~n~0 2) (< 0 (+ (* ~front~0 4) ~queue~0.offset 1)) (<= 2 ~W~0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= (+ 2 ~queue~0.base) |ULTIMATE.start_main_~#t3~0#1.base|) (< ~front~0 ~n~0) (<= (+ (* ~front~0 4) ~queue~0.offset) 0) (<= (+ ~front~0 1) ~back~0)), Black: 987#(and (or (and (or (<= (+ ~queue~0.offset (* ~back~0 4)) 0) (<= ~n~0 2)) (or (and (<= |thread1Thread1of1ForFork1_~w~0#1| ~W~0) (= ~d~0 0) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|))) (not (= (+ ~queue~0.offset (* ~back~0 4)) 0)))) (not (= (+ (* ~front~0 4) ~queue~0.offset) 0))) (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (and (= ~d~0 0) (<= 2 ~W~0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (or (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (not (<= 0 ~back~0))))) (or (<= (+ ~front~0 ~n~0) (+ ~back~0 1)) (<= (+ (* ~front~0 4) ~queue~0.offset) 0)) (<= ~d~0 ~W~0) (<= 0 ~front~0) (= ~queue~0.offset 0)), Black: 973#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~n~0 2) (< 0 (+ (* ~front~0 4) ~queue~0.offset 1)) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (and (= ~d~0 0) (<= 2 ~W~0))) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 0) (<= (+ 2 ~queue~0.base) |ULTIMATE.start_main_~#t3~0#1.base|) (<= 1 ~W~0) (< ~front~0 ~n~0) (<= (+ ~front~0 1) ~back~0)), Black: 1069#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 ~W~0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (or (forall ((v_ArrVal_260 (Array Int Int))) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_260) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1))) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), Black: 1039#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (< (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (<= ~d~0 1) (<= 1 ~W~0) (or (forall ((v_ArrVal_260 (Array Int Int))) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_260) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1))) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), Black: 1003#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 1) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= 1 ~W~0) (or (forall ((v_ArrVal_260 (Array Int Int))) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_260) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1))) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), 255#(and (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 1075#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= ~d~0 0) (or (<= (+ ~front~0 ~n~0) (+ ~back~0 1)) (<= (+ (* ~front~0 4) ~queue~0.offset) 0)) (<= 2 ~W~0) (<= 0 ~front~0) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (and (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|) (not (<= 0 ~back~0)))) (= |thread2Thread1of1ForFork2_~temp~0#1| 1) (or (forall ((v_ArrVal_260 (Array Int Int))) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_260) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1))) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), Black: 1080#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 ~W~0) (or (< (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0))) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 1100#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (< (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (<= ~d~0 1) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (< (+ |thread2Thread1of1ForFork2_~temp~0#1| ~d~0) (+ ~W~0 1)) (<= 1 ~W~0) (or (forall ((v_ArrVal_260 (Array Int Int))) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_260) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1))) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), Black: 1051#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (< (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (<= |thread2Thread1of1ForFork2_~temp~0#1| 1) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 0) (<= 1 ~W~0) (or (forall ((v_ArrVal_260 (Array Int Int))) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_260) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1))) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), Black: 1033#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~n~0 2) (< 0 (+ (* ~front~0 4) ~queue~0.offset 1)) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (and (= ~d~0 0) (<= 2 ~W~0))) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (<= |thread2Thread1of1ForFork2_~temp~0#1| 1) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 0) (<= (+ 2 ~queue~0.base) |ULTIMATE.start_main_~#t3~0#1.base|) (<= 1 ~W~0) (< ~front~0 ~n~0) (<= ~front~0 0) (<= (+ ~front~0 1) ~back~0)), Black: 1061#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 ~W~0) (or (< (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), Black: 1375#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 1031#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 1) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (< (+ |thread2Thread1of1ForFork2_~temp~0#1| ~d~0) (+ ~W~0 1)) (or (< ~back~0 0) (< ~n~0 (+ ~back~0 2)) (and (< ~d~0 ~W~0) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (= (* ~front~0 4) (* ~back~0 4)))) (<= 1 ~W~0)), Black: 1339#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (<= (+ ~d~0 1) ~W~0) (or (and (< (+ ~d~0 1) ~W~0) (= (* ~front~0 4) (* ~back~0 4))) (< |thread1Thread1of1ForFork1_~w~0#1| 2))), Black: 1379#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= 2 ~W~0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (<= (+ ~d~0 1) ~W~0) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (= (* ~front~0 4) (* ~back~0 4))) (<= ~d~0 2)), Black: 1047#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= ~d~0 0) (or (<= (+ ~front~0 ~n~0) (+ ~back~0 1)) (<= (+ (* ~front~0 4) ~queue~0.offset) 0)) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (and (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (or (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (not (<= 0 ~back~0))))) (<= 2 ~W~0) (<= 0 ~front~0) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (= |thread2Thread1of1ForFork2_~temp~0#1| 1)), Black: 1059#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (< (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (<= ~d~0 ~W~0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (or (forall ((v_ArrVal_260 (Array Int Int))) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_260) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1))) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), Black: 1071#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 1) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (< (+ |thread2Thread1of1ForFork2_~temp~0#1| ~d~0) (+ ~W~0 1)) (<= 1 ~W~0) (or (forall ((v_ArrVal_260 (Array Int Int))) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_260) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1))) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), Black: 1019#(and (or (and (or (<= (+ ~queue~0.offset (* ~back~0 4)) 0) (<= ~n~0 2)) (or (and (<= |thread1Thread1of1ForFork1_~w~0#1| ~W~0) (= ~d~0 0) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|))) (not (= (+ ~queue~0.offset (* ~back~0 4)) 0)))) (not (= (+ (* ~front~0 4) ~queue~0.offset) 0))) (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 ~W~0) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (or (<= (+ ~front~0 ~n~0) (+ ~back~0 2)) (<= (+ (* ~front~0 4) ~queue~0.offset) 0)) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (or (< ~back~0 0) (< ~d~0 ~W~0) (< ~n~0 (+ ~back~0 2))) (or (< 0 (+ (* ~front~0 4) ~queue~0.offset 1)) (<= ~back~0 ~front~0)) (or (forall ((v_ArrVal_260 (Array Int Int))) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_260) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1))) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)))), Black: 1331#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 ~W~0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 1361#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 1) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) (- 4) ~queue~0.offset)) 1) (<= 2 ~W~0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (= |thread2Thread1of1ForFork2_~temp~0#1| 1) (or (and (< (+ ~d~0 1) ~W~0) (= (* ~front~0 4) (* ~back~0 4))) (< |thread1Thread1of1ForFork1_~w~0#1| 2))), Black: 1399#(and (or (and (< (+ ~d~0 1) ~W~0) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (= (* ~front~0 4) (* ~back~0 4))) (< |thread1Thread1of1ForFork1_~w~0#1| 2)) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 1389#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= 2 ~W~0) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (<= (+ ~d~0 1) ~W~0) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (= (* ~front~0 4) (* ~back~0 4))) (= |thread2Thread1of1ForFork2_~temp~0#1| 1) (<= ~d~0 2)), Black: 1343#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 1) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) (- 4) ~queue~0.offset)) 1) (<= 2 ~W~0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (= |thread2Thread1of1ForFork2_~temp~0#1| 1)), Black: 1347#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= 2 ~W~0) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (and (<= (+ ~d~0 1) ~W~0) (= (* ~front~0 4) (* ~back~0 4)))) (= ~queue~0.offset 0) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (<= ~d~0 2)), Black: 1381#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= 2 ~W~0) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (and (<= (+ ~d~0 1) ~W~0) (= (* ~front~0 4) (* ~back~0 4)))) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (<= ~d~0 2)), Black: 1315#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (<= (+ ~d~0 1) ~W~0)), Black: 1397#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= 2 ~W~0) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (or (< (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1))) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (<= (+ ~d~0 1) ~W~0) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (= (* ~front~0 4) (* ~back~0 4))) (= |thread2Thread1of1ForFork2_~temp~0#1| 1) (<= ~d~0 2)), Black: 1325#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= 2 ~W~0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (= ~queue~0.offset 0) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (<= (+ ~d~0 1) ~W~0) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (= (* ~front~0 4) (* ~back~0 4))) (<= ~d~0 2)), Black: 1313#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= 2 ~W~0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (<= (+ ~d~0 1) ~W~0) (<= ~d~0 2)), Black: 1351#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= 2 ~W~0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (not (= ~queue~0.base |ULTIMATE.start_main_~#t3~0#1.base|)) (<= (+ ~d~0 1) ~W~0) (or (and (< (+ ~d~0 1) ~W~0) (= (* ~front~0 4) (* ~back~0 4))) (< |thread1Thread1of1ForFork1_~w~0#1| 2)) (<= ~d~0 2)), Black: 1357#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= 2 ~W~0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 2)), Black: 151#(and (= ~v_assert~0 1) (= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 166#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 ~W~0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= (div |thread2Thread1of1ForFork2_~cond~1#1| 256) 0)), Black: 173#(or (<= ~back~0 ~front~0) (<= ~n~0 ~front~0) (not (<= 0 ~front~0))), 602#(and (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), 29#L110-4true, 5#L55true, Black: 299#(not (<= (mod ~v_assert~0 256) 0)), Black: 456#(and (or (not (< 0 |thread1Thread1of1ForFork1_~w~0#1|)) (not (< ~back~0 ~n~0)) (= (mod ~v_assert~0 256) 0) (not (<= 0 ~back~0)) (forall ((v_ArrVal_128 (Array Int Int)) (v_ArrVal_129 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< (+ ~d~0 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1))))) (not (<= (mod |thread2Thread1of1ForFork2_~cond~1#1| 256) 0))), Black: 385#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (forall ((v_ArrVal_129 (Array Int Int))) (< (+ ~d~0 (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1)))), Black: 410#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (< (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (or (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (not (< ~back~0 ~n~0)) (forall ((v_ArrVal_129 (Array Int Int))) (< (+ ~d~0 (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1))) (not (<= 0 ~back~0))) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 183#true, Black: 398#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (< |ULTIMATE.start_create_fresh_int_array_~i~0#1| |ULTIMATE.start_create_fresh_int_array_~size#1|) (not (< ~back~0 ~n~0)) (not (<= 0 ~back~0)) (forall ((v_ArrVal_128 (Array Int Int)) (v_ArrVal_127 (Array Int Int)) (v_ArrVal_129 (Array Int Int))) (or (< (+ ~d~0 (select (select (store (store (store |#memory_int| |ULTIMATE.start_main_~#t1~0#1.base| v_ArrVal_127) |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) (+ (* ~front~0 4) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset|))) 2) (not (= (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t1~0#1.base| v_ArrVal_127) |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_128) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) (+ (* ~back~0 4) |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset|)) 1))))) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (or (<= (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0 |thread1Thread1of1ForFork1_~w~0#1|) (+ ~W~0 1)) (and (or (<= (+ ~queue~0.offset (* ~back~0 4)) 0) (<= ~n~0 1)) (not (= (+ ~queue~0.offset (* ~back~0 4)) 0)))) (not (= ~queue~0.base |ULTIMATE.start_main_~#t2~0#1.base|)) (<= 0 ~front~0) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 0) (<= (+ 2 ~queue~0.base) |ULTIMATE.start_main_~#t3~0#1.base|) (<= 1 ~W~0) (<= ~front~0 0)), Black: 392#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (< (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~W~0 1)) (or (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (not (< ~back~0 ~n~0)) (forall ((v_ArrVal_129 (Array Int Int))) (< (+ ~d~0 (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_129) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1))) (not (<= 0 ~back~0))))]) [2022-12-06 05:41:40,671 INFO L382 tUnfolder$Statistics]: this new event has 17 ancestors and is cut-off event [2022-12-06 05:41:40,672 INFO L385 tUnfolder$Statistics]: existing Event has 15 ancestors and is cut-off event [2022-12-06 05:41:40,672 INFO L385 tUnfolder$Statistics]: existing Event has 17 ancestors and is cut-off event [2022-12-06 05:41:40,672 INFO L385 tUnfolder$Statistics]: existing Event has 17 ancestors and is cut-off event [2022-12-06 05:41:41,116 INFO L130 PetriNetUnfolder]: 4249/11305 cut-off events. [2022-12-06 05:41:41,116 INFO L131 PetriNetUnfolder]: For 459404/462687 co-relation queries the response was YES. [2022-12-06 05:41:41,217 INFO L83 FinitePrefix]: Finished finitePrefix Result has 90267 conditions, 11305 events. 4249/11305 cut-off events. For 459404/462687 co-relation queries the response was YES. Maximal size of possible extension queue 1189. Compared 131930 event pairs, 1056 based on Foata normal form. 67/10570 useless extension candidates. Maximal degree in co-relation 89944. Up to 3733 conditions per place. [2022-12-06 05:41:41,340 INFO L184 LiptonReduction]: Starting Lipton reduction on Petri net that has 414 places, 1556 transitions, 24903 flow [2022-12-06 05:41:41,340 INFO L188 LiptonReduction]: Number of co-enabled transitions 8828 [2022-12-06 05:41:41,343 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [582] $Ultimate##0-->L48-4: Formula: (let ((.cse0 (+ |v_thread1Thread1of1ForFork1_~w~0#1_99| 1))) (and (= (ite (= (select (select |v_#memory_int_189| v_~queue~0.base_90) (+ (* v_~back~0_112 4) v_~queue~0.offset_90)) 1) 1 0) |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_19|) (= v_~back~0_111 (+ v_~back~0_112 1)) (not (= 0 (ite (and (< v_~back~0_112 v_~n~0_88) (<= 0 v_~back~0_112)) 1 0))) (< 0 .cse0) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_19| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_19|) (= v_~v_assert~0_177 |v_thread1Thread1of1ForFork1_~cond~0#1_113|) (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_19| 0)) (not (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_113| 256) 0)) (= v_~W~0_109 .cse0))) InVars {~queue~0.offset=v_~queue~0.offset_90, ~v_assert~0=v_~v_assert~0_177, ~back~0=v_~back~0_112, #memory_int=|v_#memory_int_189|, ~queue~0.base=v_~queue~0.base_90, ~n~0=v_~n~0_88, ~W~0=v_~W~0_109} OutVars{~queue~0.offset=v_~queue~0.offset_90, ~back~0=v_~back~0_111, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_19|, ~queue~0.base=v_~queue~0.base_90, ~W~0=v_~W~0_109, ~v_assert~0=v_~v_assert~0_177, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_27|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_19|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_19|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_99|, #memory_int=|v_#memory_int_189|, ~n~0=v_~n~0_88, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_113|, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_19|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#t~post1#1, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, ~back~0, thread1Thread1of1ForFork1_~w~0#1, thread1Thread1of1ForFork1_#t~mem2#1, thread1Thread1of1ForFork1_~cond~0#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] and [533] L108-3-->L109-3: Formula: (and (= |v_#pthreadsForks_54| (+ |v_#pthreadsForks_55| 1)) (= (store |v_#memory_int_93| |v_ULTIMATE.start_main_~#t2~0#1.base_27| (store (select |v_#memory_int_93| |v_ULTIMATE.start_main_~#t2~0#1.base_27|) |v_ULTIMATE.start_main_~#t2~0#1.offset_27| |v_ULTIMATE.start_main_#t~pre12#1_21|)) |v_#memory_int_92|) (= |v_ULTIMATE.start_main_#t~pre12#1_21| |v_#pthreadsForks_55|)) InVars {#pthreadsForks=|v_#pthreadsForks_55|, ULTIMATE.start_main_~#t2~0#1.offset=|v_ULTIMATE.start_main_~#t2~0#1.offset_27|, #memory_int=|v_#memory_int_93|, ULTIMATE.start_main_~#t2~0#1.base=|v_ULTIMATE.start_main_~#t2~0#1.base_27|} OutVars{ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_21|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_9|, #pthreadsForks=|v_#pthreadsForks_54|, ULTIMATE.start_main_~#t2~0#1.offset=|v_ULTIMATE.start_main_~#t2~0#1.offset_27|, ULTIMATE.start_main_#t~pre10#1=|v_ULTIMATE.start_main_#t~pre10#1_29|, #memory_int=|v_#memory_int_92|, ULTIMATE.start_main_~#t2~0#1.base=|v_ULTIMATE.start_main_~#t2~0#1.base_27|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre12#1, ULTIMATE.start_main_#t~nondet11#1, #pthreadsForks, ULTIMATE.start_main_#t~pre10#1, #memory_int] [2022-12-06 05:41:41,581 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [485] L55-->L48-4: Formula: (and (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9| 0)) (= (+ |v_thread1Thread1of1ForFork1_~w~0#1_21| 1) |v_thread1Thread1of1ForFork1_~w~0#1_22|) (= (ite (= (select (select |v_#memory_int_56| v_~queue~0.base_37) (+ (* 4 v_~back~0_59) v_~queue~0.offset_37)) 1) 1 0) |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|) (= v_~back~0_58 (+ v_~back~0_59 1)) (not (= (ite (and (<= 0 v_~back~0_59) (< v_~back~0_59 v_~n~0_36)) 1 0) 0))) InVars {~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_22|, ~back~0=v_~back~0_59, #memory_int=|v_#memory_int_56|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36} OutVars{~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_17|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_9|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_21|, ~back~0=v_~back~0_58, #memory_int=|v_#memory_int_56|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_9|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#t~post1#1, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread1Thread1of1ForFork1_~w~0#1, ~back~0, thread1Thread1of1ForFork1_#t~mem2#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] and [533] L108-3-->L109-3: Formula: (and (= |v_#pthreadsForks_54| (+ |v_#pthreadsForks_55| 1)) (= (store |v_#memory_int_93| |v_ULTIMATE.start_main_~#t2~0#1.base_27| (store (select |v_#memory_int_93| |v_ULTIMATE.start_main_~#t2~0#1.base_27|) |v_ULTIMATE.start_main_~#t2~0#1.offset_27| |v_ULTIMATE.start_main_#t~pre12#1_21|)) |v_#memory_int_92|) (= |v_ULTIMATE.start_main_#t~pre12#1_21| |v_#pthreadsForks_55|)) InVars {#pthreadsForks=|v_#pthreadsForks_55|, ULTIMATE.start_main_~#t2~0#1.offset=|v_ULTIMATE.start_main_~#t2~0#1.offset_27|, #memory_int=|v_#memory_int_93|, ULTIMATE.start_main_~#t2~0#1.base=|v_ULTIMATE.start_main_~#t2~0#1.base_27|} OutVars{ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_21|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_9|, #pthreadsForks=|v_#pthreadsForks_54|, ULTIMATE.start_main_~#t2~0#1.offset=|v_ULTIMATE.start_main_~#t2~0#1.offset_27|, ULTIMATE.start_main_#t~pre10#1=|v_ULTIMATE.start_main_#t~pre10#1_29|, #memory_int=|v_#memory_int_92|, ULTIMATE.start_main_~#t2~0#1.base=|v_ULTIMATE.start_main_~#t2~0#1.base_27|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre12#1, ULTIMATE.start_main_#t~nondet11#1, #pthreadsForks, ULTIMATE.start_main_#t~pre10#1, #memory_int] [2022-12-06 05:41:41,647 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [485] L55-->L48-4: Formula: (and (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9| 0)) (= (+ |v_thread1Thread1of1ForFork1_~w~0#1_21| 1) |v_thread1Thread1of1ForFork1_~w~0#1_22|) (= (ite (= (select (select |v_#memory_int_56| v_~queue~0.base_37) (+ (* 4 v_~back~0_59) v_~queue~0.offset_37)) 1) 1 0) |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|) (= v_~back~0_58 (+ v_~back~0_59 1)) (not (= (ite (and (<= 0 v_~back~0_59) (< v_~back~0_59 v_~n~0_36)) 1 0) 0))) InVars {~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_22|, ~back~0=v_~back~0_59, #memory_int=|v_#memory_int_56|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36} OutVars{~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_17|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_9|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_21|, ~back~0=v_~back~0_58, #memory_int=|v_#memory_int_56|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_9|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#t~post1#1, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread1Thread1of1ForFork1_~w~0#1, ~back~0, thread1Thread1of1ForFork1_#t~mem2#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] and [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] [2022-12-06 05:41:42,167 INFO L203 LiptonReduction]: Total number of compositions: 5 [2022-12-06 05:41:42,168 INFO L143 eatedLiptonReduction]: Time needed for LBE in milliseconds: 3672 [2022-12-06 05:41:42,168 INFO L495 AbstractCegarLoop]: Abstraction has has 414 places, 1556 transitions, 24941 flow [2022-12-06 05:41:42,168 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 27 states, 27 states have (on average 1.9259259259259258) internal successors, (52), 26 states have internal predecessors, (52), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-12-06 05:41:42,168 INFO L205 CegarLoopForPetriNet]: Found error trace [2022-12-06 05:41:42,168 INFO L213 CegarLoopForPetriNet]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-12-06 05:41:42,175 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-12-06 05:41:42,374 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable10,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-12-06 05:41:42,374 INFO L420 AbstractCegarLoop]: === Iteration 12 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2022-12-06 05:41:42,375 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-12-06 05:41:42,375 INFO L85 PathProgramCache]: Analyzing trace with hash -1330647286, now seen corresponding path program 1 times [2022-12-06 05:41:42,375 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-12-06 05:41:42,375 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [736740197] [2022-12-06 05:41:42,375 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 05:41:42,375 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-12-06 05:41:42,423 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 05:41:43,077 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 1 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-12-06 05:41:43,077 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-12-06 05:41:43,078 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [736740197] [2022-12-06 05:41:43,078 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [736740197] provided 0 perfect and 1 imperfect interpolant sequences [2022-12-06 05:41:43,078 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1064931061] [2022-12-06 05:41:43,078 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 05:41:43,078 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-12-06 05:41:43,078 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-12-06 05:41:43,081 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-12-06 05:41:43,138 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-12-06 05:41:43,220 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 05:41:43,222 INFO L263 TraceCheckSpWp]: Trace formula consists of 260 conjuncts, 38 conjunts are in the unsatisfiable core [2022-12-06 05:41:43,225 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-12-06 05:41:43,286 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 7 [2022-12-06 05:41:43,388 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 7 [2022-12-06 05:41:43,471 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 1 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-12-06 05:41:43,472 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-12-06 05:41:43,567 INFO L321 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-12-06 05:41:43,567 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 29 treesize of output 25 [2022-12-06 05:41:43,648 INFO L321 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-12-06 05:41:43,649 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 25 treesize of output 21 [2022-12-06 05:41:43,731 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 1 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-12-06 05:41:43,731 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1064931061] provided 0 perfect and 2 imperfect interpolant sequences [2022-12-06 05:41:43,731 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-12-06 05:41:43,731 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10, 10] total 26 [2022-12-06 05:41:43,731 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2020648099] [2022-12-06 05:41:43,731 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-12-06 05:41:43,732 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 27 states [2022-12-06 05:41:43,732 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-12-06 05:41:43,732 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2022-12-06 05:41:43,732 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=86, Invalid=616, Unknown=0, NotChecked=0, Total=702 [2022-12-06 05:41:43,733 INFO L490 CegarLoopForPetriNet]: Number of universal loopers: 0 out of 105 [2022-12-06 05:41:43,733 INFO L100 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 414 places, 1556 transitions, 24941 flow. Second operand has 27 states, 27 states have (on average 2.037037037037037) internal successors, (55), 26 states have internal predecessors, (55), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-12-06 05:41:43,733 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-12-06 05:41:43,733 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 0 of 105 [2022-12-06 05:41:43,733 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-12-06 05:41:59,479 INFO L130 PetriNetUnfolder]: 17796/31667 cut-off events. [2022-12-06 05:41:59,480 INFO L131 PetriNetUnfolder]: For 1160838/1160838 co-relation queries the response was YES. [2022-12-06 05:41:59,817 INFO L83 FinitePrefix]: Finished finitePrefix Result has 267611 conditions, 31667 events. 17796/31667 cut-off events. For 1160838/1160838 co-relation queries the response was YES. Maximal size of possible extension queue 1696. Compared 282385 event pairs, 3409 based on Foata normal form. 104/31766 useless extension candidates. Maximal degree in co-relation 266441. Up to 11222 conditions per place. [2022-12-06 05:41:59,964 INFO L137 encePairwiseOnDemand]: 11/105 looper letters, 1116 selfloop transitions, 1130 changer transitions 74/2320 dead transitions. [2022-12-06 05:41:59,964 INFO L142 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 473 places, 2320 transitions, 40254 flow [2022-12-06 05:41:59,964 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 60 states. [2022-12-06 05:41:59,964 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 60 states. [2022-12-06 05:41:59,965 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 60 states to 60 states and 488 transitions. [2022-12-06 05:41:59,966 INFO L535 CegarLoopForPetriNet]: DFA transition density 0.07746031746031747 [2022-12-06 05:41:59,966 INFO L175 Difference]: Start difference. First operand has 414 places, 1556 transitions, 24941 flow. Second operand 60 states and 488 transitions. [2022-12-06 05:41:59,966 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 473 places, 2320 transitions, 40254 flow [2022-12-06 05:42:15,060 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 463 places, 2320 transitions, 39505 flow, removed 299 selfloop flow, removed 10 redundant places. [2022-12-06 05:42:15,096 INFO L231 Difference]: Finished difference. Result has 483 places, 1753 transitions, 31282 flow [2022-12-06 05:42:15,097 INFO L276 CegarLoopForPetriNet]: {PETRI_ALPHABET=105, PETRI_DIFFERENCE_MINUEND_FLOW=24448, PETRI_DIFFERENCE_MINUEND_PLACES=404, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=1556, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=944, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=587, PETRI_DIFFERENCE_SUBTRAHEND_STATES=60, PETRI_FLOW=31282, PETRI_PLACES=483, PETRI_TRANSITIONS=1753} [2022-12-06 05:42:15,098 INFO L294 CegarLoopForPetriNet]: 32 programPoint places, 451 predicate places. [2022-12-06 05:42:15,098 WARN L163 eatedLiptonReduction]: Counterexample is not a run of mAbstraction. Replaying acceptance of the word... [2022-12-06 05:42:15,098 INFO L89 Accepts]: Start accepts. Operand has 483 places, 1753 transitions, 31282 flow [2022-12-06 05:42:15,106 INFO L95 Accepts]: Finished accepts. [2022-12-06 05:42:15,106 INFO L195 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-12-06 05:42:15,107 INFO L167 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 483 places, 1753 transitions, 31282 flow [2022-12-06 05:42:15,125 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 482 places, 1753 transitions, 31282 flow [2022-12-06 05:42:18,546 INFO L130 PetriNetUnfolder]: 4630/12676 cut-off events. [2022-12-06 05:42:18,546 INFO L131 PetriNetUnfolder]: For 521608/525182 co-relation queries the response was YES. [2022-12-06 05:42:18,659 INFO L83 FinitePrefix]: Finished finitePrefix Result has 104998 conditions, 12676 events. 4630/12676 cut-off events. For 521608/525182 co-relation queries the response was YES. Maximal size of possible extension queue 1345. Compared 152975 event pairs, 1204 based on Foata normal form. 95/11905 useless extension candidates. Maximal degree in co-relation 104606. Up to 4248 conditions per place. [2022-12-06 05:42:18,780 INFO L184 LiptonReduction]: Starting Lipton reduction on Petri net that has 482 places, 1753 transitions, 31282 flow [2022-12-06 05:42:18,781 INFO L188 LiptonReduction]: Number of co-enabled transitions 9758 [2022-12-06 05:42:18,784 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [482] $Ultimate##0-->L81: Formula: (= |v_thread2Thread1of1ForFork2_~cond~1#1_13| v_~v_assert~0_33) InVars {~v_assert~0=v_~v_assert~0_33} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_13|, ~v_assert~0=v_~v_assert~0_33, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_17|} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~cond~1#1, thread2Thread1of1ForFork2_~temp~0#1] and [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] [2022-12-06 05:42:18,795 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [482] $Ultimate##0-->L81: Formula: (= |v_thread2Thread1of1ForFork2_~cond~1#1_13| v_~v_assert~0_33) InVars {~v_assert~0=v_~v_assert~0_33} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_13|, ~v_assert~0=v_~v_assert~0_33, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_17|} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~cond~1#1, thread2Thread1of1ForFork2_~temp~0#1] and [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] [2022-12-06 05:42:19,005 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [482] $Ultimate##0-->L81: Formula: (= |v_thread2Thread1of1ForFork2_~cond~1#1_13| v_~v_assert~0_33) InVars {~v_assert~0=v_~v_assert~0_33} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_13|, ~v_assert~0=v_~v_assert~0_33, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_17|} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~cond~1#1, thread2Thread1of1ForFork2_~temp~0#1] [2022-12-06 05:42:19,104 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [528] L109-4-->L110-3: Formula: (and (= |v_ULTIMATE.start_main_#t~pre14#1_21| |v_#pthreadsForks_51|) (= |v_#pthreadsForks_50| (+ |v_#pthreadsForks_51| 1)) (= (store |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27| (store (select |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27|) |v_ULTIMATE.start_main_~#t3~0#1.offset_27| |v_ULTIMATE.start_main_#t~pre14#1_21|)) |v_#memory_int_88|)) InVars {#pthreadsForks=|v_#pthreadsForks_51|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_89|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} OutVars{ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_19|, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_21|, #pthreadsForks=|v_#pthreadsForks_50|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_88|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_11|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre12#1, ULTIMATE.start_main_#t~pre14#1, #pthreadsForks, #memory_int, ULTIMATE.start_main_#t~nondet13#1] [2022-12-06 05:42:19,223 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [533] L108-3-->L109-3: Formula: (and (= |v_#pthreadsForks_54| (+ |v_#pthreadsForks_55| 1)) (= (store |v_#memory_int_93| |v_ULTIMATE.start_main_~#t2~0#1.base_27| (store (select |v_#memory_int_93| |v_ULTIMATE.start_main_~#t2~0#1.base_27|) |v_ULTIMATE.start_main_~#t2~0#1.offset_27| |v_ULTIMATE.start_main_#t~pre12#1_21|)) |v_#memory_int_92|) (= |v_ULTIMATE.start_main_#t~pre12#1_21| |v_#pthreadsForks_55|)) InVars {#pthreadsForks=|v_#pthreadsForks_55|, ULTIMATE.start_main_~#t2~0#1.offset=|v_ULTIMATE.start_main_~#t2~0#1.offset_27|, #memory_int=|v_#memory_int_93|, ULTIMATE.start_main_~#t2~0#1.base=|v_ULTIMATE.start_main_~#t2~0#1.base_27|} OutVars{ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_21|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_9|, #pthreadsForks=|v_#pthreadsForks_54|, ULTIMATE.start_main_~#t2~0#1.offset=|v_ULTIMATE.start_main_~#t2~0#1.offset_27|, ULTIMATE.start_main_#t~pre10#1=|v_ULTIMATE.start_main_#t~pre10#1_29|, #memory_int=|v_#memory_int_92|, ULTIMATE.start_main_~#t2~0#1.base=|v_ULTIMATE.start_main_~#t2~0#1.base_27|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre12#1, ULTIMATE.start_main_#t~nondet11#1, #pthreadsForks, ULTIMATE.start_main_#t~pre10#1, #memory_int] and [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] [2022-12-06 05:42:19,341 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [533] L108-3-->L109-3: Formula: (and (= |v_#pthreadsForks_54| (+ |v_#pthreadsForks_55| 1)) (= (store |v_#memory_int_93| |v_ULTIMATE.start_main_~#t2~0#1.base_27| (store (select |v_#memory_int_93| |v_ULTIMATE.start_main_~#t2~0#1.base_27|) |v_ULTIMATE.start_main_~#t2~0#1.offset_27| |v_ULTIMATE.start_main_#t~pre12#1_21|)) |v_#memory_int_92|) (= |v_ULTIMATE.start_main_#t~pre12#1_21| |v_#pthreadsForks_55|)) InVars {#pthreadsForks=|v_#pthreadsForks_55|, ULTIMATE.start_main_~#t2~0#1.offset=|v_ULTIMATE.start_main_~#t2~0#1.offset_27|, #memory_int=|v_#memory_int_93|, ULTIMATE.start_main_~#t2~0#1.base=|v_ULTIMATE.start_main_~#t2~0#1.base_27|} OutVars{ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_21|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_9|, #pthreadsForks=|v_#pthreadsForks_54|, ULTIMATE.start_main_~#t2~0#1.offset=|v_ULTIMATE.start_main_~#t2~0#1.offset_27|, ULTIMATE.start_main_#t~pre10#1=|v_ULTIMATE.start_main_#t~pre10#1_29|, #memory_int=|v_#memory_int_92|, ULTIMATE.start_main_~#t2~0#1.base=|v_ULTIMATE.start_main_~#t2~0#1.base_27|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre12#1, ULTIMATE.start_main_#t~nondet11#1, #pthreadsForks, ULTIMATE.start_main_#t~pre10#1, #memory_int] and [485] L55-->L48-4: Formula: (and (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9| 0)) (= (+ |v_thread1Thread1of1ForFork1_~w~0#1_21| 1) |v_thread1Thread1of1ForFork1_~w~0#1_22|) (= (ite (= (select (select |v_#memory_int_56| v_~queue~0.base_37) (+ (* 4 v_~back~0_59) v_~queue~0.offset_37)) 1) 1 0) |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|) (= v_~back~0_58 (+ v_~back~0_59 1)) (not (= (ite (and (<= 0 v_~back~0_59) (< v_~back~0_59 v_~n~0_36)) 1 0) 0))) InVars {~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_22|, ~back~0=v_~back~0_59, #memory_int=|v_#memory_int_56|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36} OutVars{~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_17|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_9|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_21|, ~back~0=v_~back~0_58, #memory_int=|v_#memory_int_56|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_9|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#t~post1#1, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread1Thread1of1ForFork1_~w~0#1, ~back~0, thread1Thread1of1ForFork1_#t~mem2#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] [2022-12-06 05:42:19,408 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [482] $Ultimate##0-->L81: Formula: (= |v_thread2Thread1of1ForFork2_~cond~1#1_13| v_~v_assert~0_33) InVars {~v_assert~0=v_~v_assert~0_33} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_13|, ~v_assert~0=v_~v_assert~0_33, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_17|} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~cond~1#1, thread2Thread1of1ForFork2_~temp~0#1] [2022-12-06 05:42:19,539 INFO L203 LiptonReduction]: Total number of compositions: 6 [2022-12-06 05:42:19,539 INFO L143 eatedLiptonReduction]: Time needed for LBE in milliseconds: 4441 [2022-12-06 05:42:19,539 INFO L495 AbstractCegarLoop]: Abstraction has has 482 places, 1752 transitions, 31348 flow [2022-12-06 05:42:19,540 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 27 states, 27 states have (on average 2.037037037037037) internal successors, (55), 26 states have internal predecessors, (55), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-12-06 05:42:19,540 INFO L205 CegarLoopForPetriNet]: Found error trace [2022-12-06 05:42:19,540 INFO L213 CegarLoopForPetriNet]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-12-06 05:42:19,546 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-12-06 05:42:19,740 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable11,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-12-06 05:42:19,740 INFO L420 AbstractCegarLoop]: === Iteration 13 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2022-12-06 05:42:19,741 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-12-06 05:42:19,741 INFO L85 PathProgramCache]: Analyzing trace with hash -936457285, now seen corresponding path program 1 times [2022-12-06 05:42:19,741 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-12-06 05:42:19,741 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1552014427] [2022-12-06 05:42:19,741 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 05:42:19,741 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-12-06 05:42:19,758 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 05:42:19,904 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-12-06 05:42:19,905 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-12-06 05:42:19,905 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1552014427] [2022-12-06 05:42:19,905 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1552014427] provided 1 perfect and 0 imperfect interpolant sequences [2022-12-06 05:42:19,905 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-12-06 05:42:19,905 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-12-06 05:42:19,905 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [91059771] [2022-12-06 05:42:19,905 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-12-06 05:42:19,907 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-12-06 05:42:19,907 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-12-06 05:42:19,907 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-12-06 05:42:19,907 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-12-06 05:42:19,907 INFO L490 CegarLoopForPetriNet]: Number of universal loopers: 3 out of 112 [2022-12-06 05:42:19,908 INFO L100 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 482 places, 1752 transitions, 31348 flow. Second operand has 4 states, 4 states have (on average 7.75) internal successors, (31), 4 states have internal predecessors, (31), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-12-06 05:42:19,908 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-12-06 05:42:19,908 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 3 of 112 [2022-12-06 05:42:19,908 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-12-06 05:42:31,201 INFO L130 PetriNetUnfolder]: 12436/24449 cut-off events. [2022-12-06 05:42:31,202 INFO L131 PetriNetUnfolder]: For 936042/936543 co-relation queries the response was YES. [2022-12-06 05:42:31,465 INFO L83 FinitePrefix]: Finished finitePrefix Result has 215826 conditions, 24449 events. 12436/24449 cut-off events. For 936042/936543 co-relation queries the response was YES. Maximal size of possible extension queue 1695. Compared 242111 event pairs, 2745 based on Foata normal form. 204/24274 useless extension candidates. Maximal degree in co-relation 215138. Up to 14974 conditions per place. [2022-12-06 05:42:31,594 INFO L137 encePairwiseOnDemand]: 97/112 looper letters, 960 selfloop transitions, 216 changer transitions 23/1798 dead transitions. [2022-12-06 05:42:31,594 INFO L142 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 486 places, 1798 transitions, 34298 flow [2022-12-06 05:42:31,595 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-12-06 05:42:31,595 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2022-12-06 05:42:31,595 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 154 transitions. [2022-12-06 05:42:31,596 INFO L535 CegarLoopForPetriNet]: DFA transition density 0.275 [2022-12-06 05:42:31,596 INFO L175 Difference]: Start difference. First operand has 482 places, 1752 transitions, 31348 flow. Second operand 5 states and 154 transitions. [2022-12-06 05:42:31,596 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 486 places, 1798 transitions, 34298 flow [2022-12-06 05:42:45,011 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 473 places, 1798 transitions, 33851 flow, removed 166 selfloop flow, removed 13 redundant places. [2022-12-06 05:42:45,040 INFO L231 Difference]: Finished difference. Result has 476 places, 1743 transitions, 31351 flow [2022-12-06 05:42:45,041 INFO L276 CegarLoopForPetriNet]: {PETRI_ALPHABET=112, PETRI_DIFFERENCE_MINUEND_FLOW=30626, PETRI_DIFFERENCE_MINUEND_PLACES=469, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=1737, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=202, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=1521, PETRI_DIFFERENCE_SUBTRAHEND_STATES=5, PETRI_FLOW=31351, PETRI_PLACES=476, PETRI_TRANSITIONS=1743} [2022-12-06 05:42:45,043 INFO L294 CegarLoopForPetriNet]: 32 programPoint places, 444 predicate places. [2022-12-06 05:42:45,043 WARN L163 eatedLiptonReduction]: Counterexample is not a run of mAbstraction. Replaying acceptance of the word... [2022-12-06 05:42:45,043 INFO L89 Accepts]: Start accepts. Operand has 476 places, 1743 transitions, 31351 flow [2022-12-06 05:42:45,051 INFO L95 Accepts]: Finished accepts. [2022-12-06 05:42:45,051 INFO L195 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-12-06 05:42:45,051 INFO L167 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 476 places, 1743 transitions, 31351 flow [2022-12-06 05:42:45,069 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 470 places, 1743 transitions, 31351 flow [2022-12-06 05:42:48,154 INFO L130 PetriNetUnfolder]: 4582/12517 cut-off events. [2022-12-06 05:42:48,154 INFO L131 PetriNetUnfolder]: For 502974/506553 co-relation queries the response was YES. [2022-12-06 05:42:48,269 INFO L83 FinitePrefix]: Finished finitePrefix Result has 103773 conditions, 12517 events. 4582/12517 cut-off events. For 502974/506553 co-relation queries the response was YES. Maximal size of possible extension queue 1340. Compared 150794 event pairs, 1143 based on Foata normal form. 68/11743 useless extension candidates. Maximal degree in co-relation 103414. Up to 4116 conditions per place. [2022-12-06 05:42:48,383 INFO L184 LiptonReduction]: Starting Lipton reduction on Petri net that has 470 places, 1743 transitions, 31351 flow [2022-12-06 05:42:48,383 INFO L188 LiptonReduction]: Number of co-enabled transitions 9742 [2022-12-06 05:42:48,387 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [602] $Ultimate##0-->L75: Formula: (let ((.cse0 (select |v_#memory_int_243| v_~queue~0.base_116))) (and (= |v_thread2Thread1of1ForFork2_~cond~1#1_74| v_~v_assert~0_217) (not (= (mod |v_thread2Thread1of1ForFork2_~cond~1#1_74| 256) 0)) (= |v_thread1Thread1of1ForFork1_~w~0#1_138| (+ |v_thread1Thread1of1ForFork1_~w~0#1_137| 1)) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_37| |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_37|) (= v_~back~0_139 (+ v_~back~0_140 1)) (= (ite (and (< v_~front~0_140 v_~back~0_139) (< v_~front~0_140 v_~n~0_112) (<= 0 v_~front~0_140)) 1 0) |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_37|) (= (+ v_~front~0_140 1) v_~front~0_139) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_23| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_23|) (not (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_37| 0)) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_23| (ite (= (select .cse0 (+ (* v_~back~0_140 4) v_~queue~0.offset_116)) 1) 1 0)) (not (= 0 (ite (and (< v_~back~0_140 v_~n~0_112) (<= 0 v_~back~0_140)) 1 0))) (= (select .cse0 (+ v_~queue~0.offset_116 (* v_~front~0_140 4))) |v_thread2Thread1of1ForFork2_~temp~0#1_78|) (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_23| 0)))) InVars {~queue~0.offset=v_~queue~0.offset_116, ~v_assert~0=v_~v_assert~0_217, #memory_int=|v_#memory_int_243|, ~back~0=v_~back~0_140, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_138|, ~queue~0.base=v_~queue~0.base_116, ~n~0=v_~n~0_112, ~front~0=v_~front~0_140} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_74|, ~queue~0.offset=v_~queue~0.offset_116, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_78|, ~back~0=v_~back~0_139, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_23|, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_37|, ~queue~0.base=v_~queue~0.base_116, ~v_assert~0=v_~v_assert~0_217, thread2Thread1of1ForFork2_#t~post5#1=|v_thread2Thread1of1ForFork2_#t~post5#1_37|, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_37|, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_31|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_23|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_23|, thread2Thread1of1ForFork2_#t~mem4#1=|v_thread2Thread1of1ForFork2_#t~mem4#1_37|, #memory_int=|v_#memory_int_243|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_137|, ~n~0=v_~n~0_112, ~front~0=v_~front~0_139, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_23|} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~cond~1#1, thread2Thread1of1ForFork2_~temp~0#1, ~back~0, thread1Thread1of1ForFork1_#t~mem2#1, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1, thread2Thread1of1ForFork2_#t~post5#1, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1, thread1Thread1of1ForFork1_#t~post1#1, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread2Thread1of1ForFork2_#t~mem4#1, thread1Thread1of1ForFork1_~w~0#1, ~front~0, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] and [680] L48-4-->L110-3: Formula: (and (= v_~v_assert~0_331 |v_thread1Thread1of1ForFork1_~cond~0#1_301|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_149| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_149|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_149| (ite (= (select (select |v_#memory_int_473| v_~queue~0.base_248) (+ (* v_~back~0_395 4) v_~queue~0.offset_248)) 1) 1 0)) (= |v_thread1Thread1of1ForFork1_#res#1.offset_127| 0) (= v_~back~0_394 (+ v_~back~0_395 1)) (not (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_301| 256) 0)) (not (= (ite (and (< v_~back~0_395 v_~n~0_243) (<= 0 v_~back~0_395)) 1 0) 0)) (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_396|) (not (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_395|)) (= (store |v_#memory_int_473| |v_ULTIMATE.start_main_~#t3~0#1.base_126| (store (select |v_#memory_int_473| |v_ULTIMATE.start_main_~#t3~0#1.base_126|) |v_ULTIMATE.start_main_~#t3~0#1.offset_125| |v_ULTIMATE.start_main_#t~pre14#1_135|)) |v_#memory_int_472|) (= (+ |v_#pthreadsForks_282| 1) |v_#pthreadsForks_281|) (= |v_ULTIMATE.start_main_#t~pre14#1_135| |v_#pthreadsForks_282|) (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_149| 0)) (= |v_thread1Thread1of1ForFork1_~w~0#1_396| (+ |v_thread1Thread1of1ForFork1_~w~0#1_395| 1)) (= |v_thread1Thread1of1ForFork1_#res#1.base_127| 0)) InVars {~queue~0.offset=v_~queue~0.offset_248, ~v_assert~0=v_~v_assert~0_331, #pthreadsForks=|v_#pthreadsForks_282|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_125|, ~back~0=v_~back~0_395, #memory_int=|v_#memory_int_473|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_396|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_126|, ~queue~0.base=v_~queue~0.base_248, ~n~0=v_~n~0_243} OutVars{~queue~0.offset=v_~queue~0.offset_248, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_125|, ~back~0=v_~back~0_394, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_126|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_149|, ~queue~0.base=v_~queue~0.base_248, ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_155|, ~v_assert~0=v_~v_assert~0_331, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_157|, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_135|, #pthreadsForks=|v_#pthreadsForks_281|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_149|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_149|, #memory_int=|v_#memory_int_472|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_116|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_395|, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_127|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_127|, ~n~0=v_~n~0_243, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_301|, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_149|} AuxVars[] AssignedVars[~back~0, thread1Thread1of1ForFork1_#t~mem2#1, ULTIMATE.start_main_#t~pre12#1, thread1Thread1of1ForFork1_#t~post1#1, ULTIMATE.start_main_#t~pre14#1, #pthreadsForks, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, #memory_int, ULTIMATE.start_main_#t~nondet13#1, thread1Thread1of1ForFork1_~w~0#1, thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] [2022-12-06 05:42:48,387 WARN L322 ript$VariableManager]: TermVariable LBE247 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 05:42:48,387 WARN L322 ript$VariableManager]: TermVariable LBE234 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 05:42:48,387 WARN L322 ript$VariableManager]: TermVariable LBE241 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 05:42:48,387 WARN L322 ript$VariableManager]: TermVariable LBE69 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 05:42:48,387 WARN L322 ript$VariableManager]: TermVariable LBE35 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 05:42:48,387 WARN L322 ript$VariableManager]: TermVariable LBE23 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 05:42:48,960 INFO L203 LiptonReduction]: Total number of compositions: 1 [2022-12-06 05:42:48,961 INFO L143 eatedLiptonReduction]: Time needed for LBE in milliseconds: 3918 [2022-12-06 05:42:48,961 INFO L495 AbstractCegarLoop]: Abstraction has has 470 places, 1743 transitions, 31360 flow [2022-12-06 05:42:48,961 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 7.75) internal successors, (31), 4 states have internal predecessors, (31), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-12-06 05:42:48,962 INFO L205 CegarLoopForPetriNet]: Found error trace [2022-12-06 05:42:48,962 INFO L213 CegarLoopForPetriNet]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-12-06 05:42:48,962 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable12 [2022-12-06 05:42:48,962 INFO L420 AbstractCegarLoop]: === Iteration 14 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2022-12-06 05:42:48,962 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-12-06 05:42:48,962 INFO L85 PathProgramCache]: Analyzing trace with hash 796025449, now seen corresponding path program 1 times [2022-12-06 05:42:48,962 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-12-06 05:42:48,962 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [82780013] [2022-12-06 05:42:48,962 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 05:42:48,963 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-12-06 05:42:48,993 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 05:42:49,696 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-12-06 05:42:49,696 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-12-06 05:42:49,696 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [82780013] [2022-12-06 05:42:49,696 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [82780013] provided 0 perfect and 1 imperfect interpolant sequences [2022-12-06 05:42:49,696 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1853218937] [2022-12-06 05:42:49,696 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 05:42:49,696 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-12-06 05:42:49,696 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-12-06 05:42:49,697 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-12-06 05:42:49,699 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-12-06 05:42:49,794 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 05:42:49,795 INFO L263 TraceCheckSpWp]: Trace formula consists of 254 conjuncts, 45 conjunts are in the unsatisfiable core [2022-12-06 05:42:49,801 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-12-06 05:42:49,899 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-12-06 05:42:49,900 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 42 treesize of output 40 [2022-12-06 05:42:50,108 INFO L321 Elim1Store]: treesize reduction 48, result has 12.7 percent of original size [2022-12-06 05:42:50,109 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 4 select indices, 4 select index equivalence classes, 0 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 6 case distinctions, treesize of input 47 treesize of output 19 [2022-12-06 05:42:50,219 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-12-06 05:42:50,219 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-12-06 05:42:50,360 INFO L321 Elim1Store]: treesize reduction 14, result has 73.6 percent of original size [2022-12-06 05:42:50,361 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 4 select indices, 4 select index equivalence classes, 0 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 6 case distinctions, treesize of input 83 treesize of output 79 [2022-12-06 05:42:50,366 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 12 [2022-12-06 05:42:50,490 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-12-06 05:42:50,490 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1853218937] provided 0 perfect and 2 imperfect interpolant sequences [2022-12-06 05:42:50,491 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-12-06 05:42:50,491 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9, 9] total 23 [2022-12-06 05:42:50,491 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1196680870] [2022-12-06 05:42:50,491 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-12-06 05:42:50,491 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 24 states [2022-12-06 05:42:50,491 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-12-06 05:42:50,492 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 24 interpolants. [2022-12-06 05:42:50,492 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=80, Invalid=472, Unknown=0, NotChecked=0, Total=552 [2022-12-06 05:42:50,492 INFO L490 CegarLoopForPetriNet]: Number of universal loopers: 0 out of 104 [2022-12-06 05:42:50,492 INFO L100 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 470 places, 1743 transitions, 31360 flow. Second operand has 24 states, 24 states have (on average 2.1666666666666665) internal successors, (52), 23 states have internal predecessors, (52), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-12-06 05:42:50,492 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-12-06 05:42:50,492 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 0 of 104 [2022-12-06 05:42:50,493 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-12-06 05:43:06,696 INFO L130 PetriNetUnfolder]: 18705/33084 cut-off events. [2022-12-06 05:43:06,696 INFO L131 PetriNetUnfolder]: For 1385409/1385409 co-relation queries the response was YES. [2022-12-06 05:43:07,273 INFO L83 FinitePrefix]: Finished finitePrefix Result has 300832 conditions, 33084 events. 18705/33084 cut-off events. For 1385409/1385409 co-relation queries the response was YES. Maximal size of possible extension queue 1858. Compared 296697 event pairs, 1991 based on Foata normal form. 4/33085 useless extension candidates. Maximal degree in co-relation 299948. Up to 14043 conditions per place. [2022-12-06 05:43:07,426 INFO L137 encePairwiseOnDemand]: 25/104 looper letters, 936 selfloop transitions, 1192 changer transitions 26/2154 dead transitions. [2022-12-06 05:43:07,426 INFO L142 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 498 places, 2154 transitions, 42350 flow [2022-12-06 05:43:07,426 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 29 states. [2022-12-06 05:43:07,426 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 29 states. [2022-12-06 05:43:07,427 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 298 transitions. [2022-12-06 05:43:07,427 INFO L535 CegarLoopForPetriNet]: DFA transition density 0.09880636604774536 [2022-12-06 05:43:07,427 INFO L175 Difference]: Start difference. First operand has 470 places, 1743 transitions, 31360 flow. Second operand 29 states and 298 transitions. [2022-12-06 05:43:07,427 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 498 places, 2154 transitions, 42350 flow [2022-12-06 05:43:28,660 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 493 places, 2154 transitions, 41911 flow, removed 24 selfloop flow, removed 5 redundant places. [2022-12-06 05:43:28,699 INFO L231 Difference]: Finished difference. Result has 501 places, 1919 transitions, 38153 flow [2022-12-06 05:43:28,700 INFO L276 CegarLoopForPetriNet]: {PETRI_ALPHABET=104, PETRI_DIFFERENCE_MINUEND_FLOW=30976, PETRI_DIFFERENCE_MINUEND_PLACES=465, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=1743, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1015, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=659, PETRI_DIFFERENCE_SUBTRAHEND_STATES=29, PETRI_FLOW=38153, PETRI_PLACES=501, PETRI_TRANSITIONS=1919} [2022-12-06 05:43:28,701 INFO L294 CegarLoopForPetriNet]: 32 programPoint places, 469 predicate places. [2022-12-06 05:43:28,701 WARN L163 eatedLiptonReduction]: Counterexample is not a run of mAbstraction. Replaying acceptance of the word... [2022-12-06 05:43:28,701 INFO L89 Accepts]: Start accepts. Operand has 501 places, 1919 transitions, 38153 flow [2022-12-06 05:43:28,708 INFO L95 Accepts]: Finished accepts. [2022-12-06 05:43:28,708 INFO L195 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-12-06 05:43:28,708 INFO L167 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 501 places, 1919 transitions, 38153 flow [2022-12-06 05:43:28,726 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 497 places, 1919 transitions, 38153 flow [2022-12-06 05:43:31,860 INFO L130 PetriNetUnfolder]: 5122/13717 cut-off events. [2022-12-06 05:43:31,860 INFO L131 PetriNetUnfolder]: For 738001/741985 co-relation queries the response was YES. [2022-12-06 05:43:32,008 INFO L83 FinitePrefix]: Finished finitePrefix Result has 124646 conditions, 13717 events. 5122/13717 cut-off events. For 738001/741985 co-relation queries the response was YES. Maximal size of possible extension queue 1476. Compared 165957 event pairs, 1263 based on Foata normal form. 87/12849 useless extension candidates. Maximal degree in co-relation 124415. Up to 4523 conditions per place. [2022-12-06 05:43:32,510 INFO L184 LiptonReduction]: Starting Lipton reduction on Petri net that has 497 places, 1919 transitions, 38153 flow [2022-12-06 05:43:32,510 INFO L188 LiptonReduction]: Number of co-enabled transitions 10856 [2022-12-06 05:43:32,517 INFO L203 LiptonReduction]: Total number of compositions: 0 [2022-12-06 05:43:32,517 INFO L143 eatedLiptonReduction]: Time needed for LBE in milliseconds: 3816 [2022-12-06 05:43:32,517 INFO L495 AbstractCegarLoop]: Abstraction has has 497 places, 1919 transitions, 38153 flow [2022-12-06 05:43:32,518 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 24 states, 24 states have (on average 2.1666666666666665) internal successors, (52), 23 states have internal predecessors, (52), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-12-06 05:43:32,518 INFO L205 CegarLoopForPetriNet]: Found error trace [2022-12-06 05:43:32,518 INFO L213 CegarLoopForPetriNet]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-12-06 05:43:32,522 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Ended with exit code 0 [2022-12-06 05:43:32,718 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable13 [2022-12-06 05:43:32,719 INFO L420 AbstractCegarLoop]: === Iteration 15 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2022-12-06 05:43:32,719 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-12-06 05:43:32,719 INFO L85 PathProgramCache]: Analyzing trace with hash 733140778, now seen corresponding path program 1 times [2022-12-06 05:43:32,719 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-12-06 05:43:32,719 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [948154136] [2022-12-06 05:43:32,719 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 05:43:32,719 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-12-06 05:43:32,759 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 05:43:33,787 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-12-06 05:43:33,787 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-12-06 05:43:33,787 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [948154136] [2022-12-06 05:43:33,787 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [948154136] provided 0 perfect and 1 imperfect interpolant sequences [2022-12-06 05:43:33,787 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1264607064] [2022-12-06 05:43:33,787 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 05:43:33,788 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-12-06 05:43:33,788 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-12-06 05:43:33,789 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-12-06 05:43:33,791 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2022-12-06 05:43:33,878 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 05:43:33,880 INFO L263 TraceCheckSpWp]: Trace formula consists of 260 conjuncts, 43 conjunts are in the unsatisfiable core [2022-12-06 05:43:33,883 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-12-06 05:43:34,054 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-12-06 05:43:34,055 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 42 treesize of output 40 [2022-12-06 05:43:34,129 INFO L321 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-12-06 05:43:34,130 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 47 treesize of output 13 [2022-12-06 05:43:34,209 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-12-06 05:43:34,209 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-12-06 05:43:34,311 WARN L837 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_612 (Array Int Int))) (< (+ c_~d~0 (select (select (store |c_#memory_int| |c_ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_612) c_~queue~0.base) (+ c_~queue~0.offset (* c_~front~0 4)))) (+ c_~W~0 1))) is different from false [2022-12-06 05:43:34,428 INFO L321 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-12-06 05:43:34,429 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 4 select indices, 4 select index equivalence classes, 0 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 6 case distinctions, treesize of input 83 treesize of output 93 [2022-12-06 05:43:34,435 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 12 [2022-12-06 05:43:34,569 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-12-06 05:43:34,570 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1264607064] provided 0 perfect and 2 imperfect interpolant sequences [2022-12-06 05:43:34,570 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-12-06 05:43:34,570 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11, 11] total 28 [2022-12-06 05:43:34,570 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [309393166] [2022-12-06 05:43:34,570 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-12-06 05:43:34,570 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 29 states [2022-12-06 05:43:34,570 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-12-06 05:43:34,571 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 29 interpolants. [2022-12-06 05:43:34,572 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=91, Invalid=668, Unknown=1, NotChecked=52, Total=812 [2022-12-06 05:43:34,573 INFO L490 CegarLoopForPetriNet]: Number of universal loopers: 0 out of 103 [2022-12-06 05:43:34,573 INFO L100 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 497 places, 1919 transitions, 38153 flow. Second operand has 29 states, 29 states have (on average 1.9655172413793103) internal successors, (57), 28 states have internal predecessors, (57), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-12-06 05:43:34,573 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-12-06 05:43:34,573 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 0 of 103 [2022-12-06 05:43:34,573 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-12-06 05:44:13,139 INFO L130 PetriNetUnfolder]: 21159/37406 cut-off events. [2022-12-06 05:44:13,139 INFO L131 PetriNetUnfolder]: For 1858886/1858886 co-relation queries the response was YES. [2022-12-06 05:44:13,826 INFO L83 FinitePrefix]: Finished finitePrefix Result has 358089 conditions, 37406 events. 21159/37406 cut-off events. For 1858886/1858886 co-relation queries the response was YES. Maximal size of possible extension queue 2029. Compared 338403 event pairs, 1751 based on Foata normal form. 96/37500 useless extension candidates. Maximal degree in co-relation 357611. Up to 12028 conditions per place. [2022-12-06 05:44:14,008 INFO L137 encePairwiseOnDemand]: 11/103 looper letters, 976 selfloop transitions, 1899 changer transitions 93/2968 dead transitions. [2022-12-06 05:44:14,008 INFO L142 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 581 places, 2968 transitions, 62112 flow [2022-12-06 05:44:14,008 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 85 states. [2022-12-06 05:44:14,008 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 85 states. [2022-12-06 05:44:14,010 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 85 states to 85 states and 683 transitions. [2022-12-06 05:44:14,010 INFO L535 CegarLoopForPetriNet]: DFA transition density 0.07801256424900058 [2022-12-06 05:44:14,010 INFO L175 Difference]: Start difference. First operand has 497 places, 1919 transitions, 38153 flow. Second operand 85 states and 683 transitions. [2022-12-06 05:44:14,010 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 581 places, 2968 transitions, 62112 flow [2022-12-06 05:44:53,948 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 566 places, 2968 transitions, 61013 flow, removed 377 selfloop flow, removed 15 redundant places. [2022-12-06 05:44:53,998 INFO L231 Difference]: Finished difference. Result has 589 places, 2346 transitions, 53523 flow [2022-12-06 05:44:54,000 INFO L276 CegarLoopForPetriNet]: {PETRI_ALPHABET=103, PETRI_DIFFERENCE_MINUEND_FLOW=37659, PETRI_DIFFERENCE_MINUEND_PLACES=482, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=1919, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1474, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=398, PETRI_DIFFERENCE_SUBTRAHEND_STATES=85, PETRI_FLOW=53523, PETRI_PLACES=589, PETRI_TRANSITIONS=2346} [2022-12-06 05:44:54,000 INFO L294 CegarLoopForPetriNet]: 32 programPoint places, 557 predicate places. [2022-12-06 05:44:54,000 WARN L163 eatedLiptonReduction]: Counterexample is not a run of mAbstraction. Replaying acceptance of the word... [2022-12-06 05:44:54,000 INFO L89 Accepts]: Start accepts. Operand has 589 places, 2346 transitions, 53523 flow [2022-12-06 05:44:54,012 INFO L95 Accepts]: Finished accepts. [2022-12-06 05:44:54,012 INFO L195 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-12-06 05:44:54,013 INFO L167 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 589 places, 2346 transitions, 53523 flow [2022-12-06 05:44:54,042 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 588 places, 2346 transitions, 53523 flow [2022-12-06 05:44:59,447 INFO L130 PetriNetUnfolder]: 5804/15512 cut-off events. [2022-12-06 05:44:59,448 INFO L131 PetriNetUnfolder]: For 896385/900970 co-relation queries the response was YES. [2022-12-06 05:44:59,624 INFO L83 FinitePrefix]: Finished finitePrefix Result has 153230 conditions, 15512 events. 5804/15512 cut-off events. For 896385/900970 co-relation queries the response was YES. Maximal size of possible extension queue 1630. Compared 189882 event pairs, 1477 based on Foata normal form. 89/14533 useless extension candidates. Maximal degree in co-relation 152803. Up to 5207 conditions per place. [2022-12-06 05:44:59,802 INFO L184 LiptonReduction]: Starting Lipton reduction on Petri net that has 588 places, 2346 transitions, 53523 flow [2022-12-06 05:44:59,803 INFO L188 LiptonReduction]: Number of co-enabled transitions 12696 [2022-12-06 05:44:59,814 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [528] L109-4-->L110-3: Formula: (and (= |v_ULTIMATE.start_main_#t~pre14#1_21| |v_#pthreadsForks_51|) (= |v_#pthreadsForks_50| (+ |v_#pthreadsForks_51| 1)) (= (store |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27| (store (select |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27|) |v_ULTIMATE.start_main_~#t3~0#1.offset_27| |v_ULTIMATE.start_main_#t~pre14#1_21|)) |v_#memory_int_88|)) InVars {#pthreadsForks=|v_#pthreadsForks_51|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_89|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} OutVars{ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_19|, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_21|, #pthreadsForks=|v_#pthreadsForks_50|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_88|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_11|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre12#1, ULTIMATE.start_main_#t~pre14#1, #pthreadsForks, #memory_int, ULTIMATE.start_main_#t~nondet13#1] [2022-12-06 05:44:59,939 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] [2022-12-06 05:45:00,043 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] [2022-12-06 05:45:00,149 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [528] L109-4-->L110-3: Formula: (and (= |v_ULTIMATE.start_main_#t~pre14#1_21| |v_#pthreadsForks_51|) (= |v_#pthreadsForks_50| (+ |v_#pthreadsForks_51| 1)) (= (store |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27| (store (select |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27|) |v_ULTIMATE.start_main_~#t3~0#1.offset_27| |v_ULTIMATE.start_main_#t~pre14#1_21|)) |v_#memory_int_88|)) InVars {#pthreadsForks=|v_#pthreadsForks_51|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_89|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} OutVars{ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_19|, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_21|, #pthreadsForks=|v_#pthreadsForks_50|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_88|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_11|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre12#1, ULTIMATE.start_main_#t~pre14#1, #pthreadsForks, #memory_int, ULTIMATE.start_main_#t~nondet13#1] [2022-12-06 05:45:00,267 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] [2022-12-06 05:45:00,456 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] [2022-12-06 05:45:00,555 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] [2022-12-06 05:45:00,661 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [528] L109-4-->L110-3: Formula: (and (= |v_ULTIMATE.start_main_#t~pre14#1_21| |v_#pthreadsForks_51|) (= |v_#pthreadsForks_50| (+ |v_#pthreadsForks_51| 1)) (= (store |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27| (store (select |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27|) |v_ULTIMATE.start_main_~#t3~0#1.offset_27| |v_ULTIMATE.start_main_#t~pre14#1_21|)) |v_#memory_int_88|)) InVars {#pthreadsForks=|v_#pthreadsForks_51|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_89|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} OutVars{ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_19|, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_21|, #pthreadsForks=|v_#pthreadsForks_50|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_88|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_11|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre12#1, ULTIMATE.start_main_#t~pre14#1, #pthreadsForks, #memory_int, ULTIMATE.start_main_#t~nondet13#1] [2022-12-06 05:45:00,777 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] [2022-12-06 05:45:00,875 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] [2022-12-06 05:45:01,382 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [485] L55-->L48-4: Formula: (and (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9| 0)) (= (+ |v_thread1Thread1of1ForFork1_~w~0#1_21| 1) |v_thread1Thread1of1ForFork1_~w~0#1_22|) (= (ite (= (select (select |v_#memory_int_56| v_~queue~0.base_37) (+ (* 4 v_~back~0_59) v_~queue~0.offset_37)) 1) 1 0) |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|) (= v_~back~0_58 (+ v_~back~0_59 1)) (not (= (ite (and (<= 0 v_~back~0_59) (< v_~back~0_59 v_~n~0_36)) 1 0) 0))) InVars {~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_22|, ~back~0=v_~back~0_59, #memory_int=|v_#memory_int_56|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36} OutVars{~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_17|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_9|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_21|, ~back~0=v_~back~0_58, #memory_int=|v_#memory_int_56|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_9|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#t~post1#1, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread1Thread1of1ForFork1_~w~0#1, ~back~0, thread1Thread1of1ForFork1_#t~mem2#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] and [543] L81-->L75: Formula: (and (= (select (select |v_#memory_int_104| v_~queue~0.base_55) (+ (* v_~front~0_67 4) v_~queue~0.offset_55)) |v_thread2Thread1of1ForFork2_~temp~0#1_21|) (not (= (mod |v_thread2Thread1of1ForFork2_~cond~1#1_17| 256) 0)) (not (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11| 0)) (= (+ v_~front~0_67 1) v_~front~0_66) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11| (ite (and (< v_~front~0_67 v_~n~0_56) (<= 0 v_~front~0_67) (< v_~front~0_67 v_~back~0_70)) 1 0)) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11| |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11|)) InVars {thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_17|, ~queue~0.offset=v_~queue~0.offset_55, #memory_int=|v_#memory_int_104|, ~back~0=v_~back~0_70, ~queue~0.base=v_~queue~0.base_55, ~n~0=v_~n~0_56, ~front~0=v_~front~0_67} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_17|, ~queue~0.offset=v_~queue~0.offset_55, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_21|, thread2Thread1of1ForFork2_#t~post5#1=|v_thread2Thread1of1ForFork2_#t~post5#1_11|, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_11|, thread2Thread1of1ForFork2_#t~mem4#1=|v_thread2Thread1of1ForFork2_#t~mem4#1_11|, #memory_int=|v_#memory_int_104|, ~back~0=v_~back~0_70, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_11|, ~queue~0.base=v_~queue~0.base_55, ~n~0=v_~n~0_56, ~front~0=v_~front~0_66} AuxVars[] AssignedVars[thread2Thread1of1ForFork2_~temp~0#1, thread2Thread1of1ForFork2_#t~post5#1, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1, thread2Thread1of1ForFork2_#t~mem4#1, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1, ~front~0] [2022-12-06 05:45:01,477 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [485] L55-->L48-4: Formula: (and (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9| 0)) (= (+ |v_thread1Thread1of1ForFork1_~w~0#1_21| 1) |v_thread1Thread1of1ForFork1_~w~0#1_22|) (= (ite (= (select (select |v_#memory_int_56| v_~queue~0.base_37) (+ (* 4 v_~back~0_59) v_~queue~0.offset_37)) 1) 1 0) |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|) (= v_~back~0_58 (+ v_~back~0_59 1)) (not (= (ite (and (<= 0 v_~back~0_59) (< v_~back~0_59 v_~n~0_36)) 1 0) 0))) InVars {~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_22|, ~back~0=v_~back~0_59, #memory_int=|v_#memory_int_56|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36} OutVars{~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_17|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_9|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_21|, ~back~0=v_~back~0_58, #memory_int=|v_#memory_int_56|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_9|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#t~post1#1, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread1Thread1of1ForFork1_~w~0#1, ~back~0, thread1Thread1of1ForFork1_#t~mem2#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] and [528] L109-4-->L110-3: Formula: (and (= |v_ULTIMATE.start_main_#t~pre14#1_21| |v_#pthreadsForks_51|) (= |v_#pthreadsForks_50| (+ |v_#pthreadsForks_51| 1)) (= (store |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27| (store (select |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27|) |v_ULTIMATE.start_main_~#t3~0#1.offset_27| |v_ULTIMATE.start_main_#t~pre14#1_21|)) |v_#memory_int_88|)) InVars {#pthreadsForks=|v_#pthreadsForks_51|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_89|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} OutVars{ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_19|, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_21|, #pthreadsForks=|v_#pthreadsForks_50|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_88|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_11|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre12#1, ULTIMATE.start_main_#t~pre14#1, #pthreadsForks, #memory_int, ULTIMATE.start_main_#t~nondet13#1] [2022-12-06 05:45:01,539 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [485] L55-->L48-4: Formula: (and (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9| 0)) (= (+ |v_thread1Thread1of1ForFork1_~w~0#1_21| 1) |v_thread1Thread1of1ForFork1_~w~0#1_22|) (= (ite (= (select (select |v_#memory_int_56| v_~queue~0.base_37) (+ (* 4 v_~back~0_59) v_~queue~0.offset_37)) 1) 1 0) |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|) (= v_~back~0_58 (+ v_~back~0_59 1)) (not (= (ite (and (<= 0 v_~back~0_59) (< v_~back~0_59 v_~n~0_36)) 1 0) 0))) InVars {~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_22|, ~back~0=v_~back~0_59, #memory_int=|v_#memory_int_56|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36} OutVars{~queue~0.offset=v_~queue~0.offset_37, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_17|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_9|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_9|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_21|, ~back~0=v_~back~0_58, #memory_int=|v_#memory_int_56|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_9|, ~queue~0.base=v_~queue~0.base_37, ~n~0=v_~n~0_36, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_9|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#t~post1#1, thread1Thread1of1ForFork1_#t~post3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread1Thread1of1ForFork1_~w~0#1, ~back~0, thread1Thread1of1ForFork1_#t~mem2#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] and [528] L109-4-->L110-3: Formula: (and (= |v_ULTIMATE.start_main_#t~pre14#1_21| |v_#pthreadsForks_51|) (= |v_#pthreadsForks_50| (+ |v_#pthreadsForks_51| 1)) (= (store |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27| (store (select |v_#memory_int_89| |v_ULTIMATE.start_main_~#t3~0#1.base_27|) |v_ULTIMATE.start_main_~#t3~0#1.offset_27| |v_ULTIMATE.start_main_#t~pre14#1_21|)) |v_#memory_int_88|)) InVars {#pthreadsForks=|v_#pthreadsForks_51|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_89|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} OutVars{ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_19|, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_21|, #pthreadsForks=|v_#pthreadsForks_50|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_27|, #memory_int=|v_#memory_int_88|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_11|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_27|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre12#1, ULTIMATE.start_main_#t~pre14#1, #pthreadsForks, #memory_int, ULTIMATE.start_main_#t~nondet13#1] [2022-12-06 05:45:01,754 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] [2022-12-06 05:45:01,852 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] [2022-12-06 05:45:01,953 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] [2022-12-06 05:45:02,051 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] [2022-12-06 05:45:02,148 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] [2022-12-06 05:45:02,249 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] [2022-12-06 05:45:02,349 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] [2022-12-06 05:45:02,449 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] [2022-12-06 05:45:02,551 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [558] L48-4-->thread1EXIT: Formula: (let ((.cse0 (= |v_thread1Thread1of1ForFork1_#res#1.offset_Out_6| 0)) (.cse1 (= 0 |v_thread1Thread1of1ForFork1_#res#1.base_Out_6|)) (.cse2 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_In_2|))) (or (and .cse0 .cse1 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| 256) 0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| v_~v_assert~0_In_6)) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_Out_4| |v_thread1Thread1of1ForFork1_~cond~0#1_In_2|) .cse0 .cse1 (not .cse2)))) InVars {thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_In_2|} OutVars{thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_In_2|, ~v_assert~0=v_~v_assert~0_In_6, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_Out_6|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_Out_6|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_Out_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] and [421] L75-->L78: Formula: (= v_~d~0_1 (+ |v_thread2Thread1of1ForFork2_~temp~0#1_5| v_~d~0_2)) InVars {thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_2} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_5|, ~d~0=v_~d~0_1} AuxVars[] AssignedVars[~d~0] [2022-12-06 05:45:02,667 INFO L203 LiptonReduction]: Total number of compositions: 3 [2022-12-06 05:45:02,667 INFO L143 eatedLiptonReduction]: Time needed for LBE in milliseconds: 8667 [2022-12-06 05:45:02,668 INFO L495 AbstractCegarLoop]: Abstraction has has 585 places, 2343 transitions, 53658 flow [2022-12-06 05:45:02,668 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 29 states, 29 states have (on average 1.9655172413793103) internal successors, (57), 28 states have internal predecessors, (57), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-12-06 05:45:02,668 INFO L205 CegarLoopForPetriNet]: Found error trace [2022-12-06 05:45:02,668 INFO L213 CegarLoopForPetriNet]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-12-06 05:45:02,676 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2022-12-06 05:45:02,872 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable14 [2022-12-06 05:45:02,873 INFO L420 AbstractCegarLoop]: === Iteration 16 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2022-12-06 05:45:02,873 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-12-06 05:45:02,873 INFO L85 PathProgramCache]: Analyzing trace with hash -1957704216, now seen corresponding path program 1 times [2022-12-06 05:45:02,873 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-12-06 05:45:02,873 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1986125165] [2022-12-06 05:45:02,873 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 05:45:02,873 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-12-06 05:45:02,905 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 05:45:03,675 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-12-06 05:45:03,675 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-12-06 05:45:03,675 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1986125165] [2022-12-06 05:45:03,675 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1986125165] provided 0 perfect and 1 imperfect interpolant sequences [2022-12-06 05:45:03,675 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [350431559] [2022-12-06 05:45:03,675 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 05:45:03,676 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-12-06 05:45:03,676 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-12-06 05:45:03,677 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-12-06 05:45:03,682 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2022-12-06 05:45:03,794 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 05:45:03,797 INFO L263 TraceCheckSpWp]: Trace formula consists of 260 conjuncts, 73 conjunts are in the unsatisfiable core [2022-12-06 05:45:03,799 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-12-06 05:45:03,821 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-12-06 05:45:03,821 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 23 [2022-12-06 05:45:03,825 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-12-06 05:45:03,887 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-12-06 05:45:03,948 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-12-06 05:45:03,949 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 20 [2022-12-06 05:45:04,200 INFO L321 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-12-06 05:45:04,200 INFO L350 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 41 treesize of output 13 [2022-12-06 05:45:04,287 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-12-06 05:45:04,288 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-12-06 05:45:04,643 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-12-06 05:45:04,644 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [350431559] provided 0 perfect and 2 imperfect interpolant sequences [2022-12-06 05:45:04,644 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-12-06 05:45:04,644 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11, 11] total 29 [2022-12-06 05:45:04,644 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1373473997] [2022-12-06 05:45:04,644 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-12-06 05:45:04,644 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 30 states [2022-12-06 05:45:04,645 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-12-06 05:45:04,645 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 30 interpolants. [2022-12-06 05:45:04,645 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=126, Invalid=744, Unknown=0, NotChecked=0, Total=870 [2022-12-06 05:45:04,646 INFO L490 CegarLoopForPetriNet]: Number of universal loopers: 0 out of 128 [2022-12-06 05:45:04,646 INFO L100 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 585 places, 2343 transitions, 53658 flow. Second operand has 30 states, 30 states have (on average 1.9333333333333333) internal successors, (58), 29 states have internal predecessors, (58), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-12-06 05:45:04,646 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-12-06 05:45:04,646 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 0 of 128 [2022-12-06 05:45:04,646 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand