/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-RepeatedSemanticLbe.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 00:22:07,874 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-12-06 00:22:07,876 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-12-06 00:22:07,933 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-12-06 00:22:07,934 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-12-06 00:22:07,937 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-12-06 00:22:07,940 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-12-06 00:22:07,944 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-12-06 00:22:07,949 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-12-06 00:22:07,954 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-12-06 00:22:07,955 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-12-06 00:22:07,957 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-12-06 00:22:07,957 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-12-06 00:22:07,960 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-12-06 00:22:07,961 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-12-06 00:22:07,964 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-12-06 00:22:07,967 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-12-06 00:22:07,967 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-12-06 00:22:07,970 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-12-06 00:22:07,975 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-12-06 00:22:07,976 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-12-06 00:22:07,977 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-12-06 00:22:07,978 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-12-06 00:22:07,979 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-12-06 00:22:07,992 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-12-06 00:22:07,993 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-12-06 00:22:07,993 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-12-06 00:22:07,993 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-12-06 00:22:07,994 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-12-06 00:22:07,995 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-12-06 00:22:07,996 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-12-06 00:22:07,996 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-12-06 00:22:07,997 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-12-06 00:22:07,997 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-12-06 00:22:07,998 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-12-06 00:22:07,998 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-12-06 00:22:07,999 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-12-06 00:22:07,999 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-12-06 00:22:07,999 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-12-06 00:22:08,000 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-12-06 00:22:08,001 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-12-06 00:22:08,003 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-RepeatedSemanticLbe.epf [2022-12-06 00:22:08,034 INFO L113 SettingsManager]: Loading preferences was successful [2022-12-06 00:22:08,035 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-12-06 00:22:08,037 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-12-06 00:22:08,037 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-12-06 00:22:08,037 INFO L138 SettingsManager]: * Use SBE=true [2022-12-06 00:22:08,038 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-12-06 00:22:08,038 INFO L138 SettingsManager]: * sizeof long=4 [2022-12-06 00:22:08,038 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-12-06 00:22:08,038 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-12-06 00:22:08,038 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-12-06 00:22:08,039 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-12-06 00:22:08,039 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-12-06 00:22:08,039 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-12-06 00:22:08,039 INFO L138 SettingsManager]: * sizeof long double=12 [2022-12-06 00:22:08,040 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-12-06 00:22:08,040 INFO L138 SettingsManager]: * Use constant arrays=true [2022-12-06 00:22:08,040 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-12-06 00:22:08,040 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-12-06 00:22:08,040 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-12-06 00:22:08,040 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-12-06 00:22:08,040 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-12-06 00:22:08,041 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-12-06 00:22:08,041 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-12-06 00:22:08,041 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-12-06 00:22:08,041 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-12-06 00:22:08,041 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-12-06 00:22:08,041 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-12-06 00:22:08,041 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=REPEATED_LIPTON_PN [2022-12-06 00:22:08,042 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 00:22:08,342 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-12-06 00:22:08,361 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-12-06 00:22:08,362 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-12-06 00:22:08,363 INFO L271 PluginConnector]: Initializing CDTParser... [2022-12-06 00:22:08,364 INFO L275 PluginConnector]: CDTParser initialized [2022-12-06 00:22:08,365 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 00:22:09,423 INFO L500 CDTParser]: Created temporary CDT project at NULL [2022-12-06 00:22:09,674 INFO L351 CDTParser]: Found 1 translation units. [2022-12-06 00:22:09,674 INFO L172 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/weaver/popl20-prod-cons.wvr.c [2022-12-06 00:22:09,679 INFO L394 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/3912bfa68/b924f37a22264d988a70657791311988/FLAGb81208688 [2022-12-06 00:22:09,689 INFO L402 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/3912bfa68/b924f37a22264d988a70657791311988 [2022-12-06 00:22:09,691 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-12-06 00:22:09,692 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-12-06 00:22:09,693 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-12-06 00:22:09,693 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-12-06 00:22:09,695 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-12-06 00:22:09,695 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 06.12 12:22:09" (1/1) ... [2022-12-06 00:22:09,696 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@195a765d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.12 12:22:09, skipping insertion in model container [2022-12-06 00:22:09,696 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 06.12 12:22:09" (1/1) ... [2022-12-06 00:22:09,701 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-12-06 00:22:09,713 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-12-06 00:22:09,812 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_begin [2022-12-06 00:22:09,814 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_end [2022-12-06 00:22:09,815 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_begin [2022-12-06 00:22:09,817 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_end [2022-12-06 00:22:09,819 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_begin [2022-12-06 00:22:09,820 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_end [2022-12-06 00:22:09,820 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_begin [2022-12-06 00:22:09,821 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_end [2022-12-06 00:22:09,822 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_begin [2022-12-06 00:22:09,822 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_end [2022-12-06 00:22:09,822 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_begin [2022-12-06 00:22:09,826 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_end [2022-12-06 00:22:09,827 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_begin [2022-12-06 00:22:09,828 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_end [2022-12-06 00:22:09,839 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 00:22:09,851 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-12-06 00:22:09,860 INFO L203 MainTranslator]: Completed pre-run [2022-12-06 00:22:09,872 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_begin [2022-12-06 00:22:09,873 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_end [2022-12-06 00:22:09,873 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_begin [2022-12-06 00:22:09,875 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_end [2022-12-06 00:22:09,877 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_begin [2022-12-06 00:22:09,878 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_end [2022-12-06 00:22:09,878 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_begin [2022-12-06 00:22:09,879 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_end [2022-12-06 00:22:09,880 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_begin [2022-12-06 00:22:09,881 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_end [2022-12-06 00:22:09,881 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_begin [2022-12-06 00:22:09,885 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_end [2022-12-06 00:22:09,886 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_begin [2022-12-06 00:22:09,887 WARN L623 FunctionHandler]: Unknown extern function __VERIFIER_atomic_end [2022-12-06 00:22:09,894 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 00:22:09,902 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-12-06 00:22:09,913 INFO L208 MainTranslator]: Completed translation [2022-12-06 00:22:09,913 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.12 12:22:09 WrapperNode [2022-12-06 00:22:09,913 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-12-06 00:22:09,914 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-12-06 00:22:09,915 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-12-06 00:22:09,915 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-12-06 00:22:09,920 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.12 12:22:09" (1/1) ... [2022-12-06 00:22:09,934 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.12 12:22:09" (1/1) ... [2022-12-06 00:22:09,958 INFO L138 Inliner]: procedures = 25, calls = 50, calls flagged for inlining = 10, calls inlined = 10, statements flattened = 166 [2022-12-06 00:22:09,959 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-12-06 00:22:09,959 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-12-06 00:22:09,959 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-12-06 00:22:09,960 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-12-06 00:22:09,966 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.12 12:22:09" (1/1) ... [2022-12-06 00:22:09,966 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.12 12:22:09" (1/1) ... [2022-12-06 00:22:09,978 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.12 12:22:09" (1/1) ... [2022-12-06 00:22:09,978 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.12 12:22:09" (1/1) ... [2022-12-06 00:22:09,988 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.12 12:22:09" (1/1) ... [2022-12-06 00:22:09,990 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.12 12:22:09" (1/1) ... [2022-12-06 00:22:09,991 INFO L185 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.12 12:22:09" (1/1) ... [2022-12-06 00:22:09,992 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.12 12:22:09" (1/1) ... [2022-12-06 00:22:09,994 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-12-06 00:22:09,994 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-12-06 00:22:09,994 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-12-06 00:22:09,994 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-12-06 00:22:09,995 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.12 12:22:09" (1/1) ... [2022-12-06 00:22:09,998 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-12-06 00:22:10,012 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-12-06 00:22:10,023 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 00:22:10,042 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 00:22:10,054 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-12-06 00:22:10,054 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-12-06 00:22:10,054 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-12-06 00:22:10,054 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-12-06 00:22:10,054 INFO L130 BoogieDeclarations]: Found specification of procedure thread1 [2022-12-06 00:22:10,054 INFO L138 BoogieDeclarations]: Found implementation of procedure thread1 [2022-12-06 00:22:10,055 INFO L130 BoogieDeclarations]: Found specification of procedure thread2 [2022-12-06 00:22:10,055 INFO L138 BoogieDeclarations]: Found implementation of procedure thread2 [2022-12-06 00:22:10,055 INFO L130 BoogieDeclarations]: Found specification of procedure thread3 [2022-12-06 00:22:10,055 INFO L138 BoogieDeclarations]: Found implementation of procedure thread3 [2022-12-06 00:22:10,055 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-12-06 00:22:10,055 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2022-12-06 00:22:10,055 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2022-12-06 00:22:10,055 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2022-12-06 00:22:10,056 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-12-06 00:22:10,056 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-12-06 00:22:10,056 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-12-06 00:22:10,057 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 00:22:10,191 INFO L236 CfgBuilder]: Building ICFG [2022-12-06 00:22:10,193 INFO L262 CfgBuilder]: Building CFG for each procedure with an implementation [2022-12-06 00:22:10,462 INFO L277 CfgBuilder]: Performing block encoding [2022-12-06 00:22:10,538 INFO L297 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-12-06 00:22:10,538 INFO L302 CfgBuilder]: Removed 3 assume(true) statements. [2022-12-06 00:22:10,540 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 06.12 12:22:10 BoogieIcfgContainer [2022-12-06 00:22:10,540 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-12-06 00:22:10,542 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-12-06 00:22:10,542 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-12-06 00:22:10,561 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-12-06 00:22:10,562 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 06.12 12:22:09" (1/3) ... [2022-12-06 00:22:10,562 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@378b26ee and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 06.12 12:22:10, skipping insertion in model container [2022-12-06 00:22:10,563 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.12 12:22:09" (2/3) ... [2022-12-06 00:22:10,563 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@378b26ee and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 06.12 12:22:10, skipping insertion in model container [2022-12-06 00:22:10,563 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 06.12 12:22:10" (3/3) ... [2022-12-06 00:22:10,568 INFO L112 eAbstractionObserver]: Analyzing ICFG popl20-prod-cons.wvr.c [2022-12-06 00:22:10,591 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-12-06 00:22:10,591 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-12-06 00:22:10,592 INFO L515 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2022-12-06 00:22:10,680 INFO L144 ThreadInstanceAdder]: Constructed 3 joinOtherThreadTransitions. [2022-12-06 00:22:10,721 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 143 places, 144 transitions, 312 flow [2022-12-06 00:22:10,810 INFO L130 PetriNetUnfolder]: 11/141 cut-off events. [2022-12-06 00:22:10,810 INFO L131 PetriNetUnfolder]: For 3/3 co-relation queries the response was YES. [2022-12-06 00:22:10,815 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 00:22:10,816 INFO L82 GeneralOperation]: Start removeDead. Operand has 143 places, 144 transitions, 312 flow [2022-12-06 00:22:10,826 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 130 places, 131 transitions, 280 flow [2022-12-06 00:22:10,827 INFO L195 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-12-06 00:22:10,851 INFO L167 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 130 places, 131 transitions, 280 flow [2022-12-06 00:22:10,854 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 130 places, 131 transitions, 280 flow [2022-12-06 00:22:10,895 INFO L130 PetriNetUnfolder]: 11/131 cut-off events. [2022-12-06 00:22:10,895 INFO L131 PetriNetUnfolder]: For 3/3 co-relation queries the response was YES. [2022-12-06 00:22:10,896 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 00:22:10,898 INFO L184 LiptonReduction]: Starting Lipton reduction on Petri net that has 130 places, 131 transitions, 280 flow [2022-12-06 00:22:10,898 INFO L188 LiptonReduction]: Number of co-enabled transitions 1082 [2022-12-06 00:22:15,459 INFO L203 LiptonReduction]: Total number of compositions: 105 [2022-12-06 00:22:15,470 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-12-06 00:22:15,475 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;@4d9a5c13, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, Conditionality=CONDITIONAL_DISJUNCTIVE, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2022-12-06 00:22:15,475 INFO L358 AbstractCegarLoop]: Starting to check reachability of 4 error locations. [2022-12-06 00:22:15,479 INFO L130 PetriNetUnfolder]: 3/24 cut-off events. [2022-12-06 00:22:15,479 INFO L131 PetriNetUnfolder]: For 3/3 co-relation queries the response was YES. [2022-12-06 00:22:15,479 INFO L205 CegarLoopForPetriNet]: Found error trace [2022-12-06 00:22:15,480 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 00:22:15,480 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 00:22:15,484 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-12-06 00:22:15,484 INFO L85 PathProgramCache]: Analyzing trace with hash -929749668, now seen corresponding path program 1 times [2022-12-06 00:22:15,490 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-12-06 00:22:15,490 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1523372651] [2022-12-06 00:22:15,490 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 00:22:15,491 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-12-06 00:22:15,588 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 00:22:15,819 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 00:22:15,819 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-12-06 00:22:15,819 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1523372651] [2022-12-06 00:22:15,820 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1523372651] provided 1 perfect and 0 imperfect interpolant sequences [2022-12-06 00:22:15,820 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-12-06 00:22:15,820 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-12-06 00:22:15,821 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [986609894] [2022-12-06 00:22:15,821 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-12-06 00:22:15,827 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-12-06 00:22:15,827 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-12-06 00:22:15,843 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-12-06 00:22:15,843 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-12-06 00:22:15,844 INFO L490 CegarLoopForPetriNet]: Number of universal loopers: 2 out of 25 [2022-12-06 00:22:15,846 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 00:22:15,846 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-12-06 00:22:15,846 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 2 of 25 [2022-12-06 00:22:15,847 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-12-06 00:22:15,950 INFO L130 PetriNetUnfolder]: 238/394 cut-off events. [2022-12-06 00:22:15,950 INFO L131 PetriNetUnfolder]: For 37/37 co-relation queries the response was YES. [2022-12-06 00:22:15,951 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 00:22:15,954 INFO L137 encePairwiseOnDemand]: 20/25 looper letters, 44 selfloop transitions, 5 changer transitions 0/51 dead transitions. [2022-12-06 00:22:15,954 INFO L142 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 36 places, 51 transitions, 230 flow [2022-12-06 00:22:15,955 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-12-06 00:22:15,957 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2022-12-06 00:22:15,961 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 61 transitions. [2022-12-06 00:22:15,963 INFO L535 CegarLoopForPetriNet]: DFA transition density 0.488 [2022-12-06 00:22:15,964 INFO L175 Difference]: Start difference. First operand has 32 places, 25 transitions, 68 flow. Second operand 5 states and 61 transitions. [2022-12-06 00:22:15,964 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 36 places, 51 transitions, 230 flow [2022-12-06 00:22:15,966 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 00:22:15,968 INFO L231 Difference]: Finished difference. Result has 32 places, 28 transitions, 84 flow [2022-12-06 00:22:15,969 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 00:22:15,971 INFO L294 CegarLoopForPetriNet]: 32 programPoint places, 0 predicate places. [2022-12-06 00:22:15,971 WARN L163 eatedLiptonReduction]: Counterexample is not a run of mAbstraction. Replaying acceptance of the word... [2022-12-06 00:22:15,972 INFO L89 Accepts]: Start accepts. Operand has 32 places, 28 transitions, 84 flow [2022-12-06 00:22:15,974 INFO L95 Accepts]: Finished accepts. [2022-12-06 00:22:15,974 INFO L195 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-12-06 00:22:15,974 INFO L167 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 32 places, 28 transitions, 84 flow [2022-12-06 00:22:15,976 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 32 places, 28 transitions, 84 flow [2022-12-06 00:22:15,979 INFO L130 PetriNetUnfolder]: 5/31 cut-off events. [2022-12-06 00:22:15,979 INFO L131 PetriNetUnfolder]: For 3/3 co-relation queries the response was YES. [2022-12-06 00:22:15,979 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 00:22:15,979 INFO L184 LiptonReduction]: Starting Lipton reduction on Petri net that has 32 places, 28 transitions, 84 flow [2022-12-06 00:22:15,979 INFO L188 LiptonReduction]: Number of co-enabled transitions 186 [2022-12-06 00:22:15,990 INFO L203 LiptonReduction]: Total number of compositions: 0 [2022-12-06 00:22:15,991 INFO L143 eatedLiptonReduction]: Time needed for LBE in milliseconds: 20 [2022-12-06 00:22:15,991 INFO L495 AbstractCegarLoop]: Abstraction has has 32 places, 28 transitions, 84 flow [2022-12-06 00:22:15,991 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 00:22:15,991 INFO L205 CegarLoopForPetriNet]: Found error trace [2022-12-06 00:22:15,992 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 00:22:15,992 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-12-06 00:22:15,992 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 00:22:15,992 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-12-06 00:22:15,992 INFO L85 PathProgramCache]: Analyzing trace with hash -1958544500, now seen corresponding path program 2 times [2022-12-06 00:22:15,992 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-12-06 00:22:15,993 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1307172673] [2022-12-06 00:22:15,993 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 00:22:15,993 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-12-06 00:22:16,024 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 00:22:16,190 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 00:22:16,190 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-12-06 00:22:16,191 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1307172673] [2022-12-06 00:22:16,191 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1307172673] provided 1 perfect and 0 imperfect interpolant sequences [2022-12-06 00:22:16,191 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-12-06 00:22:16,191 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-12-06 00:22:16,191 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1174815832] [2022-12-06 00:22:16,191 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-12-06 00:22:16,192 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-12-06 00:22:16,192 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-12-06 00:22:16,192 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-12-06 00:22:16,192 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2022-12-06 00:22:16,192 INFO L490 CegarLoopForPetriNet]: Number of universal loopers: 0 out of 25 [2022-12-06 00:22:16,193 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 00:22:16,193 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-12-06 00:22:16,193 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 0 of 25 [2022-12-06 00:22:16,193 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-12-06 00:22:16,406 INFO L130 PetriNetUnfolder]: 474/756 cut-off events. [2022-12-06 00:22:16,406 INFO L131 PetriNetUnfolder]: For 199/199 co-relation queries the response was YES. [2022-12-06 00:22:16,409 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 00:22:16,413 INFO L137 encePairwiseOnDemand]: 18/25 looper letters, 59 selfloop transitions, 6 changer transitions 4/69 dead transitions. [2022-12-06 00:22:16,414 INFO L142 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 38 places, 69 transitions, 318 flow [2022-12-06 00:22:16,414 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-12-06 00:22:16,414 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2022-12-06 00:22:16,415 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 69 transitions. [2022-12-06 00:22:16,416 INFO L535 CegarLoopForPetriNet]: DFA transition density 0.3942857142857143 [2022-12-06 00:22:16,417 INFO L175 Difference]: Start difference. First operand has 32 places, 28 transitions, 84 flow. Second operand 7 states and 69 transitions. [2022-12-06 00:22:16,417 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 38 places, 69 transitions, 318 flow [2022-12-06 00:22:16,419 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 00:22:16,420 INFO L231 Difference]: Finished difference. Result has 39 places, 27 transitions, 98 flow [2022-12-06 00:22:16,420 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 00:22:16,421 INFO L294 CegarLoopForPetriNet]: 32 programPoint places, 7 predicate places. [2022-12-06 00:22:16,421 WARN L163 eatedLiptonReduction]: Counterexample is not a run of mAbstraction. Replaying acceptance of the word... [2022-12-06 00:22:16,421 INFO L89 Accepts]: Start accepts. Operand has 39 places, 27 transitions, 98 flow [2022-12-06 00:22:16,423 INFO L95 Accepts]: Finished accepts. [2022-12-06 00:22:16,423 INFO L195 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-12-06 00:22:16,424 INFO L167 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 39 places, 27 transitions, 98 flow [2022-12-06 00:22:16,424 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 39 places, 27 transitions, 98 flow [2022-12-06 00:22:16,428 INFO L130 PetriNetUnfolder]: 4/32 cut-off events. [2022-12-06 00:22:16,428 INFO L131 PetriNetUnfolder]: For 16/16 co-relation queries the response was YES. [2022-12-06 00:22:16,429 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 00:22:16,430 INFO L184 LiptonReduction]: Starting Lipton reduction on Petri net that has 39 places, 27 transitions, 98 flow [2022-12-06 00:22:16,430 INFO L188 LiptonReduction]: Number of co-enabled transitions 176 [2022-12-06 00:22:16,440 INFO L203 LiptonReduction]: Total number of compositions: 0 [2022-12-06 00:22:16,441 INFO L143 eatedLiptonReduction]: Time needed for LBE in milliseconds: 20 [2022-12-06 00:22:16,441 INFO L495 AbstractCegarLoop]: Abstraction has has 39 places, 27 transitions, 98 flow [2022-12-06 00:22:16,441 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 00:22:16,442 INFO L205 CegarLoopForPetriNet]: Found error trace [2022-12-06 00:22:16,442 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 00:22:16,442 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-12-06 00:22:16,442 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 00:22:16,443 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-12-06 00:22:16,443 INFO L85 PathProgramCache]: Analyzing trace with hash 2099602765, now seen corresponding path program 1 times [2022-12-06 00:22:16,443 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-12-06 00:22:16,443 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1645766037] [2022-12-06 00:22:16,444 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 00:22:16,444 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-12-06 00:22:16,503 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 00:22:16,592 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 00:22:16,593 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-12-06 00:22:16,593 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1645766037] [2022-12-06 00:22:16,595 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1645766037] provided 1 perfect and 0 imperfect interpolant sequences [2022-12-06 00:22:16,595 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-12-06 00:22:16,595 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-12-06 00:22:16,595 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [873338689] [2022-12-06 00:22:16,596 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-12-06 00:22:16,596 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-12-06 00:22:16,596 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-12-06 00:22:16,596 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-12-06 00:22:16,597 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-12-06 00:22:16,597 INFO L490 CegarLoopForPetriNet]: Number of universal loopers: 3 out of 25 [2022-12-06 00:22:16,597 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 00:22:16,598 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-12-06 00:22:16,598 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 3 of 25 [2022-12-06 00:22:16,598 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-12-06 00:22:16,657 INFO L130 PetriNetUnfolder]: 205/384 cut-off events. [2022-12-06 00:22:16,657 INFO L131 PetriNetUnfolder]: For 480/480 co-relation queries the response was YES. [2022-12-06 00:22:16,658 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 00:22:16,659 INFO L137 encePairwiseOnDemand]: 22/25 looper letters, 28 selfloop transitions, 2 changer transitions 3/38 dead transitions. [2022-12-06 00:22:16,659 INFO L142 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 41 places, 38 transitions, 196 flow [2022-12-06 00:22:16,660 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-12-06 00:22:16,660 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2022-12-06 00:22:16,660 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 43 transitions. [2022-12-06 00:22:16,661 INFO L535 CegarLoopForPetriNet]: DFA transition density 0.5733333333333334 [2022-12-06 00:22:16,661 INFO L175 Difference]: Start difference. First operand has 39 places, 27 transitions, 98 flow. Second operand 3 states and 43 transitions. [2022-12-06 00:22:16,661 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 41 places, 38 transitions, 196 flow [2022-12-06 00:22:16,663 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 00:22:16,664 INFO L231 Difference]: Finished difference. Result has 34 places, 28 transitions, 92 flow [2022-12-06 00:22:16,664 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 00:22:16,665 INFO L294 CegarLoopForPetriNet]: 32 programPoint places, 2 predicate places. [2022-12-06 00:22:16,665 WARN L163 eatedLiptonReduction]: Counterexample is not a run of mAbstraction. Replaying acceptance of the word... [2022-12-06 00:22:16,665 INFO L89 Accepts]: Start accepts. Operand has 34 places, 28 transitions, 92 flow [2022-12-06 00:22:16,667 INFO L95 Accepts]: Finished accepts. [2022-12-06 00:22:16,667 INFO L195 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-12-06 00:22:16,667 INFO L167 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 34 places, 28 transitions, 92 flow [2022-12-06 00:22:16,668 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 34 places, 28 transitions, 92 flow [2022-12-06 00:22:16,671 INFO L130 PetriNetUnfolder]: 7/40 cut-off events. [2022-12-06 00:22:16,671 INFO L131 PetriNetUnfolder]: For 4/4 co-relation queries the response was YES. [2022-12-06 00:22:16,671 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 00:22:16,671 INFO L184 LiptonReduction]: Starting Lipton reduction on Petri net that has 34 places, 28 transitions, 92 flow [2022-12-06 00:22:16,671 INFO L188 LiptonReduction]: Number of co-enabled transitions 172 [2022-12-06 00:22:16,673 INFO L203 LiptonReduction]: Total number of compositions: 0 [2022-12-06 00:22:16,674 INFO L143 eatedLiptonReduction]: Time needed for LBE in milliseconds: 9 [2022-12-06 00:22:16,676 INFO L495 AbstractCegarLoop]: Abstraction has has 34 places, 28 transitions, 92 flow [2022-12-06 00:22:16,677 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 00:22:16,677 INFO L205 CegarLoopForPetriNet]: Found error trace [2022-12-06 00:22:16,677 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 00:22:16,677 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-12-06 00:22:16,677 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 00:22:16,677 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-12-06 00:22:16,677 INFO L85 PathProgramCache]: Analyzing trace with hash 1464739040, now seen corresponding path program 1 times [2022-12-06 00:22:16,677 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-12-06 00:22:16,678 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1818506479] [2022-12-06 00:22:16,678 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 00:22:16,678 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-12-06 00:22:16,689 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 00:22:16,748 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 00:22:16,748 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-12-06 00:22:16,748 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1818506479] [2022-12-06 00:22:16,748 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1818506479] provided 1 perfect and 0 imperfect interpolant sequences [2022-12-06 00:22:16,748 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-12-06 00:22:16,748 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-12-06 00:22:16,748 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2018519666] [2022-12-06 00:22:16,749 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-12-06 00:22:16,749 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-12-06 00:22:16,749 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-12-06 00:22:16,749 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-12-06 00:22:16,749 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-12-06 00:22:16,749 INFO L490 CegarLoopForPetriNet]: Number of universal loopers: 3 out of 25 [2022-12-06 00:22:16,750 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 00:22:16,750 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-12-06 00:22:16,750 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 3 of 25 [2022-12-06 00:22:16,750 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-12-06 00:22:16,829 INFO L130 PetriNetUnfolder]: 234/450 cut-off events. [2022-12-06 00:22:16,829 INFO L131 PetriNetUnfolder]: For 293/293 co-relation queries the response was YES. [2022-12-06 00:22:16,830 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 00:22:16,832 INFO L137 encePairwiseOnDemand]: 21/25 looper letters, 22 selfloop transitions, 2 changer transitions 12/41 dead transitions. [2022-12-06 00:22:16,832 INFO L142 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 37 places, 41 transitions, 197 flow [2022-12-06 00:22:16,832 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-12-06 00:22:16,832 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2022-12-06 00:22:16,832 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 48 transitions. [2022-12-06 00:22:16,833 INFO L535 CegarLoopForPetriNet]: DFA transition density 0.48 [2022-12-06 00:22:16,833 INFO L175 Difference]: Start difference. First operand has 34 places, 28 transitions, 92 flow. Second operand 4 states and 48 transitions. [2022-12-06 00:22:16,833 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 37 places, 41 transitions, 197 flow [2022-12-06 00:22:16,834 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 00:22:16,835 INFO L231 Difference]: Finished difference. Result has 38 places, 29 transitions, 104 flow [2022-12-06 00:22:16,835 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 00:22:16,836 INFO L294 CegarLoopForPetriNet]: 32 programPoint places, 6 predicate places. [2022-12-06 00:22:16,836 WARN L163 eatedLiptonReduction]: Counterexample is not a run of mAbstraction. Replaying acceptance of the word... [2022-12-06 00:22:16,836 INFO L89 Accepts]: Start accepts. Operand has 38 places, 29 transitions, 104 flow [2022-12-06 00:22:16,837 INFO L95 Accepts]: Finished accepts. [2022-12-06 00:22:16,837 INFO L195 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-12-06 00:22:16,837 INFO L167 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 38 places, 29 transitions, 104 flow [2022-12-06 00:22:16,837 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 37 places, 29 transitions, 104 flow [2022-12-06 00:22:16,842 INFO L130 PetriNetUnfolder]: 7/41 cut-off events. [2022-12-06 00:22:16,842 INFO L131 PetriNetUnfolder]: For 5/5 co-relation queries the response was YES. [2022-12-06 00:22:16,842 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 00:22:16,843 INFO L184 LiptonReduction]: Starting Lipton reduction on Petri net that has 37 places, 29 transitions, 104 flow [2022-12-06 00:22:16,843 INFO L188 LiptonReduction]: Number of co-enabled transitions 172 [2022-12-06 00:22:17,967 INFO L203 LiptonReduction]: Total number of compositions: 1 [2022-12-06 00:22:17,974 INFO L143 eatedLiptonReduction]: Time needed for LBE in milliseconds: 1138 [2022-12-06 00:22:17,974 INFO L495 AbstractCegarLoop]: Abstraction has has 36 places, 28 transitions, 100 flow [2022-12-06 00:22:17,974 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 00:22:17,974 INFO L205 CegarLoopForPetriNet]: Found error trace [2022-12-06 00:22:17,974 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 00:22:17,975 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-12-06 00:22:17,975 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 00:22:17,975 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-12-06 00:22:17,975 INFO L85 PathProgramCache]: Analyzing trace with hash 981726719, now seen corresponding path program 1 times [2022-12-06 00:22:17,975 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-12-06 00:22:17,975 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [551690697] [2022-12-06 00:22:17,976 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 00:22:17,976 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-12-06 00:22:18,035 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 00:22:18,914 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 00:22:18,914 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-12-06 00:22:18,914 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [551690697] [2022-12-06 00:22:18,914 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [551690697] provided 0 perfect and 1 imperfect interpolant sequences [2022-12-06 00:22:18,915 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [637270037] [2022-12-06 00:22:18,915 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 00:22:18,915 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-12-06 00:22:18,915 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-12-06 00:22:18,917 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 00:22:18,983 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 00:22:19,041 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 00:22:19,059 INFO L263 TraceCheckSpWp]: Trace formula consists of 235 conjuncts, 46 conjunts are in the unsatisfiable core [2022-12-06 00:22:19,064 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-12-06 00:22:19,143 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 00:22:19,209 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 00:22:19,378 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 00:22:19,478 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-12-06 00:22:19,479 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 00:22:19,535 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 00:22:19,639 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 00:22:19,640 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-12-06 00:22:19,749 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 00:22:20,111 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 00:22:20,112 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [637270037] provided 0 perfect and 2 imperfect interpolant sequences [2022-12-06 00:22:20,112 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-12-06 00:22:20,112 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 12, 12] total 30 [2022-12-06 00:22:20,112 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [632679740] [2022-12-06 00:22:20,112 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-12-06 00:22:20,113 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 31 states [2022-12-06 00:22:20,114 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-12-06 00:22:20,114 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 31 interpolants. [2022-12-06 00:22:20,115 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=120, Invalid=752, Unknown=2, NotChecked=56, Total=930 [2022-12-06 00:22:20,115 INFO L490 CegarLoopForPetriNet]: Number of universal loopers: 0 out of 25 [2022-12-06 00:22:20,115 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 00:22:20,115 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-12-06 00:22:20,115 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 0 of 25 [2022-12-06 00:22:20,115 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-12-06 00:22:23,706 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 00:22:25,128 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 00:22:28,283 INFO L130 PetriNetUnfolder]: 2199/3684 cut-off events. [2022-12-06 00:22:28,284 INFO L131 PetriNetUnfolder]: For 2109/2109 co-relation queries the response was YES. [2022-12-06 00:22:28,289 INFO L83 FinitePrefix]: Finished finitePrefix Result has 9768 conditions, 3684 events. 2199/3684 cut-off events. For 2109/2109 co-relation queries the response was YES. Maximal size of possible extension queue 184. Compared 20886 event pairs, 72 based on Foata normal form. 49/3432 useless extension candidates. Maximal degree in co-relation 9754. Up to 749 conditions per place. [2022-12-06 00:22:28,300 INFO L137 encePairwiseOnDemand]: 5/25 looper letters, 320 selfloop transitions, 188 changer transitions 87/595 dead transitions. [2022-12-06 00:22:28,300 INFO L142 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 116 places, 595 transitions, 3003 flow [2022-12-06 00:22:28,300 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 81 states. [2022-12-06 00:22:28,300 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 81 states. [2022-12-06 00:22:28,305 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 81 states to 81 states and 582 transitions. [2022-12-06 00:22:28,305 INFO L535 CegarLoopForPetriNet]: DFA transition density 0.2874074074074074 [2022-12-06 00:22:28,305 INFO L175 Difference]: Start difference. First operand has 36 places, 28 transitions, 100 flow. Second operand 81 states and 582 transitions. [2022-12-06 00:22:28,306 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 116 places, 595 transitions, 3003 flow [2022-12-06 00:22:28,312 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 00:22:28,318 INFO L231 Difference]: Finished difference. Result has 145 places, 256 transitions, 1606 flow [2022-12-06 00:22:28,318 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=1606, PETRI_PLACES=145, PETRI_TRANSITIONS=256} [2022-12-06 00:22:28,320 INFO L294 CegarLoopForPetriNet]: 32 programPoint places, 113 predicate places. [2022-12-06 00:22:28,320 WARN L163 eatedLiptonReduction]: Counterexample is not a run of mAbstraction. Replaying acceptance of the word... [2022-12-06 00:22:28,320 INFO L89 Accepts]: Start accepts. Operand has 145 places, 256 transitions, 1606 flow [2022-12-06 00:22:28,324 INFO L95 Accepts]: Finished accepts. [2022-12-06 00:22:28,324 INFO L195 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-12-06 00:22:28,326 INFO L167 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 145 places, 256 transitions, 1606 flow [2022-12-06 00:22:28,328 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 137 places, 256 transitions, 1606 flow [2022-12-06 00:22:28,468 INFO L130 PetriNetUnfolder]: 657/1532 cut-off events. [2022-12-06 00:22:28,468 INFO L131 PetriNetUnfolder]: For 16234/16492 co-relation queries the response was YES. [2022-12-06 00:22:28,476 INFO L83 FinitePrefix]: Finished finitePrefix Result has 6848 conditions, 1532 events. 657/1532 cut-off events. For 16234/16492 co-relation queries the response was YES. Maximal size of possible extension queue 116. Compared 10393 event pairs, 65 based on Foata normal form. 12/1466 useless extension candidates. Maximal degree in co-relation 6655. Up to 398 conditions per place. [2022-12-06 00:22:28,486 INFO L184 LiptonReduction]: Starting Lipton reduction on Petri net that has 137 places, 256 transitions, 1606 flow [2022-12-06 00:22:28,487 INFO L188 LiptonReduction]: Number of co-enabled transitions 1112 [2022-12-06 00:22:28,489 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 00:22:28,596 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 00:22:28,690 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 00:22:28,782 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 00:22:28,877 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 00:22:28,987 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 00:22:31,458 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 00:22:31,485 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 00:22:31,598 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 00:22:31,631 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 00:22:31,646 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 00:22:31,731 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 00:22:31,844 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 00:22:31,959 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 00:22:32,053 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 00:22:32,150 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 00:22:32,327 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 00:22:35,588 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 00:22:35,701 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 00:22:35,809 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 00:22:35,827 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 00:22:35,977 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 00:22:36,133 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 00:22:36,409 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 00:22:36,526 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 00:22:36,640 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 00:22:36,745 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 00:22:36,861 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 00:22:37,153 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 00:22:37,329 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 00:22:37,377 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 00:22:37,770 INFO L203 LiptonReduction]: Total number of compositions: 24 [2022-12-06 00:22:37,776 INFO L143 eatedLiptonReduction]: Time needed for LBE in milliseconds: 9456 [2022-12-06 00:22:37,776 INFO L495 AbstractCegarLoop]: Abstraction has has 119 places, 238 transitions, 1647 flow [2022-12-06 00:22:37,776 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 00:22:37,776 INFO L205 CegarLoopForPetriNet]: Found error trace [2022-12-06 00:22:37,776 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 00:22:37,782 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-12-06 00:22:37,981 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 00:22:37,981 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 00:22:37,982 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-12-06 00:22:37,982 INFO L85 PathProgramCache]: Analyzing trace with hash -226277246, now seen corresponding path program 1 times [2022-12-06 00:22:37,982 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-12-06 00:22:37,982 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [184974858] [2022-12-06 00:22:37,982 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 00:22:37,982 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-12-06 00:22:38,053 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 00:22:38,920 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 00:22:38,921 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-12-06 00:22:38,921 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [184974858] [2022-12-06 00:22:38,921 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [184974858] provided 0 perfect and 1 imperfect interpolant sequences [2022-12-06 00:22:38,921 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [19641413] [2022-12-06 00:22:38,921 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 00:22:38,921 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-12-06 00:22:38,921 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-12-06 00:22:38,927 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 00:22:38,932 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 00:22:38,997 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 00:22:38,999 INFO L263 TraceCheckSpWp]: Trace formula consists of 232 conjuncts, 26 conjunts are in the unsatisfiable core [2022-12-06 00:22:39,001 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-12-06 00:22:39,107 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 00:22:39,184 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 00:22:39,184 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-12-06 00:22:39,277 INFO L321 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-12-06 00:22:39,278 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 00:22:39,371 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 00:22:39,371 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [19641413] provided 0 perfect and 2 imperfect interpolant sequences [2022-12-06 00:22:39,371 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-12-06 00:22:39,371 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 9, 9] total 25 [2022-12-06 00:22:39,371 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1506423863] [2022-12-06 00:22:39,371 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-12-06 00:22:39,372 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 26 states [2022-12-06 00:22:39,372 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-12-06 00:22:39,372 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 26 interpolants. [2022-12-06 00:22:39,372 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=91, Invalid=559, Unknown=0, NotChecked=0, Total=650 [2022-12-06 00:22:39,372 INFO L490 CegarLoopForPetriNet]: Number of universal loopers: 0 out of 60 [2022-12-06 00:22:39,373 INFO L100 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 119 places, 238 transitions, 1647 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 00:22:39,373 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-12-06 00:22:39,373 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 0 of 60 [2022-12-06 00:22:39,373 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-12-06 00:22:41,906 INFO L130 PetriNetUnfolder]: 3186/5466 cut-off events. [2022-12-06 00:22:41,906 INFO L131 PetriNetUnfolder]: For 56550/56550 co-relation queries the response was YES. [2022-12-06 00:22:41,929 INFO L83 FinitePrefix]: Finished finitePrefix Result has 29267 conditions, 5466 events. 3186/5466 cut-off events. For 56550/56550 co-relation queries the response was YES. Maximal size of possible extension queue 294. Compared 35245 event pairs, 183 based on Foata normal form. 44/5503 useless extension candidates. Maximal degree in co-relation 28277. Up to 1481 conditions per place. [2022-12-06 00:22:41,959 INFO L137 encePairwiseOnDemand]: 12/60 looper letters, 351 selfloop transitions, 302 changer transitions 110/763 dead transitions. [2022-12-06 00:22:41,959 INFO L142 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 166 places, 763 transitions, 7022 flow [2022-12-06 00:22:41,959 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 48 states. [2022-12-06 00:22:41,960 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 48 states. [2022-12-06 00:22:41,965 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 48 states to 48 states and 389 transitions. [2022-12-06 00:22:41,965 INFO L535 CegarLoopForPetriNet]: DFA transition density 0.13506944444444444 [2022-12-06 00:22:41,965 INFO L175 Difference]: Start difference. First operand has 119 places, 238 transitions, 1647 flow. Second operand 48 states and 389 transitions. [2022-12-06 00:22:41,965 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 166 places, 763 transitions, 7022 flow [2022-12-06 00:22:42,130 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 156 places, 763 transitions, 6542 flow, removed 177 selfloop flow, removed 10 redundant places. [2022-12-06 00:22:42,137 INFO L231 Difference]: Finished difference. Result has 181 places, 403 transitions, 3722 flow [2022-12-06 00:22:42,137 INFO L276 CegarLoopForPetriNet]: {PETRI_ALPHABET=60, PETRI_DIFFERENCE_MINUEND_FLOW=1478, 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=3722, PETRI_PLACES=181, PETRI_TRANSITIONS=403} [2022-12-06 00:22:42,138 INFO L294 CegarLoopForPetriNet]: 32 programPoint places, 149 predicate places. [2022-12-06 00:22:42,138 WARN L163 eatedLiptonReduction]: Counterexample is not a run of mAbstraction. Replaying acceptance of the word... [2022-12-06 00:22:42,138 INFO L89 Accepts]: Start accepts. Operand has 181 places, 403 transitions, 3722 flow [2022-12-06 00:22:42,140 INFO L95 Accepts]: Finished accepts. [2022-12-06 00:22:42,140 INFO L195 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-12-06 00:22:42,140 INFO L167 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 181 places, 403 transitions, 3722 flow [2022-12-06 00:22:42,142 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 174 places, 403 transitions, 3722 flow [2022-12-06 00:22:42,357 INFO L130 PetriNetUnfolder]: 872/2029 cut-off events. [2022-12-06 00:22:42,357 INFO L131 PetriNetUnfolder]: For 26922/27340 co-relation queries the response was YES. [2022-12-06 00:22:42,366 INFO L83 FinitePrefix]: Finished finitePrefix Result has 11020 conditions, 2029 events. 872/2029 cut-off events. For 26922/27340 co-relation queries the response was YES. Maximal size of possible extension queue 191. Compared 15346 event pairs, 92 based on Foata normal form. 17/1964 useless extension candidates. Maximal degree in co-relation 10906. Up to 498 conditions per place. [2022-12-06 00:22:42,381 INFO L184 LiptonReduction]: Starting Lipton reduction on Petri net that has 174 places, 403 transitions, 3722 flow [2022-12-06 00:22:42,381 INFO L188 LiptonReduction]: Number of co-enabled transitions 1808 [2022-12-06 00:22:42,383 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 00:22:42,485 INFO L203 LiptonReduction]: Total number of compositions: 1 [2022-12-06 00:22:42,486 INFO L143 eatedLiptonReduction]: Time needed for LBE in milliseconds: 348 [2022-12-06 00:22:42,486 INFO L495 AbstractCegarLoop]: Abstraction has has 173 places, 402 transitions, 3716 flow [2022-12-06 00:22:42,487 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 00:22:42,487 INFO L205 CegarLoopForPetriNet]: Found error trace [2022-12-06 00:22:42,487 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 00:22:42,492 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-12-06 00:22:42,694 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 00:22:42,695 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 00:22:42,695 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-12-06 00:22:42,695 INFO L85 PathProgramCache]: Analyzing trace with hash -1594200903, now seen corresponding path program 1 times [2022-12-06 00:22:42,695 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-12-06 00:22:42,695 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1860650555] [2022-12-06 00:22:42,696 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 00:22:42,696 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-12-06 00:22:42,717 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 00:22:42,780 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 00:22:42,781 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-12-06 00:22:42,781 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1860650555] [2022-12-06 00:22:42,781 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1860650555] provided 1 perfect and 0 imperfect interpolant sequences [2022-12-06 00:22:42,781 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-12-06 00:22:42,781 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-12-06 00:22:42,781 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2021689287] [2022-12-06 00:22:42,781 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-12-06 00:22:42,781 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-12-06 00:22:42,781 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-12-06 00:22:42,782 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-12-06 00:22:42,782 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-12-06 00:22:42,782 INFO L490 CegarLoopForPetriNet]: Number of universal loopers: 3 out of 60 [2022-12-06 00:22:42,782 INFO L100 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 173 places, 402 transitions, 3716 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 00:22:42,783 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-12-06 00:22:42,783 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 3 of 60 [2022-12-06 00:22:42,783 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-12-06 00:22:44,118 INFO L130 PetriNetUnfolder]: 3848/7324 cut-off events. [2022-12-06 00:22:44,119 INFO L131 PetriNetUnfolder]: For 107484/108203 co-relation queries the response was YES. [2022-12-06 00:22:44,145 INFO L83 FinitePrefix]: Finished finitePrefix Result has 44885 conditions, 7324 events. 3848/7324 cut-off events. For 107484/108203 co-relation queries the response was YES. Maximal size of possible extension queue 507. Compared 58520 event pairs, 654 based on Foata normal form. 464/7586 useless extension candidates. Maximal degree in co-relation 44536. Up to 2631 conditions per place. [2022-12-06 00:22:44,180 INFO L137 encePairwiseOnDemand]: 44/60 looper letters, 439 selfloop transitions, 54 changer transitions 54/646 dead transitions. [2022-12-06 00:22:44,180 INFO L142 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 176 places, 646 transitions, 6981 flow [2022-12-06 00:22:44,181 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-12-06 00:22:44,181 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2022-12-06 00:22:44,181 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 126 transitions. [2022-12-06 00:22:44,181 INFO L535 CegarLoopForPetriNet]: DFA transition density 0.525 [2022-12-06 00:22:44,181 INFO L175 Difference]: Start difference. First operand has 173 places, 402 transitions, 3716 flow. Second operand 4 states and 126 transitions. [2022-12-06 00:22:44,182 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 176 places, 646 transitions, 6981 flow [2022-12-06 00:22:44,476 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 166 places, 646 transitions, 6392 flow, removed 111 selfloop flow, removed 10 redundant places. [2022-12-06 00:22:44,483 INFO L231 Difference]: Finished difference. Result has 168 places, 407 transitions, 3642 flow [2022-12-06 00:22:44,483 INFO L276 CegarLoopForPetriNet]: {PETRI_ALPHABET=60, PETRI_DIFFERENCE_MINUEND_FLOW=3267, 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=3642, PETRI_PLACES=168, PETRI_TRANSITIONS=407} [2022-12-06 00:22:44,484 INFO L294 CegarLoopForPetriNet]: 32 programPoint places, 136 predicate places. [2022-12-06 00:22:44,484 WARN L163 eatedLiptonReduction]: Counterexample is not a run of mAbstraction. Replaying acceptance of the word... [2022-12-06 00:22:44,484 INFO L89 Accepts]: Start accepts. Operand has 168 places, 407 transitions, 3642 flow [2022-12-06 00:22:44,486 INFO L95 Accepts]: Finished accepts. [2022-12-06 00:22:44,486 INFO L195 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-12-06 00:22:44,486 INFO L167 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 168 places, 407 transitions, 3642 flow [2022-12-06 00:22:44,488 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 168 places, 407 transitions, 3642 flow [2022-12-06 00:22:44,852 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)), Black: 701#(and (<= |thread1Thread1of1ForFork1_~w~0#1| ~W~0) (= ~back~0 ~front~0) (= ~v_assert~0 1) (<= ~d~0 ~W~0) (<= ~d~0 0)), 56#$Ultimate##0true, 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) (< (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~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))) (<= 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: 149#(= |thread2Thread1of1ForFork2_~cond~1#1| 1), 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: 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 00:22:44,853 INFO L382 tUnfolder$Statistics]: this new event has 19 ancestors and is cut-off event [2022-12-06 00:22:44,853 INFO L385 tUnfolder$Statistics]: existing Event has 15 ancestors and is cut-off event [2022-12-06 00:22:44,853 INFO L385 tUnfolder$Statistics]: existing Event has 17 ancestors and is cut-off event [2022-12-06 00:22:44,853 INFO L385 tUnfolder$Statistics]: existing Event has 17 ancestors and is cut-off event [2022-12-06 00:22:44,886 INFO L130 PetriNetUnfolder]: 1417/3674 cut-off events. [2022-12-06 00:22:44,886 INFO L131 PetriNetUnfolder]: For 57439/58360 co-relation queries the response was YES. [2022-12-06 00:22:44,901 INFO L83 FinitePrefix]: Finished finitePrefix Result has 20579 conditions, 3674 events. 1417/3674 cut-off events. For 57439/58360 co-relation queries the response was YES. Maximal size of possible extension queue 380. Compared 34331 event pairs, 230 based on Foata normal form. 46/3559 useless extension candidates. Maximal degree in co-relation 20316. Up to 1002 conditions per place. [2022-12-06 00:22:44,927 INFO L184 LiptonReduction]: Starting Lipton reduction on Petri net that has 168 places, 407 transitions, 3642 flow [2022-12-06 00:22:44,928 INFO L188 LiptonReduction]: Number of co-enabled transitions 2098 [2022-12-06 00:22:44,932 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 00:22:44,978 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 00:22:45,130 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 00:22:45,250 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 00:22:45,327 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 00:22:45,414 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 00:22:45,547 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 00:22:45,781 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 00:22:45,992 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 00:22:46,225 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 00:22:46,437 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 00:22:46,480 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 00:22:46,540 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 00:22:46,608 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 00:22:46,726 INFO L203 LiptonReduction]: Total number of compositions: 6 [2022-12-06 00:22:46,727 INFO L143 eatedLiptonReduction]: Time needed for LBE in milliseconds: 2243 [2022-12-06 00:22:46,727 INFO L495 AbstractCegarLoop]: Abstraction has has 167 places, 406 transitions, 3785 flow [2022-12-06 00:22:46,727 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 00:22:46,727 INFO L205 CegarLoopForPetriNet]: Found error trace [2022-12-06 00:22:46,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] [2022-12-06 00:22:46,727 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2022-12-06 00:22:46,727 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 00:22:46,727 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-12-06 00:22:46,727 INFO L85 PathProgramCache]: Analyzing trace with hash 133219186, now seen corresponding path program 1 times [2022-12-06 00:22:46,727 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-12-06 00:22:46,728 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [436745004] [2022-12-06 00:22:46,728 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 00:22:46,728 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-12-06 00:22:46,761 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 00:22:47,308 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 00:22:47,309 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-12-06 00:22:47,309 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [436745004] [2022-12-06 00:22:47,309 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [436745004] provided 0 perfect and 1 imperfect interpolant sequences [2022-12-06 00:22:47,309 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [408216494] [2022-12-06 00:22:47,309 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 00:22:47,309 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-12-06 00:22:47,309 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-12-06 00:22:47,310 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 00:22:47,312 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 00:22:47,383 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 00:22:47,385 INFO L263 TraceCheckSpWp]: Trace formula consists of 246 conjuncts, 38 conjunts are in the unsatisfiable core [2022-12-06 00:22:47,387 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-12-06 00:22:47,489 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-12-06 00:22:47,489 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 00:22:47,569 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 00:22:47,635 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 00:22:47,635 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-12-06 00:22:47,775 INFO L321 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-12-06 00:22:47,775 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 00:22:47,785 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 00:22:47,863 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 00:22:47,863 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [408216494] provided 0 perfect and 2 imperfect interpolant sequences [2022-12-06 00:22:47,863 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-12-06 00:22:47,863 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10, 10] total 26 [2022-12-06 00:22:47,864 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [513248053] [2022-12-06 00:22:47,864 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-12-06 00:22:47,864 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 27 states [2022-12-06 00:22:47,864 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-12-06 00:22:47,864 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2022-12-06 00:22:47,865 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=103, Invalid=599, Unknown=0, NotChecked=0, Total=702 [2022-12-06 00:22:47,865 INFO L490 CegarLoopForPetriNet]: Number of universal loopers: 0 out of 63 [2022-12-06 00:22:47,865 INFO L100 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 167 places, 406 transitions, 3785 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 00:22:47,865 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-12-06 00:22:47,865 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 0 of 63 [2022-12-06 00:22:47,865 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-12-06 00:22:52,911 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 00:22:55,009 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 00:23:15,651 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 00:23:17,934 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 00:23:34,681 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 00:23:42,862 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 00:23:44,905 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 00:23:46,920 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 00:23:48,981 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.06s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2022-12-06 00:23:51,505 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 00:23:53,520 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 00:23:55,535 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 00:23:57,775 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 00:23:59,816 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 00:24:01,837 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 00:24:03,841 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 00:24:05,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 00:24:08,200 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 00:24:10,236 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 00:24:12,397 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 00:24:14,513 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 00:24:16,656 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 00:24:19,035 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 00:24:21,350 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 00:24:23,521 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 00:24:25,540 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 00:24:27,648 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 00:24:29,802 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 00:24:32,039 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 00:24:32,744 INFO L130 PetriNetUnfolder]: 12964/22392 cut-off events. [2022-12-06 00:24:32,745 INFO L131 PetriNetUnfolder]: For 330609/330609 co-relation queries the response was YES. [2022-12-06 00:24:32,854 INFO L83 FinitePrefix]: Finished finitePrefix Result has 141631 conditions, 22392 events. 12964/22392 cut-off events. For 330609/330609 co-relation queries the response was YES. Maximal size of possible extension queue 1145. Compared 182424 event pairs, 1292 based on Foata normal form. 132/22517 useless extension candidates. Maximal degree in co-relation 139611. Up to 6724 conditions per place. [2022-12-06 00:24:32,982 INFO L137 encePairwiseOnDemand]: 13/63 looper letters, 993 selfloop transitions, 809 changer transitions 274/2076 dead transitions. [2022-12-06 00:24:32,983 INFO L142 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 254 places, 2076 transitions, 23864 flow [2022-12-06 00:24:32,983 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 88 states. [2022-12-06 00:24:32,983 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 88 states. [2022-12-06 00:24:32,989 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 88 states to 88 states and 861 transitions. [2022-12-06 00:24:32,990 INFO L535 CegarLoopForPetriNet]: DFA transition density 0.1553030303030303 [2022-12-06 00:24:32,990 INFO L175 Difference]: Start difference. First operand has 167 places, 406 transitions, 3785 flow. Second operand 88 states and 861 transitions. [2022-12-06 00:24:32,990 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 254 places, 2076 transitions, 23864 flow [2022-12-06 00:24:34,307 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 251 places, 2076 transitions, 22102 flow, removed 540 selfloop flow, removed 3 redundant places. [2022-12-06 00:24:34,323 INFO L231 Difference]: Finished difference. Result has 296 places, 1048 transitions, 12431 flow [2022-12-06 00:24:34,324 INFO L276 CegarLoopForPetriNet]: {PETRI_ALPHABET=63, PETRI_DIFFERENCE_MINUEND_FLOW=3523, PETRI_DIFFERENCE_MINUEND_PLACES=164, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=406, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=225, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=147, PETRI_DIFFERENCE_SUBTRAHEND_STATES=88, PETRI_FLOW=12431, PETRI_PLACES=296, PETRI_TRANSITIONS=1048} [2022-12-06 00:24:34,324 INFO L294 CegarLoopForPetriNet]: 32 programPoint places, 264 predicate places. [2022-12-06 00:24:34,324 WARN L163 eatedLiptonReduction]: Counterexample is not a run of mAbstraction. Replaying acceptance of the word... [2022-12-06 00:24:34,325 INFO L89 Accepts]: Start accepts. Operand has 296 places, 1048 transitions, 12431 flow [2022-12-06 00:24:34,327 INFO L95 Accepts]: Finished accepts. [2022-12-06 00:24:34,327 INFO L195 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-12-06 00:24:34,328 INFO L167 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 296 places, 1048 transitions, 12431 flow [2022-12-06 00:24:34,333 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 294 places, 1048 transitions, 12431 flow [2022-12-06 00:24:35,708 INFO L130 PetriNetUnfolder]: 3111/7956 cut-off events. [2022-12-06 00:24:35,708 INFO L131 PetriNetUnfolder]: For 262321/264669 co-relation queries the response was YES. [2022-12-06 00:24:35,786 INFO L83 FinitePrefix]: Finished finitePrefix Result has 56131 conditions, 7956 events. 3111/7956 cut-off events. For 262321/264669 co-relation queries the response was YES. Maximal size of possible extension queue 817. Compared 85623 event pairs, 685 based on Foata normal form. 49/7495 useless extension candidates. Maximal degree in co-relation 55919. Up to 2467 conditions per place. [2022-12-06 00:24:35,857 INFO L184 LiptonReduction]: Starting Lipton reduction on Petri net that has 294 places, 1048 transitions, 12431 flow [2022-12-06 00:24:35,857 INFO L188 LiptonReduction]: Number of co-enabled transitions 6072 [2022-12-06 00:24:35,863 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 00:24:35,912 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 00:24:35,958 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 00:24:36,129 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 00:24:36,377 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 00:24:36,425 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 00:24:36,475 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 00:24:36,833 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 00:24:36,969 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [625] L55-->L55: Formula: (and (= |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_~v_assert~0_254 |v_thread1Thread1of1ForFork1_~cond~0#1_210|) (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_214|) (= (ite (= (select (select |v_#memory_int_303| v_~queue~0.base_156) (+ (* v_~back~0_211 4) v_~queue~0.offset_156)) 1) 1 0) |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_55|) (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_254, ~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_303|, ~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_254, 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_303|, ~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 00:24:37,066 WARN L322 ript$VariableManager]: TermVariable LBE234 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 00:24:37,067 WARN L322 ript$VariableManager]: TermVariable LBE241 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 00:24:37,067 WARN L322 ript$VariableManager]: TermVariable LBE35 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 00:24:37,067 WARN L322 ript$VariableManager]: TermVariable LBE23 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 00:24:37,347 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 00:24:37,481 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 00:24:37,550 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 00:24:37,596 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 00:24:37,817 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 00:24:37,915 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 00:24:37,969 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 00:24:37,988 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 00:24:38,076 INFO L203 LiptonReduction]: Total number of compositions: 10 [2022-12-06 00:24:38,076 INFO L143 eatedLiptonReduction]: Time needed for LBE in milliseconds: 3752 [2022-12-06 00:24:38,076 INFO L495 AbstractCegarLoop]: Abstraction has has 291 places, 1045 transitions, 12670 flow [2022-12-06 00:24:38,077 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 00:24:38,077 INFO L205 CegarLoopForPetriNet]: Found error trace [2022-12-06 00:24:38,077 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 00:24:38,087 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-12-06 00:24:38,285 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 00:24:38,286 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 00:24:38,286 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-12-06 00:24:38,286 INFO L85 PathProgramCache]: Analyzing trace with hash 821023250, now seen corresponding path program 1 times [2022-12-06 00:24:38,286 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-12-06 00:24:38,286 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1354337084] [2022-12-06 00:24:38,286 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 00:24:38,286 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-12-06 00:24:38,321 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 00:24:38,912 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 00:24:38,913 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-12-06 00:24:38,913 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1354337084] [2022-12-06 00:24:38,913 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1354337084] provided 0 perfect and 1 imperfect interpolant sequences [2022-12-06 00:24:38,913 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1288897964] [2022-12-06 00:24:38,913 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 00:24:38,913 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-12-06 00:24:38,913 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-12-06 00:24:38,914 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 00:24:38,949 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 00:24:39,011 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 00:24:39,014 INFO L263 TraceCheckSpWp]: Trace formula consists of 257 conjuncts, 66 conjunts are in the unsatisfiable core [2022-12-06 00:24:39,017 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-12-06 00:24:39,038 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 0 case distinctions, treesize of input 19 treesize of output 23 [2022-12-06 00:24:39,042 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 00:24:39,080 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 00:24:39,124 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-12-06 00:24:39,125 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 00:24:39,225 INFO L321 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-12-06 00:24:39,225 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 00:24:39,303 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 00:24:39,303 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-12-06 00:24:39,571 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 00:24:39,572 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1288897964] provided 0 perfect and 2 imperfect interpolant sequences [2022-12-06 00:24:39,573 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-12-06 00:24:39,573 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9, 9] total 23 [2022-12-06 00:24:39,573 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1584512482] [2022-12-06 00:24:39,573 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-12-06 00:24:39,574 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 24 states [2022-12-06 00:24:39,574 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-12-06 00:24:39,574 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 24 interpolants. [2022-12-06 00:24:39,574 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=78, Invalid=473, Unknown=1, NotChecked=0, Total=552 [2022-12-06 00:24:39,574 INFO L490 CegarLoopForPetriNet]: Number of universal loopers: 0 out of 88 [2022-12-06 00:24:39,575 INFO L100 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 291 places, 1045 transitions, 12670 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 00:24:39,575 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-12-06 00:24:39,575 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 0 of 88 [2022-12-06 00:24:39,575 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-12-06 00:24:51,338 INFO L130 PetriNetUnfolder]: 14237/25041 cut-off events. [2022-12-06 00:24:51,338 INFO L131 PetriNetUnfolder]: For 776405/776405 co-relation queries the response was YES. [2022-12-06 00:24:51,546 INFO L83 FinitePrefix]: Finished finitePrefix Result has 190489 conditions, 25041 events. 14237/25041 cut-off events. For 776405/776405 co-relation queries the response was YES. Maximal size of possible extension queue 1371. Compared 214639 event pairs, 1564 based on Foata normal form. 72/25095 useless extension candidates. Maximal degree in co-relation 190276. Up to 7913 conditions per place. [2022-12-06 00:24:51,644 INFO L137 encePairwiseOnDemand]: 9/88 looper letters, 731 selfloop transitions, 1161 changer transitions 74/1966 dead transitions. [2022-12-06 00:24:51,644 INFO L142 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 359 places, 1966 transitions, 28452 flow [2022-12-06 00:24:51,644 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 69 states. [2022-12-06 00:24:51,645 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 69 states. [2022-12-06 00:24:51,646 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 69 states to 69 states and 601 transitions. [2022-12-06 00:24:51,647 INFO L535 CegarLoopForPetriNet]: DFA transition density 0.09897891963109355 [2022-12-06 00:24:51,647 INFO L175 Difference]: Start difference. First operand has 291 places, 1045 transitions, 12670 flow. Second operand 69 states and 601 transitions. [2022-12-06 00:24:51,647 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 359 places, 1966 transitions, 28452 flow [2022-12-06 00:24:57,882 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 345 places, 1966 transitions, 25692 flow, removed 1221 selfloop flow, removed 14 redundant places. [2022-12-06 00:24:57,903 INFO L231 Difference]: Finished difference. Result has 376 places, 1482 transitions, 20627 flow [2022-12-06 00:24:57,904 INFO L276 CegarLoopForPetriNet]: {PETRI_ALPHABET=88, PETRI_DIFFERENCE_MINUEND_FLOW=11221, PETRI_DIFFERENCE_MINUEND_PLACES=277, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=1045, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=745, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=214, PETRI_DIFFERENCE_SUBTRAHEND_STATES=69, PETRI_FLOW=20627, PETRI_PLACES=376, PETRI_TRANSITIONS=1482} [2022-12-06 00:24:57,905 INFO L294 CegarLoopForPetriNet]: 32 programPoint places, 344 predicate places. [2022-12-06 00:24:57,905 WARN L163 eatedLiptonReduction]: Counterexample is not a run of mAbstraction. Replaying acceptance of the word... [2022-12-06 00:24:57,905 INFO L89 Accepts]: Start accepts. Operand has 376 places, 1482 transitions, 20627 flow [2022-12-06 00:24:57,909 INFO L95 Accepts]: Finished accepts. [2022-12-06 00:24:57,909 INFO L195 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-12-06 00:24:57,909 INFO L167 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 376 places, 1482 transitions, 20627 flow [2022-12-06 00:24:57,918 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 376 places, 1482 transitions, 20627 flow [2022-12-06 00:25:00,057 INFO L130 PetriNetUnfolder]: 3741/9958 cut-off events. [2022-12-06 00:25:00,057 INFO L131 PetriNetUnfolder]: For 459661/462388 co-relation queries the response was YES. [2022-12-06 00:25:00,137 INFO L83 FinitePrefix]: Finished finitePrefix Result has 75789 conditions, 9958 events. 3741/9958 cut-off events. For 459661/462388 co-relation queries the response was YES. Maximal size of possible extension queue 1054. Compared 114088 event pairs, 893 based on Foata normal form. 47/9340 useless extension candidates. Maximal degree in co-relation 75382. Up to 3285 conditions per place. [2022-12-06 00:25:00,309 INFO L184 LiptonReduction]: Starting Lipton reduction on Petri net that has 376 places, 1482 transitions, 20627 flow [2022-12-06 00:25:00,310 INFO L188 LiptonReduction]: Number of co-enabled transitions 8370 [2022-12-06 00:25:03,799 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 00:25:03,870 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 00:25:04,054 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 00:25:04,149 INFO L203 LiptonReduction]: Total number of compositions: 5 [2022-12-06 00:25:04,150 INFO L143 eatedLiptonReduction]: Time needed for LBE in milliseconds: 6245 [2022-12-06 00:25:04,150 INFO L495 AbstractCegarLoop]: Abstraction has has 374 places, 1480 transitions, 20649 flow [2022-12-06 00:25:04,150 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 00:25:04,150 INFO L205 CegarLoopForPetriNet]: Found error trace [2022-12-06 00:25:04,150 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 00:25:04,155 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 00:25:04,355 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 00:25:04,355 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 00:25:04,355 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-12-06 00:25:04,356 INFO L85 PathProgramCache]: Analyzing trace with hash -594480766, now seen corresponding path program 1 times [2022-12-06 00:25:04,356 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-12-06 00:25:04,356 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [285879258] [2022-12-06 00:25:04,356 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 00:25:04,356 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-12-06 00:25:04,394 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 00:25:04,970 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 00:25:04,970 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-12-06 00:25:04,970 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [285879258] [2022-12-06 00:25:04,970 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [285879258] provided 0 perfect and 1 imperfect interpolant sequences [2022-12-06 00:25:04,970 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1208869946] [2022-12-06 00:25:04,970 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 00:25:04,970 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-12-06 00:25:04,971 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-12-06 00:25:04,972 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 00:25:04,974 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 00:25:05,060 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 00:25:05,061 INFO L263 TraceCheckSpWp]: Trace formula consists of 230 conjuncts, 35 conjunts are in the unsatisfiable core [2022-12-06 00:25:05,063 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-12-06 00:25:05,142 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-12-06 00:25:05,143 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 00:25:05,169 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-12-06 00:25:05,169 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 00:25:05,201 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 00:25:05,264 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 00:25:05,264 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-12-06 00:25:07,359 WARN L837 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_375 (Array Int Int)) (v_ArrVal_374 (Array Int Int))) (< (+ c_~d~0 (select (select (store (store |c_#memory_int| |c_ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_374) |c_ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_375) c_~queue~0.base) (+ c_~queue~0.offset (* c_~front~0 4)))) (+ c_~W~0 1))) is different from false [2022-12-06 00:25:07,381 INFO L321 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-12-06 00:25:07,381 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 00:25:07,387 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 73 treesize of output 61 [2022-12-06 00:25:07,391 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 134 treesize of output 110 [2022-12-06 00:25:07,445 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 00:25:07,445 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1208869946] provided 0 perfect and 2 imperfect interpolant sequences [2022-12-06 00:25:07,445 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-12-06 00:25:07,445 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 9, 9] total 22 [2022-12-06 00:25:07,445 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1619834789] [2022-12-06 00:25:07,445 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-12-06 00:25:07,446 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 23 states [2022-12-06 00:25:07,446 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-12-06 00:25:07,446 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2022-12-06 00:25:07,446 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=83, Invalid=376, Unknown=7, NotChecked=40, Total=506 [2022-12-06 00:25:07,446 INFO L490 CegarLoopForPetriNet]: Number of universal loopers: 0 out of 94 [2022-12-06 00:25:07,447 INFO L100 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 374 places, 1480 transitions, 20649 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 00:25:07,447 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-12-06 00:25:07,447 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 0 of 94 [2022-12-06 00:25:07,447 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-12-06 00:25:17,289 INFO L130 PetriNetUnfolder]: 14617/25718 cut-off events. [2022-12-06 00:25:17,290 INFO L131 PetriNetUnfolder]: For 1063554/1063554 co-relation queries the response was YES. [2022-12-06 00:25:17,628 INFO L83 FinitePrefix]: Finished finitePrefix Result has 207672 conditions, 25718 events. 14617/25718 cut-off events. For 1063554/1063554 co-relation queries the response was YES. Maximal size of possible extension queue 1408. Compared 220349 event pairs, 2708 based on Foata normal form. 96/25804 useless extension candidates. Maximal degree in co-relation 205589. Up to 9325 conditions per place. [2022-12-06 00:25:17,750 INFO L137 encePairwiseOnDemand]: 31/94 looper letters, 904 selfloop transitions, 727 changer transitions 61/1692 dead transitions. [2022-12-06 00:25:17,751 INFO L142 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 391 places, 1692 transitions, 27202 flow [2022-12-06 00:25:17,751 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-12-06 00:25:17,751 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2022-12-06 00:25:17,752 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 219 transitions. [2022-12-06 00:25:17,752 INFO L535 CegarLoopForPetriNet]: DFA transition density 0.12943262411347517 [2022-12-06 00:25:17,752 INFO L175 Difference]: Start difference. First operand has 374 places, 1480 transitions, 20649 flow. Second operand 18 states and 219 transitions. [2022-12-06 00:25:17,752 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 391 places, 1692 transitions, 27202 flow [2022-12-06 00:25:28,531 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 380 places, 1692 transitions, 25844 flow, removed 624 selfloop flow, removed 11 redundant places. [2022-12-06 00:25:28,574 INFO L231 Difference]: Finished difference. Result has 384 places, 1487 transitions, 21594 flow [2022-12-06 00:25:28,576 INFO L276 CegarLoopForPetriNet]: {PETRI_ALPHABET=94, PETRI_DIFFERENCE_MINUEND_FLOW=19371, PETRI_DIFFERENCE_MINUEND_PLACES=363, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=1480, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=716, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=756, PETRI_DIFFERENCE_SUBTRAHEND_STATES=18, PETRI_FLOW=21594, PETRI_PLACES=384, PETRI_TRANSITIONS=1487} [2022-12-06 00:25:28,576 INFO L294 CegarLoopForPetriNet]: 32 programPoint places, 352 predicate places. [2022-12-06 00:25:28,576 WARN L163 eatedLiptonReduction]: Counterexample is not a run of mAbstraction. Replaying acceptance of the word... [2022-12-06 00:25:28,576 INFO L89 Accepts]: Start accepts. Operand has 384 places, 1487 transitions, 21594 flow [2022-12-06 00:25:28,581 INFO L95 Accepts]: Finished accepts. [2022-12-06 00:25:28,581 INFO L195 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-12-06 00:25:28,582 INFO L167 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 384 places, 1487 transitions, 21594 flow [2022-12-06 00:25:28,592 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 383 places, 1487 transitions, 21594 flow [2022-12-06 00:25:30,218 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][720], [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) (< (+ (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0) (+ ~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))) (<= 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))), 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: 1601#(and (<= (+ 2 ~queue~0.base) |ULTIMATE.start_main_~#t2~0#1.base|) (= ~back~0 ~front~0) (= ~v_assert~0 1) (<= ~d~0 ~W~0) (= ~queue~0.offset 0) (or (<= (+ ~queue~0.offset (* ~back~0 4) 1) 0) (= ~d~0 0)) (<= ~d~0 0) (<= (+ 2 ~queue~0.base) |ULTIMATE.start_main_~#t3~0#1.base|)), Black: 1626#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 1612#(and (<= (+ 2 ~queue~0.base) |ULTIMATE.start_main_~#t2~0#1.base|) (= ~back~0 ~front~0) (= ~v_assert~0 1) (<= ~d~0 ~W~0) (= ~queue~0.offset 0) (or (<= (+ ~queue~0.offset (* ~back~0 4) 1) 0) (= ~d~0 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|)), 797#true, 68#L78true, Black: 1618#(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: 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: 1063#(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: 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))), 1224#(and (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), 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: 1105#(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: 1035#(and (<= 1 ~v_assert~0) (<= ~v_assert~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))) (<= |thread2Thread1of1ForFork2_~temp~0#1| 1) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 0) (<= 1 ~W~0)), Black: 1049#(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: 1067#(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: 1056#(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: 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: 1037#(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: 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: 1115#(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: 1093#(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: 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: 1097#(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: 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: 1091#(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: 1058#(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: 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: 1041#(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)))), 255#(and (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 1077#(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: 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: 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: 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)))), Black: 1039#(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 ~W~0)), Black: 1073#(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)))), 1520#(and (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 1051#(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: 1061#(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: 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: 1053#(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: 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: 1071#(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: 1087#(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: 1095#(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: 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: 1081#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 ~W~0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 1332#(and (or (< ~back~0 0) (<= ~n~0 (+ ~back~0 1)) (forall ((v_ArrVal_320 (Array Int Int)) (v_ArrVal_321 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_320) ~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_320) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4) 4)) 1)) (< (+ (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_320) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_320) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4))) 3)))) (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (< ~back~0 0) (<= ~n~0 (+ ~back~0 1)) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2) (forall ((v_ArrVal_321 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4) 4)) 1)) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) ~d~0 (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~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) (<= (+ ~d~0 1) ~W~0)), Black: 1358#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (< ~back~0 0) (<= ~n~0 (+ ~back~0 1)) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2) (forall ((v_ArrVal_321 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4) 4)) 1)) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) ~d~0 (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1))))) (<= 2 ~W~0) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (<= (+ ~d~0 1) ~W~0)) (= ~queue~0.offset 0) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (= (* ~front~0 4) (* ~back~0 4))) (<= ~d~0 2)), Black: 1422#(and (or (< ~back~0 0) (<= ~n~0 (+ ~back~0 1)) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2) (forall ((v_ArrVal_321 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4) 4)) 1)) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) ~d~0 (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1))))) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 1336#(and (or (< ~back~0 0) (<= ~n~0 (+ ~back~0 1)) (forall ((v_ArrVal_320 (Array Int Int)) (v_ArrVal_321 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_320) ~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_320) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4) 4)) 1)) (< (+ (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_320) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_320) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4))) 3)))) (or (< ~back~0 0) (<= ~n~0 (+ ~back~0 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2) (forall ((v_ArrVal_321 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4) 4)) 1)) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) ~d~0 (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1))))) (<= 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) (<= (+ ~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: 1340#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~d~0 ~W~0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 1362#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (< ~back~0 0) (<= ~n~0 (+ ~back~0 1)) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2) (forall ((v_ArrVal_321 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4) 4)) 1)) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) ~d~0 (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1)))))), Black: 1408#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= 2 ~W~0) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (<= (+ ~d~0 1) ~W~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))) (= (* ~front~0 4) (* ~back~0 4))) (<= ~d~0 2)), Black: 1410#(and (or (< ~back~0 0) (<= ~n~0 (+ ~back~0 1)) (forall ((v_ArrVal_320 (Array Int Int)) (v_ArrVal_321 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_320) ~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_320) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4) 4)) 1)) (< (+ (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_320) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_320) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4))) 3)))) (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (< ~back~0 0) (<= ~n~0 (+ ~back~0 1)) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2) (forall ((v_ArrVal_321 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4) 4)) 1)) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) ~d~0 (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1))))) (<= 2 ~W~0) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= (+ ~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: 1390#(and (or (< ~back~0 0) (<= ~n~0 (+ ~back~0 1)) (forall ((v_ArrVal_320 (Array Int Int)) (v_ArrVal_321 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_320) ~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_320) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4) 4)) 1)) (< (+ (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_320) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_320) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4))) 3)))) (or (< ~back~0 0) (<= ~n~0 (+ ~back~0 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2) (forall ((v_ArrVal_321 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4) 4)) 1)) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) ~d~0 (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1))))) (<= 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) (<= (+ ~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: 151#(and (= ~v_assert~0 1) (= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 1306#(and (<= (+ 2 ~queue~0.base) |ULTIMATE.start_main_~#t2~0#1.base|) (= ~d~0 0) (or (< ~back~0 0) (<= ~n~0 (+ ~back~0 1)) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2) (forall ((v_ArrVal_321 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4) 4)) 1)) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) ~d~0 (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1))))) (= ~back~0 ~front~0) (= ~v_assert~0 1) (<= ~d~0 ~W~0) (= ~queue~0.offset 0) (<= (+ 2 ~queue~0.base) |ULTIMATE.start_main_~#t3~0#1.base|) (<= (* ~n~0 4) 8)), Black: 1386#(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) (<= 1 ~front~0) (<= ~front~0 1) (= |thread2Thread1of1ForFork2_~temp~0#1| 1)), Black: 1376#(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) (<= (+ ~d~0 1) ~W~0)), Black: 1316#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (< ~back~0 0) (<= ~n~0 (+ ~back~0 1)) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2) (forall ((v_ArrVal_321 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4) 4)) 1)) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) ~d~0 (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1))))) (<= ~d~0 ~W~0)), Black: 1324#(and (or (< ~back~0 0) (<= ~n~0 (+ ~back~0 1)) (forall ((v_ArrVal_320 (Array Int Int)) (v_ArrVal_321 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_320) ~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_320) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4) 4)) 1)) (< (+ (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_320) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_320) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4))) 3)))) (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (< ~back~0 0) (<= ~n~0 (+ ~back~0 1)) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2) (forall ((v_ArrVal_321 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4) 4)) 1)) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) ~d~0 (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~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) (<= (+ ~d~0 1) ~W~0) (<= ~d~0 2)), Black: 1344#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (< ~back~0 0) (<= ~n~0 (+ ~back~0 1)) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2) (forall ((v_ArrVal_321 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4) 4)) 1)) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) ~d~0 (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1))))) (<= ~d~0 ~W~0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 1356#(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: 1372#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (< ~back~0 0) (<= ~n~0 (+ ~back~0 1)) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2) (forall ((v_ArrVal_321 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4) 4)) 1)) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) ~d~0 (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1))))) (<= 2 ~W~0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= ~d~0 2)), Black: 1416#(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) (<= (+ ~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: 1392#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (< ~back~0 0) (<= ~n~0 (+ ~back~0 1)) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2) (forall ((v_ArrVal_321 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4) 4)) 1)) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) ~d~0 (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1))))) (<= 2 ~W~0) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (<= (+ ~d~0 1) ~W~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))) (= (* ~front~0 4) (* ~back~0 4))) (<= ~d~0 2)), Black: 1388#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= 2 ~W~0) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (<= (+ ~d~0 1) ~W~0)) (= ~queue~0.offset 0) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (= (* ~front~0 4) (* ~back~0 4))) (<= ~d~0 2)), Black: 1326#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= ~n~0 2) (<= 1 ~back~0) (= ~back~0 ~front~0) (<= ~d~0 1) (<= 2 ~W~0) (= (select (select |#memory_int| ~queue~0.base) (+ (- 4) ~queue~0.offset (* ~back~0 4))) 1) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (= |thread2Thread1of1ForFork2_~temp~0#1| 1) (< ~back~0 (+ ~n~0 1))), Black: 1334#(and (or (< ~back~0 0) (<= ~n~0 (+ ~back~0 1)) (forall ((v_ArrVal_320 (Array Int Int)) (v_ArrVal_321 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_320) ~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_320) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4) 4)) 1)) (< (+ (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_320) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_320) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4))) 3)))) (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (< ~back~0 0) (<= ~n~0 (+ ~back~0 1)) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2) (forall ((v_ArrVal_321 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4) 4)) 1)) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) ~d~0 (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1))))) (<= 2 ~W~0) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (= ~queue~0.offset 0) (<= (+ ~d~0 1) ~W~0) (<= ~d~0 2)), Black: 1394#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (< ~back~0 0) (<= ~n~0 (+ ~back~0 1)) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2) (forall ((v_ArrVal_321 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4) 4)) 1)) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) ~d~0 (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1))))) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 1308#(and (or (< ~back~0 0) (<= ~n~0 (+ ~back~0 1)) (forall ((v_ArrVal_320 (Array Int Int)) (v_ArrVal_321 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_320) ~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_320) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4) 4)) 1)) (< (+ (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_320) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_320) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4))) 3)))) (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (< ~back~0 0) (<= ~n~0 (+ ~back~0 1)) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2) (forall ((v_ArrVal_321 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4) 4)) 1)) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) ~d~0 (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1))))) (= (select (select |#memory_int| ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) 1) (= ~queue~0.offset 0) (<= (+ ~d~0 1) ~W~0)), Black: 1302#(and (or (< ~back~0 0) (<= ~n~0 (+ ~back~0 1)) (forall ((v_ArrVal_320 (Array Int Int)) (v_ArrVal_321 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_320) ~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_320) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4) 4)) 1)) (< (+ (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_320) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_320) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4))) 3)))) (<= 1 ~v_assert~0) (<= ~v_assert~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)), Black: 1318#(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) (<= (+ ~d~0 1) ~W~0)), Black: 1370#(and (or (< ~back~0 0) (<= ~n~0 (+ ~back~0 1)) (forall ((v_ArrVal_320 (Array Int Int)) (v_ArrVal_321 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_320) ~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_320) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4) 4)) 1)) (< (+ (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_320) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_320) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4))) 3)))) (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (< ~back~0 0) (<= ~n~0 (+ ~back~0 1)) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2) (forall ((v_ArrVal_321 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4) 4)) 1)) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) ~d~0 (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1))))) (<= ~d~0 ~W~0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 1366#(and (or (< ~back~0 0) (<= ~n~0 (+ ~back~0 1)) (forall ((v_ArrVal_320 (Array Int Int)) (v_ArrVal_321 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_320) ~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_320) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4) 4)) 1)) (< (+ (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_320) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_320) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4))) 3)))) (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (< ~back~0 0) (<= ~n~0 (+ ~back~0 1)) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2) (forall ((v_ArrVal_321 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4) 4)) 1)) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) ~d~0 (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1))))) (<= ~d~0 1) (<= 2 ~W~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))) (= (* ~front~0 4) (* ~back~0 4))) (= |thread2Thread1of1ForFork2_~temp~0#1| 1)), Black: 1412#(and (or (< ~back~0 0) (<= ~n~0 (+ ~back~0 1)) (forall ((v_ArrVal_320 (Array Int Int)) (v_ArrVal_321 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_320) ~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_320) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4) 4)) 1)) (< (+ (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_320) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_320) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4))) 3)))) (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (or (< ~back~0 0) (<= ~n~0 (+ ~back~0 1)) (not (= (select (select |#memory_int| ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4))) 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2) (forall ((v_ArrVal_321 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4) 4)) 1)) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) ~d~0 (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1))))) (<= 2 ~W~0) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (<= (+ ~d~0 1) ~W~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))) (= (* ~front~0 4) (* ~back~0 4))) (<= ~d~0 2)), Black: 1338#(and (<= 1 ~v_assert~0) (<= ~v_assert~0 1) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1)), Black: 173#(or (<= ~back~0 ~front~0) (<= ~n~0 ~front~0) (not (<= 0 ~front~0))), Black: 1350#(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) (or (<= ~n~0 (+ ~back~0 1)) (forall ((v_ArrVal_320 (Array Int Int)) (v_ArrVal_321 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_320) ~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_320) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4) 4)) 1)) (< (+ (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_320) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset)) ~d~0 (select (select (store (store |#memory_int| |ULTIMATE.start_main_~#t2~0#1.base| v_ArrVal_320) |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4))) 3)))) (or (<= ~n~0 (+ ~back~0 1)) (< |thread1Thread1of1ForFork1_~w~0#1| 2) (forall ((v_ArrVal_321 (Array Int Int))) (or (not (= (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ ~queue~0.offset (* ~back~0 4) 4)) 1)) (< (+ (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset 4)) ~d~0 (select (select (store |#memory_int| |ULTIMATE.start_main_~#t3~0#1.base| v_ArrVal_321) ~queue~0.base) (+ (* ~front~0 4) ~queue~0.offset))) (+ ~W~0 1))))) (= ~queue~0.offset 0) (<= 1 |thread2Thread1of1ForFork2_~cond~1#1|) (<= |thread2Thread1of1ForFork2_~cond~1#1| 1) (<= 1 ~front~0) (<= ~front~0 1) (or (<= (* ~n~0 4) (+ 3 ~queue~0.offset (* ~back~0 4))) (= (* ~front~0 4) (* ~back~0 4))) (= |thread2Thread1of1ForFork2_~temp~0#1| 1)), 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 00:25:30,219 INFO L382 tUnfolder$Statistics]: this new event has 17 ancestors and is cut-off event [2022-12-06 00:25:30,219 INFO L385 tUnfolder$Statistics]: existing Event has 15 ancestors and is cut-off event [2022-12-06 00:25:30,219 INFO L385 tUnfolder$Statistics]: existing Event has 17 ancestors and is cut-off event [2022-12-06 00:25:30,219 INFO L385 tUnfolder$Statistics]: existing Event has 16 ancestors and is cut-off event [2022-12-06 00:25:30,586 INFO L130 PetriNetUnfolder]: 3846/10205 cut-off events. [2022-12-06 00:25:30,586 INFO L131 PetriNetUnfolder]: For 476246/479118 co-relation queries the response was YES. [2022-12-06 00:25:30,678 INFO L83 FinitePrefix]: Finished finitePrefix Result has 78963 conditions, 10205 events. 3846/10205 cut-off events. For 476246/479118 co-relation queries the response was YES. Maximal size of possible extension queue 1091. Compared 117156 event pairs, 926 based on Foata normal form. 57/9548 useless extension candidates. Maximal degree in co-relation 78589. Up to 3367 conditions per place. [2022-12-06 00:25:30,784 INFO L184 LiptonReduction]: Starting Lipton reduction on Petri net that has 383 places, 1487 transitions, 21594 flow [2022-12-06 00:25:30,784 INFO L188 LiptonReduction]: Number of co-enabled transitions 8416 [2022-12-06 00:25:30,789 INFO L203 LiptonReduction]: Total number of compositions: 0 [2022-12-06 00:25:30,790 INFO L143 eatedLiptonReduction]: Time needed for LBE in milliseconds: 2214 [2022-12-06 00:25:30,790 INFO L495 AbstractCegarLoop]: Abstraction has has 383 places, 1487 transitions, 21594 flow [2022-12-06 00:25:30,790 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 00:25:30,790 INFO L205 CegarLoopForPetriNet]: Found error trace [2022-12-06 00:25:30,790 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 00:25:30,798 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Ended with exit code 0 [2022-12-06 00:25:30,995 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 00:25:30,996 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 00:25:30,996 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-12-06 00:25:30,996 INFO L85 PathProgramCache]: Analyzing trace with hash 1910646922, now seen corresponding path program 1 times [2022-12-06 00:25:30,996 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-12-06 00:25:30,996 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1234522973] [2022-12-06 00:25:30,996 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 00:25:30,996 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-12-06 00:25:31,041 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 00:25:31,752 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 00:25:31,752 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-12-06 00:25:31,753 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1234522973] [2022-12-06 00:25:31,753 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1234522973] provided 0 perfect and 1 imperfect interpolant sequences [2022-12-06 00:25:31,753 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1930647921] [2022-12-06 00:25:31,753 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 00:25:31,753 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-12-06 00:25:31,753 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-12-06 00:25:31,754 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 00:25:31,756 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 00:25:31,833 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 00:25:31,835 INFO L263 TraceCheckSpWp]: Trace formula consists of 232 conjuncts, 31 conjunts are in the unsatisfiable core [2022-12-06 00:25:31,838 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-12-06 00:25:31,953 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-12-06 00:25:31,954 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 00:25:32,002 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 00:25:32,079 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 00:25:32,079 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-12-06 00:25:32,202 INFO L321 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-12-06 00:25:32,202 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 00:25:32,211 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 00:25:32,317 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 00:25:32,317 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1930647921] provided 0 perfect and 2 imperfect interpolant sequences [2022-12-06 00:25:32,317 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-12-06 00:25:32,317 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10, 10] total 26 [2022-12-06 00:25:32,317 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [670924716] [2022-12-06 00:25:32,317 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-12-06 00:25:32,318 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 27 states [2022-12-06 00:25:32,318 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-12-06 00:25:32,318 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2022-12-06 00:25:32,318 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=91, Invalid=608, Unknown=3, NotChecked=0, Total=702 [2022-12-06 00:25:32,318 INFO L490 CegarLoopForPetriNet]: Number of universal loopers: 0 out of 93 [2022-12-06 00:25:32,319 INFO L100 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 383 places, 1487 transitions, 21594 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 00:25:32,319 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-12-06 00:25:32,319 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 0 of 93 [2022-12-06 00:25:32,319 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-12-06 00:25:49,860 INFO L130 PetriNetUnfolder]: 16096/28387 cut-off events. [2022-12-06 00:25:49,860 INFO L131 PetriNetUnfolder]: For 1205900/1205900 co-relation queries the response was YES. [2022-12-06 00:25:50,264 INFO L83 FinitePrefix]: Finished finitePrefix Result has 234194 conditions, 28387 events. 16096/28387 cut-off events. For 1205900/1205900 co-relation queries the response was YES. Maximal size of possible extension queue 1534. Compared 246517 event pairs, 1274 based on Foata normal form. 84/28463 useless extension candidates. Maximal degree in co-relation 233374. Up to 9023 conditions per place. [2022-12-06 00:25:50,430 INFO L137 encePairwiseOnDemand]: 13/93 looper letters, 853 selfloop transitions, 1071 changer transitions 68/1992 dead transitions. [2022-12-06 00:25:50,430 INFO L142 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 431 places, 1992 transitions, 32359 flow [2022-12-06 00:25:50,430 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 49 states. [2022-12-06 00:25:50,430 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 49 states. [2022-12-06 00:25:50,432 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 49 states to 49 states and 414 transitions. [2022-12-06 00:25:50,432 INFO L535 CegarLoopForPetriNet]: DFA transition density 0.09084924292297564 [2022-12-06 00:25:50,432 INFO L175 Difference]: Start difference. First operand has 383 places, 1487 transitions, 21594 flow. Second operand 49 states and 414 transitions. [2022-12-06 00:25:50,432 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 431 places, 1992 transitions, 32359 flow [2022-12-06 00:26:03,183 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 418 places, 1992 transitions, 30883 flow, removed 70 selfloop flow, removed 13 redundant places. [2022-12-06 00:26:03,208 INFO L231 Difference]: Finished difference. Result has 429 places, 1584 transitions, 24615 flow [2022-12-06 00:26:03,209 INFO L276 CegarLoopForPetriNet]: {PETRI_ALPHABET=93, PETRI_DIFFERENCE_MINUEND_FLOW=20267, PETRI_DIFFERENCE_MINUEND_PLACES=370, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=1487, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=964, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=506, PETRI_DIFFERENCE_SUBTRAHEND_STATES=49, PETRI_FLOW=24615, PETRI_PLACES=429, PETRI_TRANSITIONS=1584} [2022-12-06 00:26:03,210 INFO L294 CegarLoopForPetriNet]: 32 programPoint places, 397 predicate places. [2022-12-06 00:26:03,210 WARN L163 eatedLiptonReduction]: Counterexample is not a run of mAbstraction. Replaying acceptance of the word... [2022-12-06 00:26:03,210 INFO L89 Accepts]: Start accepts. Operand has 429 places, 1584 transitions, 24615 flow [2022-12-06 00:26:03,216 INFO L95 Accepts]: Finished accepts. [2022-12-06 00:26:03,216 INFO L195 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-12-06 00:26:03,216 INFO L167 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 429 places, 1584 transitions, 24615 flow [2022-12-06 00:26:03,226 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 429 places, 1584 transitions, 24615 flow [2022-12-06 00:26:05,777 INFO L130 PetriNetUnfolder]: 4255/11319 cut-off events. [2022-12-06 00:26:05,777 INFO L131 PetriNetUnfolder]: For 530999/534302 co-relation queries the response was YES. [2022-12-06 00:26:05,870 INFO L83 FinitePrefix]: Finished finitePrefix Result has 91302 conditions, 11319 events. 4255/11319 cut-off events. For 530999/534302 co-relation queries the response was YES. Maximal size of possible extension queue 1203. Compared 132003 event pairs, 1047 based on Foata normal form. 78/10587 useless extension candidates. Maximal degree in co-relation 91129. Up to 3717 conditions per place. [2022-12-06 00:26:05,974 INFO L184 LiptonReduction]: Starting Lipton reduction on Petri net that has 429 places, 1584 transitions, 24615 flow [2022-12-06 00:26:05,975 INFO L188 LiptonReduction]: Number of co-enabled transitions 9022 [2022-12-06 00:26:06,030 WARN L322 ript$VariableManager]: TermVariable LBE247 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 00:26:06,030 WARN L322 ript$VariableManager]: TermVariable LBE234 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 00:26:06,030 WARN L322 ript$VariableManager]: TermVariable LBE241 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 00:26:06,030 WARN L322 ript$VariableManager]: TermVariable LBE69 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 00:26:06,031 WARN L322 ript$VariableManager]: TermVariable LBE35 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 00:26:06,031 WARN L322 ript$VariableManager]: TermVariable LBE23 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 00:26:06,424 WARN L322 ript$VariableManager]: TermVariable LBE247 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 00:26:06,425 WARN L322 ript$VariableManager]: TermVariable LBE234 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 00:26:06,425 WARN L322 ript$VariableManager]: TermVariable LBE241 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 00:26:06,425 WARN L322 ript$VariableManager]: TermVariable LBE69 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 00:26:06,425 WARN L322 ript$VariableManager]: TermVariable LBE35 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 00:26:06,425 WARN L322 ript$VariableManager]: TermVariable LBE23 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 00:26:06,866 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 00:26:06,915 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [664] $Ultimate##0-->L48-4: Formula: (let ((.cse0 (+ v_~front~0_231 1)) (.cse1 (select |v_#memory_int_432| v_~queue~0.base_228))) (and (= (ite (and (< .cse0 v_~back~0_347) (< v_~front~0_231 v_~n~0_221) (<= 0 v_~front~0_231)) 1 0) |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_86|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_125| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_125|) (not (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_276| 256) 0)) (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_125| 0)) (= (+ v_~back~0_349 2) v_~back~0_347) (= .cse0 v_~front~0_230) (not (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_86| 0)) (not (= (ite (and (<= 1 v_~back~0_347) (< v_~back~0_347 (+ v_~n~0_221 1))) 1 0) 0)) (= |v_ULTIMATE.start_main_#t~pre14#1_127| |v_#pthreadsForks_248|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_125| (ite (= (select .cse1 (+ (- 4) (* v_~back~0_347 4) v_~queue~0.offset_228)) 1) 1 0)) (= v_~v_assert~0_312 |v_thread2Thread1of1ForFork2_~cond~1#1_155|) (not (= (ite (= (select (select |v_#memory_int_433| v_~queue~0.base_228) (+ v_~queue~0.offset_228 (* v_~back~0_349 4))) 1) 1 0) 0)) (= |v_thread2Thread1of1ForFork2_~temp~0#1_211| (select .cse1 (+ (* v_~front~0_231 4) v_~queue~0.offset_228))) (= (store |v_#memory_int_433| |v_ULTIMATE.start_main_~#t3~0#1.base_120| (store (select |v_#memory_int_433| |v_ULTIMATE.start_main_~#t3~0#1.base_120|) |v_ULTIMATE.start_main_~#t3~0#1.offset_119| |v_ULTIMATE.start_main_#t~pre14#1_127|)) |v_#memory_int_432|) (= (+ |v_#pthreadsForks_248| 1) |v_#pthreadsForks_247|) (= |v_thread1Thread1of1ForFork1_~w~0#1_352| (+ |v_thread1Thread1of1ForFork1_~w~0#1_350| 2)) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_86| |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_86|) (= (+ |v_thread2Thread1of1ForFork2_~temp~0#1_211| v_~d~0_235) v_~d~0_234) (< 0 (+ |v_thread1Thread1of1ForFork1_~w~0#1_350| 1)) (= v_~v_assert~0_312 |v_thread1Thread1of1ForFork1_~cond~0#1_276|))) InVars {~queue~0.offset=v_~queue~0.offset_228, ~v_assert~0=v_~v_assert~0_312, #pthreadsForks=|v_#pthreadsForks_248|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_119|, ~d~0=v_~d~0_235, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_352|, ~back~0=v_~back~0_349, #memory_int=|v_#memory_int_433|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_120|, ~queue~0.base=v_~queue~0.base_228, ~n~0=v_~n~0_221, ~front~0=v_~front~0_231} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_211|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_119|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_125|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_120|, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_86|, ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_139|, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_133|, thread2Thread1of1ForFork2_#t~post5#1=|v_thread2Thread1of1ForFork2_#t~post5#1_86|, #pthreadsForks=|v_#pthreadsForks_247|, thread2Thread1of1ForFork2_#t~mem4#1=|v_thread2Thread1of1ForFork2_#t~mem4#1_86|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_350|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_109|, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_125|, ~front~0=v_~front~0_230, thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_155|, ~queue~0.offset=v_~queue~0.offset_228, ~back~0=v_~back~0_347, ~queue~0.base=v_~queue~0.base_228, ~v_assert~0=v_~v_assert~0_312, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_86|, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_127|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_125|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_125|, ~d~0=v_~d~0_234, #memory_int=|v_#memory_int_432|, ~n~0=v_~n~0_221, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_276|} 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 00:26:07,303 INFO L203 LiptonReduction]: Total number of compositions: 3 [2022-12-06 00:26:07,312 INFO L143 eatedLiptonReduction]: Time needed for LBE in milliseconds: 4102 [2022-12-06 00:26:07,312 INFO L495 AbstractCegarLoop]: Abstraction has has 427 places, 1582 transitions, 24630 flow [2022-12-06 00:26:07,312 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 00:26:07,312 INFO L205 CegarLoopForPetriNet]: Found error trace [2022-12-06 00:26:07,312 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 00:26:07,316 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Ended with exit code 0 [2022-12-06 00:26:07,515 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 00:26:07,516 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 00:26:07,516 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-12-06 00:26:07,516 INFO L85 PathProgramCache]: Analyzing trace with hash 1208204701, now seen corresponding path program 1 times [2022-12-06 00:26:07,516 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-12-06 00:26:07,516 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1525877600] [2022-12-06 00:26:07,516 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 00:26:07,517 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-12-06 00:26:07,550 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 00:26:08,277 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 00:26:08,277 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-12-06 00:26:08,277 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1525877600] [2022-12-06 00:26:08,277 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1525877600] provided 0 perfect and 1 imperfect interpolant sequences [2022-12-06 00:26:08,277 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [300487718] [2022-12-06 00:26:08,277 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 00:26:08,277 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-12-06 00:26:08,277 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-12-06 00:26:08,293 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 00:26:08,296 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 00:26:08,380 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 00:26:08,382 INFO L263 TraceCheckSpWp]: Trace formula consists of 259 conjuncts, 59 conjunts are in the unsatisfiable core [2022-12-06 00:26:08,384 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-12-06 00:26:08,398 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-12-06 00:26:08,399 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 00:26:08,402 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 00:26:08,446 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 00:26:08,488 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-12-06 00:26:08,489 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 00:26:08,678 INFO L321 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-12-06 00:26:08,679 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 00:26:08,754 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 00:26:08,754 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-12-06 00:26:09,019 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 00:26:09,019 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [300487718] provided 0 perfect and 2 imperfect interpolant sequences [2022-12-06 00:26:09,019 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-12-06 00:26:09,019 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10, 10] total 26 [2022-12-06 00:26:09,019 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2106165928] [2022-12-06 00:26:09,020 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-12-06 00:26:09,020 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 27 states [2022-12-06 00:26:09,020 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-12-06 00:26:09,020 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2022-12-06 00:26:09,020 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=103, Invalid=599, Unknown=0, NotChecked=0, Total=702 [2022-12-06 00:26:09,020 INFO L490 CegarLoopForPetriNet]: Number of universal loopers: 0 out of 95 [2022-12-06 00:26:09,021 INFO L100 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 427 places, 1582 transitions, 24630 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 00:26:09,021 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-12-06 00:26:09,021 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 0 of 95 [2022-12-06 00:26:09,021 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-12-06 00:26:13,391 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 00:26:17,144 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 00:26:30,402 INFO L130 PetriNetUnfolder]: 18169/32102 cut-off events. [2022-12-06 00:26:30,403 INFO L131 PetriNetUnfolder]: For 1423920/1423920 co-relation queries the response was YES. [2022-12-06 00:26:31,077 INFO L83 FinitePrefix]: Finished finitePrefix Result has 276407 conditions, 32102 events. 18169/32102 cut-off events. For 1423920/1423920 co-relation queries the response was YES. Maximal size of possible extension queue 1722. Compared 285739 event pairs, 1946 based on Foata normal form. 132/32231 useless extension candidates. Maximal degree in co-relation 276175. Up to 12710 conditions per place. [2022-12-06 00:26:31,226 INFO L137 encePairwiseOnDemand]: 10/95 looper letters, 822 selfloop transitions, 1306 changer transitions 93/2221 dead transitions. [2022-12-06 00:26:31,226 INFO L142 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 490 places, 2221 transitions, 37932 flow [2022-12-06 00:26:31,226 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 64 states. [2022-12-06 00:26:31,226 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 64 states. [2022-12-06 00:26:31,230 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 64 states to 64 states and 538 transitions. [2022-12-06 00:26:31,233 INFO L535 CegarLoopForPetriNet]: DFA transition density 0.08848684210526316 [2022-12-06 00:26:31,233 INFO L175 Difference]: Start difference. First operand has 427 places, 1582 transitions, 24630 flow. Second operand 64 states and 538 transitions. [2022-12-06 00:26:31,233 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 490 places, 2221 transitions, 37932 flow [2022-12-06 00:26:49,859 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 468 places, 2221 transitions, 36681 flow, removed 78 selfloop flow, removed 22 redundant places. [2022-12-06 00:26:49,924 INFO L231 Difference]: Finished difference. Result has 489 places, 1750 transitions, 30545 flow [2022-12-06 00:26:49,925 INFO L276 CegarLoopForPetriNet]: {PETRI_ALPHABET=95, PETRI_DIFFERENCE_MINUEND_FLOW=23625, PETRI_DIFFERENCE_MINUEND_PLACES=405, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=1582, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1138, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=405, PETRI_DIFFERENCE_SUBTRAHEND_STATES=64, PETRI_FLOW=30545, PETRI_PLACES=489, PETRI_TRANSITIONS=1750} [2022-12-06 00:26:49,925 INFO L294 CegarLoopForPetriNet]: 32 programPoint places, 457 predicate places. [2022-12-06 00:26:49,925 WARN L163 eatedLiptonReduction]: Counterexample is not a run of mAbstraction. Replaying acceptance of the word... [2022-12-06 00:26:49,925 INFO L89 Accepts]: Start accepts. Operand has 489 places, 1750 transitions, 30545 flow [2022-12-06 00:26:49,931 INFO L95 Accepts]: Finished accepts. [2022-12-06 00:26:49,931 INFO L195 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-12-06 00:26:49,931 INFO L167 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 489 places, 1750 transitions, 30545 flow [2022-12-06 00:26:49,943 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 488 places, 1750 transitions, 30545 flow [2022-12-06 00:26:53,207 INFO L130 PetriNetUnfolder]: 4575/12320 cut-off events. [2022-12-06 00:26:53,207 INFO L131 PetriNetUnfolder]: For 606683/610352 co-relation queries the response was YES. [2022-12-06 00:26:53,339 INFO L83 FinitePrefix]: Finished finitePrefix Result has 105218 conditions, 12320 events. 4575/12320 cut-off events. For 606683/610352 co-relation queries the response was YES. Maximal size of possible extension queue 1334. Compared 147498 event pairs, 1178 based on Foata normal form. 91/11536 useless extension candidates. Maximal degree in co-relation 105030. Up to 4091 conditions per place. [2022-12-06 00:26:53,474 INFO L184 LiptonReduction]: Starting Lipton reduction on Petri net that has 488 places, 1750 transitions, 30545 flow [2022-12-06 00:26:53,474 INFO L188 LiptonReduction]: Number of co-enabled transitions 9924 [2022-12-06 00:26:53,483 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 00:26:53,584 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 00:26:53,633 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [641] L55-->L48-4: Formula: (let ((.cse0 (select |v_#memory_int_340| v_~queue~0.base_186))) (and (= v_~v_assert~0_269 |v_thread1Thread1of1ForFork1_~cond~0#1_234|) (= (+ v_~back~0_273 2) v_~back~0_271) (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_86| 0)) (not (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_234| 256) 0)) (not (= (ite (and (< v_~back~0_271 (+ v_~n~0_182 1)) (<= 1 v_~back~0_271)) 1 0) 0)) (= (+ |v_thread1Thread1of1ForFork1_~w~0#1_274| 2) |v_thread1Thread1of1ForFork1_~w~0#1_276|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_86| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_86|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_86| (ite (= (select .cse0 (+ (* v_~back~0_271 4) (- 4) v_~queue~0.offset_186)) 1) 1 0)) (not (= (ite (= (select .cse0 (+ v_~queue~0.offset_186 (* v_~back~0_273 4))) 1) 1 0) 0)) (< 1 |v_thread1Thread1of1ForFork1_~w~0#1_276|) (not (= (ite (and (< v_~back~0_273 v_~n~0_182) (<= 0 v_~back~0_273)) 1 0) 0)))) InVars {~queue~0.offset=v_~queue~0.offset_186, ~v_assert~0=v_~v_assert~0_269, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_276|, ~back~0=v_~back~0_273, #memory_int=|v_#memory_int_340|, ~queue~0.base=v_~queue~0.base_186, ~n~0=v_~n~0_182} OutVars{~queue~0.offset=v_~queue~0.offset_186, ~back~0=v_~back~0_271, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_86|, ~queue~0.base=v_~queue~0.base_186, ~v_assert~0=v_~v_assert~0_269, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_94|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_86|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_86|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_274|, #memory_int=|v_#memory_int_340|, ~n~0=v_~n~0_182, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_234|, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_86|} 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 [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 00:26:53,728 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [641] L55-->L48-4: Formula: (let ((.cse0 (select |v_#memory_int_340| v_~queue~0.base_186))) (and (= v_~v_assert~0_269 |v_thread1Thread1of1ForFork1_~cond~0#1_234|) (= (+ v_~back~0_273 2) v_~back~0_271) (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_86| 0)) (not (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_234| 256) 0)) (not (= (ite (and (< v_~back~0_271 (+ v_~n~0_182 1)) (<= 1 v_~back~0_271)) 1 0) 0)) (= (+ |v_thread1Thread1of1ForFork1_~w~0#1_274| 2) |v_thread1Thread1of1ForFork1_~w~0#1_276|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_86| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_86|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_86| (ite (= (select .cse0 (+ (* v_~back~0_271 4) (- 4) v_~queue~0.offset_186)) 1) 1 0)) (not (= (ite (= (select .cse0 (+ v_~queue~0.offset_186 (* v_~back~0_273 4))) 1) 1 0) 0)) (< 1 |v_thread1Thread1of1ForFork1_~w~0#1_276|) (not (= (ite (and (< v_~back~0_273 v_~n~0_182) (<= 0 v_~back~0_273)) 1 0) 0)))) InVars {~queue~0.offset=v_~queue~0.offset_186, ~v_assert~0=v_~v_assert~0_269, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_276|, ~back~0=v_~back~0_273, #memory_int=|v_#memory_int_340|, ~queue~0.base=v_~queue~0.base_186, ~n~0=v_~n~0_182} OutVars{~queue~0.offset=v_~queue~0.offset_186, ~back~0=v_~back~0_271, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_86|, ~queue~0.base=v_~queue~0.base_186, ~v_assert~0=v_~v_assert~0_269, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_94|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_86|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_86|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_274|, #memory_int=|v_#memory_int_340|, ~n~0=v_~n~0_182, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_234|, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_86|} 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 00:26:53,845 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [641] L55-->L48-4: Formula: (let ((.cse0 (select |v_#memory_int_340| v_~queue~0.base_186))) (and (= v_~v_assert~0_269 |v_thread1Thread1of1ForFork1_~cond~0#1_234|) (= (+ v_~back~0_273 2) v_~back~0_271) (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_86| 0)) (not (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_234| 256) 0)) (not (= (ite (and (< v_~back~0_271 (+ v_~n~0_182 1)) (<= 1 v_~back~0_271)) 1 0) 0)) (= (+ |v_thread1Thread1of1ForFork1_~w~0#1_274| 2) |v_thread1Thread1of1ForFork1_~w~0#1_276|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_86| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_86|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_86| (ite (= (select .cse0 (+ (* v_~back~0_271 4) (- 4) v_~queue~0.offset_186)) 1) 1 0)) (not (= (ite (= (select .cse0 (+ v_~queue~0.offset_186 (* v_~back~0_273 4))) 1) 1 0) 0)) (< 1 |v_thread1Thread1of1ForFork1_~w~0#1_276|) (not (= (ite (and (< v_~back~0_273 v_~n~0_182) (<= 0 v_~back~0_273)) 1 0) 0)))) InVars {~queue~0.offset=v_~queue~0.offset_186, ~v_assert~0=v_~v_assert~0_269, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_276|, ~back~0=v_~back~0_273, #memory_int=|v_#memory_int_340|, ~queue~0.base=v_~queue~0.base_186, ~n~0=v_~n~0_182} OutVars{~queue~0.offset=v_~queue~0.offset_186, ~back~0=v_~back~0_271, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_86|, ~queue~0.base=v_~queue~0.base_186, ~v_assert~0=v_~v_assert~0_269, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_94|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_86|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_86|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_274|, #memory_int=|v_#memory_int_340|, ~n~0=v_~n~0_182, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_234|, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_86|} 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 [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 00:26:53,962 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 00:26:59,155 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 00:26:59,416 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 00:26:59,634 INFO L203 LiptonReduction]: Total number of compositions: 9 [2022-12-06 00:26:59,634 INFO L143 eatedLiptonReduction]: Time needed for LBE in milliseconds: 9709 [2022-12-06 00:26:59,634 INFO L495 AbstractCegarLoop]: Abstraction has has 487 places, 1749 transitions, 30649 flow [2022-12-06 00:26:59,635 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 00:26:59,635 INFO L205 CegarLoopForPetriNet]: Found error trace [2022-12-06 00:26:59,635 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 00:26:59,640 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 00:26:59,840 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 00:26:59,840 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 00:26:59,840 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-12-06 00:26:59,840 INFO L85 PathProgramCache]: Analyzing trace with hash -1330647286, now seen corresponding path program 1 times [2022-12-06 00:26:59,840 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-12-06 00:26:59,841 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [831111193] [2022-12-06 00:26:59,841 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 00:26:59,841 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-12-06 00:26:59,862 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 00:27:00,347 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 00:27:00,347 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-12-06 00:27:00,347 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [831111193] [2022-12-06 00:27:00,348 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [831111193] provided 0 perfect and 1 imperfect interpolant sequences [2022-12-06 00:27:00,348 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [614959566] [2022-12-06 00:27:00,348 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 00:27:00,348 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-12-06 00:27:00,348 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-12-06 00:27:00,349 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 00:27:00,354 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 00:27:00,440 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 00:27:00,441 INFO L263 TraceCheckSpWp]: Trace formula consists of 260 conjuncts, 38 conjunts are in the unsatisfiable core [2022-12-06 00:27:00,443 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-12-06 00:27:00,496 INFO L321 Elim1Store]: treesize reduction 9, result has 25.0 percent of original size [2022-12-06 00:27:00,497 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 10 [2022-12-06 00:27:00,573 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 00:27:00,635 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 00:27:00,635 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-12-06 00:27:00,709 INFO L321 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-12-06 00:27:00,709 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 00:27:00,770 INFO L321 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-12-06 00:27:00,770 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 00:27:00,835 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 00:27:00,836 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [614959566] provided 0 perfect and 2 imperfect interpolant sequences [2022-12-06 00:27:00,836 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-12-06 00:27:00,836 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10, 10] total 26 [2022-12-06 00:27:00,836 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1395664776] [2022-12-06 00:27:00,836 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-12-06 00:27:00,836 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 27 states [2022-12-06 00:27:00,836 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-12-06 00:27:00,837 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2022-12-06 00:27:00,837 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=87, Invalid=615, Unknown=0, NotChecked=0, Total=702 [2022-12-06 00:27:00,837 INFO L490 CegarLoopForPetriNet]: Number of universal loopers: 0 out of 108 [2022-12-06 00:27:00,837 INFO L100 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 487 places, 1749 transitions, 30649 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 00:27:00,837 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-12-06 00:27:00,837 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 0 of 108 [2022-12-06 00:27:00,837 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-12-06 00:27:21,431 INFO L130 PetriNetUnfolder]: 19658/34971 cut-off events. [2022-12-06 00:27:21,431 INFO L131 PetriNetUnfolder]: For 1625319/1625319 co-relation queries the response was YES. [2022-12-06 00:27:22,066 INFO L83 FinitePrefix]: Finished finitePrefix Result has 317237 conditions, 34971 events. 19658/34971 cut-off events. For 1625319/1625319 co-relation queries the response was YES. Maximal size of possible extension queue 1925. Compared 317002 event pairs, 4316 based on Foata normal form. 96/35061 useless extension candidates. Maximal degree in co-relation 316990. Up to 12430 conditions per place. [2022-12-06 00:27:22,279 INFO L137 encePairwiseOnDemand]: 11/108 looper letters, 1256 selfloop transitions, 1254 changer transitions 66/2576 dead transitions. [2022-12-06 00:27:22,279 INFO L142 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 554 places, 2576 transitions, 48009 flow [2022-12-06 00:27:22,279 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 68 states. [2022-12-06 00:27:22,280 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 68 states. [2022-12-06 00:27:22,281 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 548 transitions. [2022-12-06 00:27:22,281 INFO L535 CegarLoopForPetriNet]: DFA transition density 0.07461873638344227 [2022-12-06 00:27:22,282 INFO L175 Difference]: Start difference. First operand has 487 places, 1749 transitions, 30649 flow. Second operand 68 states and 548 transitions. [2022-12-06 00:27:22,282 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 554 places, 2576 transitions, 48009 flow [2022-12-06 00:27:48,715 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 534 places, 2576 transitions, 47323 flow, removed 172 selfloop flow, removed 20 redundant places. [2022-12-06 00:27:48,753 INFO L231 Difference]: Finished difference. Result has 561 places, 1970 transitions, 38536 flow [2022-12-06 00:27:48,754 INFO L276 CegarLoopForPetriNet]: {PETRI_ALPHABET=108, PETRI_DIFFERENCE_MINUEND_FLOW=30142, PETRI_DIFFERENCE_MINUEND_PLACES=467, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=1749, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1038, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=670, PETRI_DIFFERENCE_SUBTRAHEND_STATES=68, PETRI_FLOW=38536, PETRI_PLACES=561, PETRI_TRANSITIONS=1970} [2022-12-06 00:27:48,755 INFO L294 CegarLoopForPetriNet]: 32 programPoint places, 529 predicate places. [2022-12-06 00:27:48,755 WARN L163 eatedLiptonReduction]: Counterexample is not a run of mAbstraction. Replaying acceptance of the word... [2022-12-06 00:27:48,755 INFO L89 Accepts]: Start accepts. Operand has 561 places, 1970 transitions, 38536 flow [2022-12-06 00:27:48,765 INFO L95 Accepts]: Finished accepts. [2022-12-06 00:27:48,766 INFO L195 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-12-06 00:27:48,766 INFO L167 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 561 places, 1970 transitions, 38536 flow [2022-12-06 00:27:48,782 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 559 places, 1970 transitions, 38536 flow [2022-12-06 00:27:53,027 INFO L130 PetriNetUnfolder]: 5019/13820 cut-off events. [2022-12-06 00:27:53,027 INFO L131 PetriNetUnfolder]: For 747273/751230 co-relation queries the response was YES. [2022-12-06 00:27:53,184 INFO L83 FinitePrefix]: Finished finitePrefix Result has 124457 conditions, 13820 events. 5019/13820 cut-off events. For 747273/751230 co-relation queries the response was YES. Maximal size of possible extension queue 1497. Compared 170023 event pairs, 1326 based on Foata normal form. 113/12992 useless extension candidates. Maximal degree in co-relation 124281. Up to 4576 conditions per place. [2022-12-06 00:27:53,438 INFO L184 LiptonReduction]: Starting Lipton reduction on Petri net that has 559 places, 1970 transitions, 38536 flow [2022-12-06 00:27:53,438 INFO L188 LiptonReduction]: Number of co-enabled transitions 11014 [2022-12-06 00:27:53,487 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 [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 00:27:53,618 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 [658] L48-4-->L78: Formula: (and (= (+ |v_#pthreadsForks_228| 1) |v_#pthreadsForks_227|) (= (store |v_#memory_int_410| |v_ULTIMATE.start_main_~#t3~0#1.base_112| (store (select |v_#memory_int_410| |v_ULTIMATE.start_main_~#t3~0#1.base_112|) |v_ULTIMATE.start_main_~#t3~0#1.offset_111| |v_ULTIMATE.start_main_#t~pre14#1_115|)) |v_#memory_int_409|) (= |v_ULTIMATE.start_main_#t~pre14#1_115| |v_#pthreadsForks_228|) (= (+ |v_thread2Thread1of1ForFork2_~temp~0#1_201| v_~d~0_223) v_~d~0_222) (let ((.cse0 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_331|)) (.cse1 (= |v_thread1Thread1of1ForFork1_#res#1.base_109| 0)) (.cse2 (= |v_thread1Thread1of1ForFork1_#res#1.offset_109| 0))) (or (and (= v_~v_assert~0_302 |v_thread1Thread1of1ForFork1_~cond~0#1_256|) .cse0 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_256| 256) 0) .cse1 .cse2) (and (= |v_thread1Thread1of1ForFork1_~cond~0#1_257| |v_thread1Thread1of1ForFork1_~cond~0#1_256|) (not .cse0) .cse1 .cse2)))) InVars {~v_assert~0=v_~v_assert~0_302, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_201|, #pthreadsForks=|v_#pthreadsForks_228|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_111|, ~d~0=v_~d~0_223, #memory_int=|v_#memory_int_410|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_331|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_112|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_257|} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_201|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_111|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_112|, ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_127|, ~v_assert~0=v_~v_assert~0_302, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_115|, #pthreadsForks=|v_#pthreadsForks_227|, ~d~0=v_~d~0_222, #memory_int=|v_#memory_int_409|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_99|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_331|, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_109|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_109|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_256|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre12#1, ULTIMATE.start_main_#t~pre14#1, #pthreadsForks, ~d~0, #memory_int, ULTIMATE.start_main_#t~nondet13#1, thread1Thread1of1ForFork1_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1] [2022-12-06 00:27:53,775 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 [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 00:27:53,954 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 00:27:54,120 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 00:27:54,433 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [645] L55-->L75: Formula: (let ((.cse0 (select |v_#memory_int_350| v_~queue~0.base_194))) (and (= (+ |v_thread1Thread1of1ForFork1_~w~0#1_284| 1) |v_thread1Thread1of1ForFork1_~w~0#1_285|) (not (= (mod |v_thread2Thread1of1ForFork2_~cond~1#1_126| 256) 0)) (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_92| 0)) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_92| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_92|) (= (ite (and (<= 0 v_~front~0_206) (< v_~front~0_206 v_~n~0_190) (< v_~front~0_206 v_~back~0_285)) 1 0) |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_73|) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_73| |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_73|) (= |v_thread2Thread1of1ForFork2_~temp~0#1_172| (select .cse0 (+ (* v_~front~0_206 4) v_~queue~0.offset_194))) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_92| (ite (= (select .cse0 (+ (* v_~back~0_286 4) v_~queue~0.offset_194)) 1) 1 0)) (not (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_73| 0)) (not (= (ite (and (<= 0 v_~back~0_286) (< v_~back~0_286 v_~n~0_190)) 1 0) 0)) (= v_~front~0_205 (+ v_~front~0_206 1)) (= v_~back~0_285 (+ v_~back~0_286 1)))) InVars {thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_126|, ~queue~0.offset=v_~queue~0.offset_194, #memory_int=|v_#memory_int_350|, ~back~0=v_~back~0_286, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_285|, ~queue~0.base=v_~queue~0.base_194, ~n~0=v_~n~0_190, ~front~0=v_~front~0_206} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_126|, ~queue~0.offset=v_~queue~0.offset_194, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_172|, ~back~0=v_~back~0_285, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_92|, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_73|, ~queue~0.base=v_~queue~0.base_194, thread2Thread1of1ForFork2_#t~post5#1=|v_thread2Thread1of1ForFork2_#t~post5#1_73|, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_73|, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_100|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_92|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_92|, thread2Thread1of1ForFork2_#t~mem4#1=|v_thread2Thread1of1ForFork2_#t~mem4#1_73|, #memory_int=|v_#memory_int_350|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_284|, ~n~0=v_~n~0_190, ~front~0=v_~front~0_205, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_92|} 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 00:27:54,905 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 00:27:54,981 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [669] L55-->L81: Formula: (let ((.cse0 (select |v_#memory_int_449| v_~queue~0.base_236))) (and (not (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_288| 256) 0)) (not (= (ite (and (<= 1 v_~back~0_368) (< v_~back~0_368 (+ v_~n~0_229 1))) 1 0) 0)) (not (= (ite (and (< v_~back~0_369 v_~n~0_229) (<= 0 v_~back~0_369)) 1 0) 0)) (= |v_thread1Thread1of1ForFork1_~w~0#1_376| (+ |v_thread1Thread1of1ForFork1_~w~0#1_375| 2)) (= v_~v_assert~0_319 |v_thread2Thread1of1ForFork2_~cond~1#1_163|) (not (= 0 (ite (= (select .cse0 (+ v_~queue~0.offset_236 (* v_~back~0_369 4))) 1) 1 0))) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_138| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_138|) (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_138| 0)) (= v_~back~0_368 (+ v_~back~0_369 2)) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_138| (ite (= (select .cse0 (+ (- 4) (* v_~back~0_368 4) v_~queue~0.offset_236)) 1) 1 0)) (= v_~v_assert~0_319 |v_thread1Thread1of1ForFork1_~cond~0#1_288|) (< 1 |v_thread1Thread1of1ForFork1_~w~0#1_376|))) InVars {~v_assert~0=v_~v_assert~0_319, ~queue~0.offset=v_~queue~0.offset_236, ~back~0=v_~back~0_369, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_376|, #memory_int=|v_#memory_int_449|, ~queue~0.base=v_~queue~0.base_236, ~n~0=v_~n~0_229} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_163|, ~queue~0.offset=v_~queue~0.offset_236, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_226|, ~back~0=v_~back~0_368, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_138|, ~queue~0.base=v_~queue~0.base_236, ~v_assert~0=v_~v_assert~0_319, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_146|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_138|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_138|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_375|, #memory_int=|v_#memory_int_449|, ~n~0=v_~n~0_229, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_288|, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_138|} 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_~cond~0#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 00:27:56,111 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [669] L55-->L81: Formula: (let ((.cse0 (select |v_#memory_int_449| v_~queue~0.base_236))) (and (not (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_288| 256) 0)) (not (= (ite (and (<= 1 v_~back~0_368) (< v_~back~0_368 (+ v_~n~0_229 1))) 1 0) 0)) (not (= (ite (and (< v_~back~0_369 v_~n~0_229) (<= 0 v_~back~0_369)) 1 0) 0)) (= |v_thread1Thread1of1ForFork1_~w~0#1_376| (+ |v_thread1Thread1of1ForFork1_~w~0#1_375| 2)) (= v_~v_assert~0_319 |v_thread2Thread1of1ForFork2_~cond~1#1_163|) (not (= 0 (ite (= (select .cse0 (+ v_~queue~0.offset_236 (* v_~back~0_369 4))) 1) 1 0))) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_138| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_138|) (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_138| 0)) (= v_~back~0_368 (+ v_~back~0_369 2)) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_138| (ite (= (select .cse0 (+ (- 4) (* v_~back~0_368 4) v_~queue~0.offset_236)) 1) 1 0)) (= v_~v_assert~0_319 |v_thread1Thread1of1ForFork1_~cond~0#1_288|) (< 1 |v_thread1Thread1of1ForFork1_~w~0#1_376|))) InVars {~v_assert~0=v_~v_assert~0_319, ~queue~0.offset=v_~queue~0.offset_236, ~back~0=v_~back~0_369, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_376|, #memory_int=|v_#memory_int_449|, ~queue~0.base=v_~queue~0.base_236, ~n~0=v_~n~0_229} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_163|, ~queue~0.offset=v_~queue~0.offset_236, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_226|, ~back~0=v_~back~0_368, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_138|, ~queue~0.base=v_~queue~0.base_236, ~v_assert~0=v_~v_assert~0_319, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_146|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_138|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_138|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_375|, #memory_int=|v_#memory_int_449|, ~n~0=v_~n~0_229, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_288|, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_138|} 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_~cond~0#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] and [685] L48-4-->L75: Formula: (and (let ((.cse1 (= |v_thread1Thread1of1ForFork1_#res#1.base_131| 0)) (.cse0 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_426|)) (.cse2 (= |v_thread1Thread1of1ForFork1_#res#1.offset_131| 0))) (or (and (not .cse0) .cse1 .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_319| |v_thread1Thread1of1ForFork1_~cond~0#1_318|)) (and .cse1 .cse0 .cse2 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_318| 256) 0) (= v_~v_assert~0_344 |v_thread1Thread1of1ForFork1_~cond~0#1_318|)))) (= (+ v_~front~0_271 1) v_~front~0_270) (= |v_thread2Thread1of1ForFork2_~temp~0#1_243| (select (select |v_#memory_int_505| v_~queue~0.base_270) (+ (* v_~front~0_271 4) v_~queue~0.offset_270))) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_108| |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_108|) (not (= (mod |v_thread2Thread1of1ForFork2_~cond~1#1_179| 256) 0)) (= (ite (and (< v_~front~0_271 v_~back~0_425) (< v_~front~0_271 v_~n~0_261) (<= 0 v_~front~0_271)) 1 0) |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_108|) (not (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_108| 0))) InVars {thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_179|, ~queue~0.offset=v_~queue~0.offset_270, ~v_assert~0=v_~v_assert~0_344, #memory_int=|v_#memory_int_505|, ~back~0=v_~back~0_425, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_426|, ~queue~0.base=v_~queue~0.base_270, ~n~0=v_~n~0_261, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_319|, ~front~0=v_~front~0_271} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_179|, ~queue~0.offset=v_~queue~0.offset_270, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_243|, ~back~0=v_~back~0_425, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_108|, ~queue~0.base=v_~queue~0.base_270, ~v_assert~0=v_~v_assert~0_344, thread2Thread1of1ForFork2_#t~post5#1=|v_thread2Thread1of1ForFork2_#t~post5#1_108|, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_108|, thread2Thread1of1ForFork2_#t~mem4#1=|v_thread2Thread1of1ForFork2_#t~mem4#1_108|, #memory_int=|v_#memory_int_505|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_426|, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_131|, ~n~0=v_~n~0_261, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_131|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_318|, ~front~0=v_~front~0_270} 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_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1, ~front~0] [2022-12-06 00:27:56,384 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [669] L55-->L81: Formula: (let ((.cse0 (select |v_#memory_int_449| v_~queue~0.base_236))) (and (not (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_288| 256) 0)) (not (= (ite (and (<= 1 v_~back~0_368) (< v_~back~0_368 (+ v_~n~0_229 1))) 1 0) 0)) (not (= (ite (and (< v_~back~0_369 v_~n~0_229) (<= 0 v_~back~0_369)) 1 0) 0)) (= |v_thread1Thread1of1ForFork1_~w~0#1_376| (+ |v_thread1Thread1of1ForFork1_~w~0#1_375| 2)) (= v_~v_assert~0_319 |v_thread2Thread1of1ForFork2_~cond~1#1_163|) (not (= 0 (ite (= (select .cse0 (+ v_~queue~0.offset_236 (* v_~back~0_369 4))) 1) 1 0))) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_138| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_138|) (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_138| 0)) (= v_~back~0_368 (+ v_~back~0_369 2)) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_138| (ite (= (select .cse0 (+ (- 4) (* v_~back~0_368 4) v_~queue~0.offset_236)) 1) 1 0)) (= v_~v_assert~0_319 |v_thread1Thread1of1ForFork1_~cond~0#1_288|) (< 1 |v_thread1Thread1of1ForFork1_~w~0#1_376|))) InVars {~v_assert~0=v_~v_assert~0_319, ~queue~0.offset=v_~queue~0.offset_236, ~back~0=v_~back~0_369, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_376|, #memory_int=|v_#memory_int_449|, ~queue~0.base=v_~queue~0.base_236, ~n~0=v_~n~0_229} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_163|, ~queue~0.offset=v_~queue~0.offset_236, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_226|, ~back~0=v_~back~0_368, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_138|, ~queue~0.base=v_~queue~0.base_236, ~v_assert~0=v_~v_assert~0_319, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_146|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_138|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_138|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_375|, #memory_int=|v_#memory_int_449|, ~n~0=v_~n~0_229, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_288|, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_138|} 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_~cond~0#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] and [686] L48-4-->L110-3: Formula: (and (= (store |v_#memory_int_508| |v_ULTIMATE.start_main_~#t3~0#1.base_134| (store (select |v_#memory_int_508| |v_ULTIMATE.start_main_~#t3~0#1.base_134|) |v_ULTIMATE.start_main_~#t3~0#1.offset_133| |v_ULTIMATE.start_main_#t~pre14#1_145|)) |v_#memory_int_507|) (= (+ |v_#pthreadsForks_292| 1) |v_#pthreadsForks_291|) (let ((.cse1 (= |v_thread1Thread1of1ForFork1_#res#1.base_133| 0)) (.cse2 (= |v_thread1Thread1of1ForFork1_#res#1.offset_133| 0)) (.cse0 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_428|))) (or (and (not .cse0) (= |v_thread1Thread1of1ForFork1_~cond~0#1_323| |v_thread1Thread1of1ForFork1_~cond~0#1_322|) .cse1 .cse2) (and .cse1 (= v_~v_assert~0_346 |v_thread1Thread1of1ForFork1_~cond~0#1_322|) (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_322| 256) 0) .cse2 .cse0))) (= |v_ULTIMATE.start_main_#t~pre14#1_145| |v_#pthreadsForks_292|)) InVars {~v_assert~0=v_~v_assert~0_346, #pthreadsForks=|v_#pthreadsForks_292|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_133|, #memory_int=|v_#memory_int_508|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_428|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_134|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_323|} OutVars{ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_165|, ~v_assert~0=v_~v_assert~0_346, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_145|, #pthreadsForks=|v_#pthreadsForks_291|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_133|, #memory_int=|v_#memory_int_507|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_125|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_428|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_134|, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_133|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_133|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_322|} 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] [2022-12-06 00:27:56,589 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [669] L55-->L81: Formula: (let ((.cse0 (select |v_#memory_int_449| v_~queue~0.base_236))) (and (not (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_288| 256) 0)) (not (= (ite (and (<= 1 v_~back~0_368) (< v_~back~0_368 (+ v_~n~0_229 1))) 1 0) 0)) (not (= (ite (and (< v_~back~0_369 v_~n~0_229) (<= 0 v_~back~0_369)) 1 0) 0)) (= |v_thread1Thread1of1ForFork1_~w~0#1_376| (+ |v_thread1Thread1of1ForFork1_~w~0#1_375| 2)) (= v_~v_assert~0_319 |v_thread2Thread1of1ForFork2_~cond~1#1_163|) (not (= 0 (ite (= (select .cse0 (+ v_~queue~0.offset_236 (* v_~back~0_369 4))) 1) 1 0))) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_138| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_138|) (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_138| 0)) (= v_~back~0_368 (+ v_~back~0_369 2)) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_138| (ite (= (select .cse0 (+ (- 4) (* v_~back~0_368 4) v_~queue~0.offset_236)) 1) 1 0)) (= v_~v_assert~0_319 |v_thread1Thread1of1ForFork1_~cond~0#1_288|) (< 1 |v_thread1Thread1of1ForFork1_~w~0#1_376|))) InVars {~v_assert~0=v_~v_assert~0_319, ~queue~0.offset=v_~queue~0.offset_236, ~back~0=v_~back~0_369, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_376|, #memory_int=|v_#memory_int_449|, ~queue~0.base=v_~queue~0.base_236, ~n~0=v_~n~0_229} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_163|, ~queue~0.offset=v_~queue~0.offset_236, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_226|, ~back~0=v_~back~0_368, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_138|, ~queue~0.base=v_~queue~0.base_236, ~v_assert~0=v_~v_assert~0_319, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_146|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_138|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_138|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_375|, #memory_int=|v_#memory_int_449|, ~n~0=v_~n~0_229, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_288|, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_138|} 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_~cond~0#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] and [690] L48-4-->L78: Formula: (and (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_114| |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_114|) (= |v_thread2Thread1of1ForFork2_~temp~0#1_249| (select (select |v_#memory_int_517| v_~queue~0.base_278) (+ v_~queue~0.offset_278 (* v_~front~0_283 4)))) (= (+ |v_thread2Thread1of1ForFork2_~temp~0#1_249| v_~d~0_297) v_~d~0_296) (not (= (mod |v_thread2Thread1of1ForFork2_~cond~1#1_185| 256) 0)) (let ((.cse1 (= |v_thread1Thread1of1ForFork1_#res#1.offset_139| 0)) (.cse0 (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_442|)) (.cse2 (= |v_thread1Thread1of1ForFork1_#res#1.base_139| 0))) (or (and .cse0 (= v_~v_assert~0_352 |v_thread1Thread1of1ForFork1_~cond~0#1_334|) .cse1 .cse2 (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_334| 256) 0)) (and .cse1 (not .cse0) .cse2 (= |v_thread1Thread1of1ForFork1_~cond~0#1_335| |v_thread1Thread1of1ForFork1_~cond~0#1_334|)))) (= v_~front~0_282 (+ v_~front~0_283 1)) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_114| (ite (and (<= 0 v_~front~0_283) (< v_~front~0_283 v_~back~0_439) (< v_~front~0_283 v_~n~0_269)) 1 0)) (not (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_114| 0))) InVars {thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_185|, ~queue~0.offset=v_~queue~0.offset_278, ~v_assert~0=v_~v_assert~0_352, ~d~0=v_~d~0_297, ~back~0=v_~back~0_439, #memory_int=|v_#memory_int_517|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_442|, ~queue~0.base=v_~queue~0.base_278, ~n~0=v_~n~0_269, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_335|, ~front~0=v_~front~0_283} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_185|, ~queue~0.offset=v_~queue~0.offset_278, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_249|, ~back~0=v_~back~0_439, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_114|, ~queue~0.base=v_~queue~0.base_278, ~v_assert~0=v_~v_assert~0_352, thread2Thread1of1ForFork2_#t~post5#1=|v_thread2Thread1of1ForFork2_#t~post5#1_114|, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_114|, ~d~0=v_~d~0_296, thread2Thread1of1ForFork2_#t~mem4#1=|v_thread2Thread1of1ForFork2_#t~mem4#1_114|, #memory_int=|v_#memory_int_517|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_442|, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_139|, ~n~0=v_~n~0_269, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_139|, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_334|, ~front~0=v_~front~0_282} 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_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#1, ~front~0] [2022-12-06 00:27:56,900 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [669] L55-->L81: Formula: (let ((.cse0 (select |v_#memory_int_449| v_~queue~0.base_236))) (and (not (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_288| 256) 0)) (not (= (ite (and (<= 1 v_~back~0_368) (< v_~back~0_368 (+ v_~n~0_229 1))) 1 0) 0)) (not (= (ite (and (< v_~back~0_369 v_~n~0_229) (<= 0 v_~back~0_369)) 1 0) 0)) (= |v_thread1Thread1of1ForFork1_~w~0#1_376| (+ |v_thread1Thread1of1ForFork1_~w~0#1_375| 2)) (= v_~v_assert~0_319 |v_thread2Thread1of1ForFork2_~cond~1#1_163|) (not (= 0 (ite (= (select .cse0 (+ v_~queue~0.offset_236 (* v_~back~0_369 4))) 1) 1 0))) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_138| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_138|) (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_138| 0)) (= v_~back~0_368 (+ v_~back~0_369 2)) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_138| (ite (= (select .cse0 (+ (- 4) (* v_~back~0_368 4) v_~queue~0.offset_236)) 1) 1 0)) (= v_~v_assert~0_319 |v_thread1Thread1of1ForFork1_~cond~0#1_288|) (< 1 |v_thread1Thread1of1ForFork1_~w~0#1_376|))) InVars {~v_assert~0=v_~v_assert~0_319, ~queue~0.offset=v_~queue~0.offset_236, ~back~0=v_~back~0_369, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_376|, #memory_int=|v_#memory_int_449|, ~queue~0.base=v_~queue~0.base_236, ~n~0=v_~n~0_229} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_163|, ~queue~0.offset=v_~queue~0.offset_236, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_226|, ~back~0=v_~back~0_368, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_138|, ~queue~0.base=v_~queue~0.base_236, ~v_assert~0=v_~v_assert~0_319, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_146|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_138|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_138|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_375|, #memory_int=|v_#memory_int_449|, ~n~0=v_~n~0_229, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_288|, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_138|} 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_~cond~0#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1] and [691] L109-4-->L75: Formula: (and (= (store |v_#memory_int_520| |v_ULTIMATE.start_main_~#t3~0#1.base_136| (store (select |v_#memory_int_520| |v_ULTIMATE.start_main_~#t3~0#1.base_136|) |v_ULTIMATE.start_main_~#t3~0#1.offset_135| |v_ULTIMATE.start_main_#t~pre14#1_147|)) |v_#memory_int_519|) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_116| |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_116|) (= (+ v_~front~0_287 1) v_~front~0_286) (= |v_#pthreadsForks_295| (+ |v_#pthreadsForks_296| 1)) (= |v_ULTIMATE.start_main_#t~pre14#1_147| |v_#pthreadsForks_296|) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_116| (ite (and (< v_~front~0_287 v_~back~0_441) (< v_~front~0_287 v_~n~0_271) (<= 0 v_~front~0_287)) 1 0)) (not (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_116| 0)) (not (= (mod |v_thread2Thread1of1ForFork2_~cond~1#1_187| 256) 0)) (= |v_thread2Thread1of1ForFork2_~temp~0#1_251| (select (select |v_#memory_int_519| v_~queue~0.base_280) (+ v_~queue~0.offset_280 (* v_~front~0_287 4))))) InVars {thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_187|, ~queue~0.offset=v_~queue~0.offset_280, #pthreadsForks=|v_#pthreadsForks_296|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_135|, #memory_int=|v_#memory_int_520|, ~back~0=v_~back~0_441, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_136|, ~queue~0.base=v_~queue~0.base_280, ~n~0=v_~n~0_271, ~front~0=v_~front~0_287} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_187|, ~queue~0.offset=v_~queue~0.offset_280, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_251|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_135|, ~back~0=v_~back~0_441, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_136|, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_116|, ~queue~0.base=v_~queue~0.base_280, ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_167|, thread2Thread1of1ForFork2_#t~post5#1=|v_thread2Thread1of1ForFork2_#t~post5#1_116|, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_116|, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_147|, #pthreadsForks=|v_#pthreadsForks_295|, thread2Thread1of1ForFork2_#t~mem4#1=|v_thread2Thread1of1ForFork2_#t~mem4#1_116|, #memory_int=|v_#memory_int_519|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_127|, ~n~0=v_~n~0_271, ~front~0=v_~front~0_286} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre12#1, thread2Thread1of1ForFork2_~temp~0#1, thread2Thread1of1ForFork2_#t~post5#1, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1, ULTIMATE.start_main_#t~pre14#1, #pthreadsForks, thread2Thread1of1ForFork2_#t~mem4#1, #memory_int, ULTIMATE.start_main_#t~nondet13#1, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1, ~front~0] [2022-12-06 00:27:57,457 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [700] L55-->L75: Formula: (let ((.cse0 (select |v_#memory_int_546| v_~queue~0.base_298))) (and (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_130| (ite (and (< v_~front~0_315 v_~back~0_475) (<= 0 v_~front~0_315) (< v_~front~0_315 v_~n~0_289)) 1 0)) (= v_~v_assert~0_370 |v_thread1Thread1of1ForFork1_~cond~0#1_364|) (< 1 |v_thread1Thread1of1ForFork1_~w~0#1_477|) (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_130| |v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_130|) (= |v_thread1Thread1of1ForFork1_~w~0#1_477| (+ |v_thread1Thread1of1ForFork1_~w~0#1_476| 2)) (= (store |v_#memory_int_546| |v_ULTIMATE.start_main_~#t3~0#1.base_144| (store (select |v_#memory_int_546| |v_ULTIMATE.start_main_~#t3~0#1.base_144|) |v_ULTIMATE.start_main_~#t3~0#1.offset_143| |v_ULTIMATE.start_main_#t~pre14#1_155|)) |v_#memory_int_545|) (= v_~v_assert~0_370 |v_thread2Thread1of1ForFork2_~cond~1#1_205|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_185| (ite (= (select .cse0 (+ (* v_~back~0_475 4) (- 4) v_~queue~0.offset_298)) 1) 1 0)) (= (select (select |v_#memory_int_545| v_~queue~0.base_298) (+ (* v_~front~0_315 4) v_~queue~0.offset_298)) |v_thread2Thread1of1ForFork2_~temp~0#1_281|) (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_185| 0)) (not (= (ite (and (<= 0 v_~back~0_476) (< v_~back~0_476 v_~n~0_289)) 1 0) 0)) (= v_~back~0_475 (+ v_~back~0_476 2)) (= |v_ULTIMATE.start_main_#t~pre14#1_155| |v_#pthreadsForks_312|) (not (= |v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_130| 0)) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_185| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_185|) (not (= (ite (and (< v_~back~0_475 (+ v_~n~0_289 1)) (<= 1 v_~back~0_475)) 1 0) 0)) (not (= (ite (= (select .cse0 (+ (* v_~back~0_476 4) v_~queue~0.offset_298)) 1) 1 0) 0)) (not (= (mod |v_thread2Thread1of1ForFork2_~cond~1#1_205| 256) 0)) (= (+ v_~front~0_315 1) v_~front~0_314) (= (+ |v_#pthreadsForks_312| 1) |v_#pthreadsForks_311|))) InVars {~queue~0.offset=v_~queue~0.offset_298, ~v_assert~0=v_~v_assert~0_370, #pthreadsForks=|v_#pthreadsForks_312|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_143|, ~back~0=v_~back~0_476, #memory_int=|v_#memory_int_546|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_477|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_144|, ~queue~0.base=v_~queue~0.base_298, ~n~0=v_~n~0_289, ~front~0=v_~front~0_315} OutVars{thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_281|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_143|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_144|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_185|, thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_#in~cond#1_130|, ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_175|, thread2Thread1of1ForFork2_#t~post5#1=|v_thread2Thread1of1ForFork2_#t~post5#1_130|, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_193|, #pthreadsForks=|v_#pthreadsForks_311|, thread2Thread1of1ForFork2_#t~mem4#1=|v_thread2Thread1of1ForFork2_#t~mem4#1_130|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_135|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_476|, ~front~0=v_~front~0_314, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_185|, thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_205|, ~queue~0.offset=v_~queue~0.offset_298, ~back~0=v_~back~0_475, ~queue~0.base=v_~queue~0.base_298, ~v_assert~0=v_~v_assert~0_370, thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork2_assume_abort_if_not_~cond#1_130|, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_155|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_185|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_185|, #memory_int=|v_#memory_int_545|, ~n~0=v_~n~0_289, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_364|} 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, thread2Thread1of1ForFork2_#t~post5#1, thread1Thread1of1ForFork1_#t~post1#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, ULTIMATE.start_main_#t~nondet13#1, thread1Thread1of1ForFork1_~w~0#1, #memory_int, thread1Thread1of1ForFork1_~cond~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 00:27:58,066 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [687] L55-->thread1EXIT: Formula: (let ((.cse0 (select |v_#memory_int_511| v_~queue~0.base_272))) (and (= |v_thread1Thread1of1ForFork1_#res#1.offset_135| 0) (= |v_thread1Thread1of1ForFork1_#res#1.base_135| 0) (not (= (ite (= (select .cse0 (+ (* v_~back~0_428 4) v_~queue~0.offset_272)) 1) 1 0) 0)) (= (+ v_~back~0_428 2) v_~back~0_427) (not (= (ite (and (< v_~back~0_427 (+ v_~n~0_263 1)) (<= 1 v_~back~0_427)) 1 0) 0)) (not (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_430|)) (= (ite (= (select .cse0 (+ (- 4) v_~queue~0.offset_272 (* v_~back~0_427 4))) 1) 1 0) |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_163|) (= (+ |v_thread1Thread1of1ForFork1_~w~0#1_430| 2) |v_thread1Thread1of1ForFork1_~w~0#1_431|) (= v_~v_assert~0_348 |v_thread1Thread1of1ForFork1_~cond~0#1_326|) (not (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_326| 256) 0)) (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_163| 0)) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_163| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_163|) (< 1 |v_thread1Thread1of1ForFork1_~w~0#1_431|) (not (= 0 (ite (and (< v_~back~0_428 v_~n~0_263) (<= 0 v_~back~0_428)) 1 0))))) InVars {~v_assert~0=v_~v_assert~0_348, ~queue~0.offset=v_~queue~0.offset_272, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_431|, ~back~0=v_~back~0_428, #memory_int=|v_#memory_int_511|, ~queue~0.base=v_~queue~0.base_272, ~n~0=v_~n~0_263} OutVars{~queue~0.offset=v_~queue~0.offset_272, ~back~0=v_~back~0_427, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_163|, ~queue~0.base=v_~queue~0.base_272, ~v_assert~0=v_~v_assert~0_348, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_171|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_163|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_163|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_430|, #memory_int=|v_#memory_int_511|, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_135|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_135|, ~n~0=v_~n~0_263, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_326|, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_163|} 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_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#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 00:27:58,185 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [687] L55-->thread1EXIT: Formula: (let ((.cse0 (select |v_#memory_int_511| v_~queue~0.base_272))) (and (= |v_thread1Thread1of1ForFork1_#res#1.offset_135| 0) (= |v_thread1Thread1of1ForFork1_#res#1.base_135| 0) (not (= (ite (= (select .cse0 (+ (* v_~back~0_428 4) v_~queue~0.offset_272)) 1) 1 0) 0)) (= (+ v_~back~0_428 2) v_~back~0_427) (not (= (ite (and (< v_~back~0_427 (+ v_~n~0_263 1)) (<= 1 v_~back~0_427)) 1 0) 0)) (not (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_430|)) (= (ite (= (select .cse0 (+ (- 4) v_~queue~0.offset_272 (* v_~back~0_427 4))) 1) 1 0) |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_163|) (= (+ |v_thread1Thread1of1ForFork1_~w~0#1_430| 2) |v_thread1Thread1of1ForFork1_~w~0#1_431|) (= v_~v_assert~0_348 |v_thread1Thread1of1ForFork1_~cond~0#1_326|) (not (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_326| 256) 0)) (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_163| 0)) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_163| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_163|) (< 1 |v_thread1Thread1of1ForFork1_~w~0#1_431|) (not (= 0 (ite (and (< v_~back~0_428 v_~n~0_263) (<= 0 v_~back~0_428)) 1 0))))) InVars {~v_assert~0=v_~v_assert~0_348, ~queue~0.offset=v_~queue~0.offset_272, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_431|, ~back~0=v_~back~0_428, #memory_int=|v_#memory_int_511|, ~queue~0.base=v_~queue~0.base_272, ~n~0=v_~n~0_263} OutVars{~queue~0.offset=v_~queue~0.offset_272, ~back~0=v_~back~0_427, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_163|, ~queue~0.base=v_~queue~0.base_272, ~v_assert~0=v_~v_assert~0_348, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_171|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_163|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_163|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_430|, #memory_int=|v_#memory_int_511|, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_135|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_135|, ~n~0=v_~n~0_263, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_326|, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_163|} 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_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, thread1Thread1of1ForFork1_~cond~0#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 00:27:58,285 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [687] L55-->thread1EXIT: Formula: (let ((.cse0 (select |v_#memory_int_511| v_~queue~0.base_272))) (and (= |v_thread1Thread1of1ForFork1_#res#1.offset_135| 0) (= |v_thread1Thread1of1ForFork1_#res#1.base_135| 0) (not (= (ite (= (select .cse0 (+ (* v_~back~0_428 4) v_~queue~0.offset_272)) 1) 1 0) 0)) (= (+ v_~back~0_428 2) v_~back~0_427) (not (= (ite (and (< v_~back~0_427 (+ v_~n~0_263 1)) (<= 1 v_~back~0_427)) 1 0) 0)) (not (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_430|)) (= (ite (= (select .cse0 (+ (- 4) v_~queue~0.offset_272 (* v_~back~0_427 4))) 1) 1 0) |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_163|) (= (+ |v_thread1Thread1of1ForFork1_~w~0#1_430| 2) |v_thread1Thread1of1ForFork1_~w~0#1_431|) (= v_~v_assert~0_348 |v_thread1Thread1of1ForFork1_~cond~0#1_326|) (not (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_326| 256) 0)) (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_163| 0)) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_163| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_163|) (< 1 |v_thread1Thread1of1ForFork1_~w~0#1_431|) (not (= 0 (ite (and (< v_~back~0_428 v_~n~0_263) (<= 0 v_~back~0_428)) 1 0))))) InVars {~v_assert~0=v_~v_assert~0_348, ~queue~0.offset=v_~queue~0.offset_272, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_431|, ~back~0=v_~back~0_428, #memory_int=|v_#memory_int_511|, ~queue~0.base=v_~queue~0.base_272, ~n~0=v_~n~0_263} OutVars{~queue~0.offset=v_~queue~0.offset_272, ~back~0=v_~back~0_427, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_163|, ~queue~0.base=v_~queue~0.base_272, ~v_assert~0=v_~v_assert~0_348, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_171|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_163|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_163|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_430|, #memory_int=|v_#memory_int_511|, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_135|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_135|, ~n~0=v_~n~0_263, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_326|, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_163|} 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_#res#1.offset, thread1Thread1of1ForFork1_#res#1.base, 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 00:27:58,416 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [692] L55-->L110-3: Formula: (let ((.cse0 (select |v_#memory_int_524| v_~queue~0.base_282))) (and (= v_~v_assert~0_354 |v_thread1Thread1of1ForFork1_~cond~0#1_338|) (= v_~v_assert~0_354 |v_thread2Thread1of1ForFork2_~cond~1#1_189|) (not (= (ite (= (select .cse0 (+ (* v_~back~0_444 4) v_~queue~0.offset_282)) 1) 1 0) 0)) (not (= (ite (and (<= 0 v_~back~0_444) (< v_~back~0_444 v_~n~0_273)) 1 0) 0)) (= (+ v_~back~0_444 2) v_~back~0_443) (= |v_ULTIMATE.start_main_#t~pre14#1_149| |v_#pthreadsForks_300|) (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_169| 0)) (< 1 |v_thread1Thread1of1ForFork1_~w~0#1_445|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_169| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_169|) (= |v_thread1Thread1of1ForFork1_~w~0#1_445| (+ |v_thread1Thread1of1ForFork1_~w~0#1_444| 2)) (= (store |v_#memory_int_524| |v_ULTIMATE.start_main_~#t3~0#1.base_138| (store (select |v_#memory_int_524| |v_ULTIMATE.start_main_~#t3~0#1.base_138|) |v_ULTIMATE.start_main_~#t3~0#1.offset_137| |v_ULTIMATE.start_main_#t~pre14#1_149|)) |v_#memory_int_523|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_169| (ite (= (select .cse0 (+ (- 4) v_~queue~0.offset_282 (* v_~back~0_443 4))) 1) 1 0)) (not (= (ite (and (< v_~back~0_443 (+ v_~n~0_273 1)) (<= 1 v_~back~0_443)) 1 0) 0)) (not (= (mod |v_thread1Thread1of1ForFork1_~cond~0#1_338| 256) 0)) (= (+ |v_#pthreadsForks_300| 1) |v_#pthreadsForks_299|))) InVars {~queue~0.offset=v_~queue~0.offset_282, ~v_assert~0=v_~v_assert~0_354, #pthreadsForks=|v_#pthreadsForks_300|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_137|, #memory_int=|v_#memory_int_524|, ~back~0=v_~back~0_444, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_445|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_138|, ~queue~0.base=v_~queue~0.base_282, ~n~0=v_~n~0_273} OutVars{thread2Thread1of1ForFork2_~cond~1#1=|v_thread2Thread1of1ForFork2_~cond~1#1_189|, ~queue~0.offset=v_~queue~0.offset_282, thread2Thread1of1ForFork2_~temp~0#1=|v_thread2Thread1of1ForFork2_~temp~0#1_253|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_137|, ~back~0=v_~back~0_443, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_138|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_169|, ~queue~0.base=v_~queue~0.base_282, ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_169|, ~v_assert~0=v_~v_assert~0_354, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_177|, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_149|, #pthreadsForks=|v_#pthreadsForks_299|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_169|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_169|, #memory_int=|v_#memory_int_523|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_129|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_444|, ~n~0=v_~n~0_273, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_338|, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_169|} 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_~cond~0#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#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 00:27:58,702 INFO L203 LiptonReduction]: Total number of compositions: 13 [2022-12-06 00:27:58,703 INFO L143 eatedLiptonReduction]: Time needed for LBE in milliseconds: 9948 [2022-12-06 00:27:58,703 INFO L495 AbstractCegarLoop]: Abstraction has has 556 places, 1965 transitions, 38790 flow [2022-12-06 00:27:58,703 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 00:27:58,703 INFO L205 CegarLoopForPetriNet]: Found error trace [2022-12-06 00:27:58,703 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 00:27:58,708 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-12-06 00:27:58,908 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,SelfDestructingSolverStorable12 [2022-12-06 00:27:58,908 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 00:27:58,909 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-12-06 00:27:58,909 INFO L85 PathProgramCache]: Analyzing trace with hash -1842467611, now seen corresponding path program 1 times [2022-12-06 00:27:58,909 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-12-06 00:27:58,909 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [512982972] [2022-12-06 00:27:58,909 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 00:27:58,909 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-12-06 00:27:58,953 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 00:27:59,405 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 00:27:59,405 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-12-06 00:27:59,405 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [512982972] [2022-12-06 00:27:59,405 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [512982972] provided 0 perfect and 1 imperfect interpolant sequences [2022-12-06 00:27:59,406 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1735593882] [2022-12-06 00:27:59,406 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 00:27:59,406 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-12-06 00:27:59,406 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-12-06 00:27:59,420 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 00:27:59,500 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 00:27:59,557 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 00:27:59,558 INFO L263 TraceCheckSpWp]: Trace formula consists of 236 conjuncts, 30 conjunts are in the unsatisfiable core [2022-12-06 00:27:59,561 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-12-06 00:27:59,619 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-12-06 00:27:59,620 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 00:27:59,647 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-12-06 00:27:59,648 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 00:27:59,674 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 00:27:59,743 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 00:27:59,743 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-12-06 00:27:59,889 INFO L321 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-12-06 00:27:59,890 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 88 treesize of output 84 [2022-12-06 00:27:59,893 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 68 treesize of output 56 [2022-12-06 00:27:59,898 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 30 treesize of output 24 [2022-12-06 00:27:59,963 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 00:27:59,964 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1735593882] provided 0 perfect and 2 imperfect interpolant sequences [2022-12-06 00:27:59,964 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-12-06 00:27:59,964 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 9, 9] total 22 [2022-12-06 00:27:59,964 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [937200537] [2022-12-06 00:27:59,964 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-12-06 00:27:59,965 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 23 states [2022-12-06 00:27:59,966 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-12-06 00:27:59,966 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2022-12-06 00:27:59,966 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=88, Invalid=413, Unknown=5, NotChecked=0, Total=506 [2022-12-06 00:27:59,966 INFO L490 CegarLoopForPetriNet]: Number of universal loopers: 0 out of 129 [2022-12-06 00:27:59,966 INFO L100 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 556 places, 1965 transitions, 38790 flow. Second operand has 23 states, 23 states have (on average 2.1739130434782608) internal successors, (50), 22 states have internal predecessors, (50), 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 00:27:59,966 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-12-06 00:27:59,966 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 0 of 129 [2022-12-06 00:27:59,966 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-12-06 00:28:19,350 INFO L130 PetriNetUnfolder]: 19796/35271 cut-off events. [2022-12-06 00:28:19,350 INFO L131 PetriNetUnfolder]: For 1851595/1851595 co-relation queries the response was YES. [2022-12-06 00:28:20,440 INFO L83 FinitePrefix]: Finished finitePrefix Result has 337221 conditions, 35271 events. 19796/35271 cut-off events. For 1851595/1851595 co-relation queries the response was YES. Maximal size of possible extension queue 1950. Compared 321372 event pairs, 5260 based on Foata normal form. 96/35363 useless extension candidates. Maximal degree in co-relation 336914. Up to 14193 conditions per place. [2022-12-06 00:28:20,659 INFO L137 encePairwiseOnDemand]: 34/129 looper letters, 1182 selfloop transitions, 929 changer transitions 58/2169 dead transitions. [2022-12-06 00:28:20,660 INFO L142 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 573 places, 2169 transitions, 46570 flow [2022-12-06 00:28:20,660 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-12-06 00:28:20,660 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2022-12-06 00:28:20,661 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 258 transitions. [2022-12-06 00:28:20,661 INFO L535 CegarLoopForPetriNet]: DFA transition density 0.1111111111111111 [2022-12-06 00:28:20,661 INFO L175 Difference]: Start difference. First operand has 556 places, 1965 transitions, 38790 flow. Second operand 18 states and 258 transitions. [2022-12-06 00:28:20,661 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 573 places, 2169 transitions, 46570 flow [2022-12-06 00:28:54,960 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 555 places, 2169 transitions, 45514 flow, removed 283 selfloop flow, removed 18 redundant places. [2022-12-06 00:28:54,995 INFO L231 Difference]: Finished difference. Result has 560 places, 1965 transitions, 40705 flow [2022-12-06 00:28:54,996 INFO L276 CegarLoopForPetriNet]: {PETRI_ALPHABET=129, PETRI_DIFFERENCE_MINUEND_FLOW=37680, PETRI_DIFFERENCE_MINUEND_PLACES=538, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=1957, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=919, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=1031, PETRI_DIFFERENCE_SUBTRAHEND_STATES=18, PETRI_FLOW=40705, PETRI_PLACES=560, PETRI_TRANSITIONS=1965} [2022-12-06 00:28:54,997 INFO L294 CegarLoopForPetriNet]: 32 programPoint places, 528 predicate places. [2022-12-06 00:28:54,997 WARN L163 eatedLiptonReduction]: Counterexample is not a run of mAbstraction. Replaying acceptance of the word... [2022-12-06 00:28:54,997 INFO L89 Accepts]: Start accepts. Operand has 560 places, 1965 transitions, 40705 flow [2022-12-06 00:28:55,006 INFO L95 Accepts]: Finished accepts. [2022-12-06 00:28:55,006 INFO L195 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-12-06 00:28:55,006 INFO L167 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 560 places, 1965 transitions, 40705 flow [2022-12-06 00:28:55,022 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 560 places, 1965 transitions, 40705 flow [2022-12-06 00:28:59,770 INFO L130 PetriNetUnfolder]: 5104/14057 cut-off events. [2022-12-06 00:28:59,771 INFO L131 PetriNetUnfolder]: For 760644/764620 co-relation queries the response was YES. [2022-12-06 00:28:59,946 INFO L83 FinitePrefix]: Finished finitePrefix Result has 128039 conditions, 14057 events. 5104/14057 cut-off events. For 760644/764620 co-relation queries the response was YES. Maximal size of possible extension queue 1502. Compared 173178 event pairs, 1383 based on Foata normal form. 109/13197 useless extension candidates. Maximal degree in co-relation 127813. Up to 4747 conditions per place. [2022-12-06 00:29:00,234 INFO L184 LiptonReduction]: Starting Lipton reduction on Petri net that has 560 places, 1965 transitions, 40705 flow [2022-12-06 00:29:00,235 INFO L188 LiptonReduction]: Number of co-enabled transitions 10936 [2022-12-06 00:29:00,238 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 [708] L48-4-->L110-3: Formula: (and (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_489|) (= |v_ULTIMATE.start_main_#t~pre14#1_161| |v_#pthreadsForks_324|) (not (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_191| 0)) (= v_~back~0_497 (+ v_~back~0_498 1)) (= |v_thread1Thread1of1ForFork1_#res#1.offset_153| 0) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_191| (ite (= (select (select |v_#memory_int_568| v_~queue~0.base_314) (+ (* v_~back~0_498 4) v_~queue~0.offset_314)) 1) 1 0)) (= (+ |v_#pthreadsForks_324| 1) |v_#pthreadsForks_323|) (= (store |v_#memory_int_568| |v_ULTIMATE.start_main_~#t3~0#1.base_150| (store (select |v_#memory_int_568| |v_ULTIMATE.start_main_~#t3~0#1.base_150|) |v_ULTIMATE.start_main_~#t3~0#1.offset_149| |v_ULTIMATE.start_main_#t~pre14#1_161|)) |v_#memory_int_567|) (= |v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_191| |v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_191|) (not (= (ite (and (<= 0 v_~back~0_498) (< v_~back~0_498 v_~n~0_305)) 1 0) 0)) (= v_~v_assert~0_376 |v_thread1Thread1of1ForFork1_~cond~0#1_372|) (not (< 0 |v_thread1Thread1of1ForFork1_~w~0#1_488|)) (not (= (mod v_~v_assert~0_376 256) 0)) (= |v_thread1Thread1of1ForFork1_#res#1.base_153| 0) (= (+ |v_thread1Thread1of1ForFork1_~w~0#1_488| 1) |v_thread1Thread1of1ForFork1_~w~0#1_489|)) InVars {~queue~0.offset=v_~queue~0.offset_314, ~v_assert~0=v_~v_assert~0_376, #pthreadsForks=|v_#pthreadsForks_324|, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_149|, ~back~0=v_~back~0_498, #memory_int=|v_#memory_int_568|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_489|, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_150|, ~queue~0.base=v_~queue~0.base_314, ~n~0=v_~n~0_305} OutVars{~queue~0.offset=v_~queue~0.offset_314, ULTIMATE.start_main_~#t3~0#1.offset=|v_ULTIMATE.start_main_~#t3~0#1.offset_149|, ~back~0=v_~back~0_497, ULTIMATE.start_main_~#t3~0#1.base=|v_ULTIMATE.start_main_~#t3~0#1.base_150|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_191|, ~queue~0.base=v_~queue~0.base_314, ULTIMATE.start_main_#t~pre12#1=|v_ULTIMATE.start_main_#t~pre12#1_181|, ~v_assert~0=v_~v_assert~0_376, thread1Thread1of1ForFork1_#t~post1#1=|v_thread1Thread1of1ForFork1_#t~post1#1_199|, ULTIMATE.start_main_#t~pre14#1=|v_ULTIMATE.start_main_#t~pre14#1_161|, #pthreadsForks=|v_#pthreadsForks_323|, thread1Thread1of1ForFork1_#t~post3#1=|v_thread1Thread1of1ForFork1_#t~post3#1_191|, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_191|, #memory_int=|v_#memory_int_567|, ULTIMATE.start_main_#t~nondet13#1=|v_ULTIMATE.start_main_#t~nondet13#1_141|, thread1Thread1of1ForFork1_~w~0#1=|v_thread1Thread1of1ForFork1_~w~0#1_488|, thread1Thread1of1ForFork1_#res#1.offset=|v_thread1Thread1of1ForFork1_#res#1.offset_153|, thread1Thread1of1ForFork1_#res#1.base=|v_thread1Thread1of1ForFork1_#res#1.base_153|, ~n~0=v_~n~0_305, thread1Thread1of1ForFork1_~cond~0#1=|v_thread1Thread1of1ForFork1_~cond~0#1_372|, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_191|} 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 00:29:00,238 WARN L322 ript$VariableManager]: TermVariable LBE247 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 00:29:00,238 WARN L322 ript$VariableManager]: TermVariable LBE234 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 00:29:00,239 WARN L322 ript$VariableManager]: TermVariable LBE241 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 00:29:00,239 WARN L322 ript$VariableManager]: TermVariable LBE69 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 00:29:00,239 WARN L322 ript$VariableManager]: TermVariable LBE35 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 00:29:00,240 WARN L322 ript$VariableManager]: TermVariable LBE23 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-12-06 00:29:00,682 INFO L203 LiptonReduction]: Total number of compositions: 1 [2022-12-06 00:29:00,682 INFO L143 eatedLiptonReduction]: Time needed for LBE in milliseconds: 5685 [2022-12-06 00:29:00,682 INFO L495 AbstractCegarLoop]: Abstraction has has 560 places, 1965 transitions, 40713 flow [2022-12-06 00:29:00,683 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 23 states, 23 states have (on average 2.1739130434782608) internal successors, (50), 22 states have internal predecessors, (50), 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 00:29:00,683 INFO L205 CegarLoopForPetriNet]: Found error trace [2022-12-06 00:29:00,683 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 00:29:00,688 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Ended with exit code 0 [2022-12-06 00:29:00,887 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,SelfDestructingSolverStorable13 [2022-12-06 00:29:00,887 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 00:29:00,888 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-12-06 00:29:00,888 INFO L85 PathProgramCache]: Analyzing trace with hash -1962620055, now seen corresponding path program 1 times [2022-12-06 00:29:00,888 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-12-06 00:29:00,888 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1075124446] [2022-12-06 00:29:00,888 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 00:29:00,888 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-12-06 00:29:00,899 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 00:29:00,976 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 00:29:00,976 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-12-06 00:29:00,976 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1075124446] [2022-12-06 00:29:00,976 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1075124446] provided 1 perfect and 0 imperfect interpolant sequences [2022-12-06 00:29:00,976 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-12-06 00:29:00,976 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-12-06 00:29:00,976 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1822187636] [2022-12-06 00:29:00,976 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-12-06 00:29:00,977 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-12-06 00:29:00,977 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-12-06 00:29:00,977 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-12-06 00:29:00,977 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-12-06 00:29:00,977 INFO L490 CegarLoopForPetriNet]: Number of universal loopers: 3 out of 129 [2022-12-06 00:29:00,977 INFO L100 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 560 places, 1965 transitions, 40713 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 00:29:00,977 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-12-06 00:29:00,977 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 3 of 129 [2022-12-06 00:29:00,977 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-12-06 00:29:16,765 INFO L130 PetriNetUnfolder]: 13923/27316 cut-off events. [2022-12-06 00:29:16,765 INFO L131 PetriNetUnfolder]: For 1539478/1540332 co-relation queries the response was YES. [2022-12-06 00:29:17,454 INFO L83 FinitePrefix]: Finished finitePrefix Result has 267072 conditions, 27316 events. 13923/27316 cut-off events. For 1539478/1540332 co-relation queries the response was YES. Maximal size of possible extension queue 1873. Compared 274361 event pairs, 3524 based on Foata normal form. 242/26958 useless extension candidates. Maximal degree in co-relation 266805. Up to 16824 conditions per place. [2022-12-06 00:29:17,613 INFO L137 encePairwiseOnDemand]: 105/129 looper letters, 1129 selfloop transitions, 253 changer transitions 8/2024 dead transitions. [2022-12-06 00:29:17,613 INFO L142 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 558 places, 2024 transitions, 44313 flow [2022-12-06 00:29:17,614 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-12-06 00:29:17,614 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2022-12-06 00:29:17,614 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 186 transitions. [2022-12-06 00:29:17,615 INFO L535 CegarLoopForPetriNet]: DFA transition density 0.28837209302325584 [2022-12-06 00:29:17,615 INFO L175 Difference]: Start difference. First operand has 560 places, 1965 transitions, 40713 flow. Second operand 5 states and 186 transitions. [2022-12-06 00:29:17,615 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 558 places, 2024 transitions, 44313 flow [2022-12-06 00:29:43,409 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 545 places, 2024 transitions, 42862 flow, removed 38 selfloop flow, removed 13 redundant places. [2022-12-06 00:29:43,440 INFO L231 Difference]: Finished difference. Result has 548 places, 1934 transitions, 39455 flow [2022-12-06 00:29:43,441 INFO L276 CegarLoopForPetriNet]: {PETRI_ALPHABET=129, PETRI_DIFFERENCE_MINUEND_FLOW=38496, PETRI_DIFFERENCE_MINUEND_PLACES=541, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=1922, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=237, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=1675, PETRI_DIFFERENCE_SUBTRAHEND_STATES=5, PETRI_FLOW=39455, PETRI_PLACES=548, PETRI_TRANSITIONS=1934} [2022-12-06 00:29:43,441 INFO L294 CegarLoopForPetriNet]: 32 programPoint places, 516 predicate places. [2022-12-06 00:29:43,442 WARN L163 eatedLiptonReduction]: Counterexample is not a run of mAbstraction. Replaying acceptance of the word... [2022-12-06 00:29:43,442 INFO L89 Accepts]: Start accepts. Operand has 548 places, 1934 transitions, 39455 flow [2022-12-06 00:29:43,449 INFO L95 Accepts]: Finished accepts. [2022-12-06 00:29:43,450 INFO L195 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-12-06 00:29:43,450 INFO L167 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 548 places, 1934 transitions, 39455 flow [2022-12-06 00:29:43,465 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 544 places, 1934 transitions, 39455 flow [2022-12-06 00:29:47,827 INFO L130 PetriNetUnfolder]: 5052/13945 cut-off events. [2022-12-06 00:29:47,827 INFO L131 PetriNetUnfolder]: For 786700/790529 co-relation queries the response was YES. [2022-12-06 00:29:47,998 INFO L83 FinitePrefix]: Finished finitePrefix Result has 126821 conditions, 13945 events. 5052/13945 cut-off events. For 786700/790529 co-relation queries the response was YES. Maximal size of possible extension queue 1470. Compared 170890 event pairs, 1274 based on Foata normal form. 103/13114 useless extension candidates. Maximal degree in co-relation 126597. Up to 4616 conditions per place. [2022-12-06 00:29:48,167 INFO L184 LiptonReduction]: Starting Lipton reduction on Petri net that has 544 places, 1934 transitions, 39455 flow [2022-12-06 00:29:48,167 INFO L188 LiptonReduction]: Number of co-enabled transitions 10752 [2022-12-06 00:29:48,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 [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 00:29:48,336 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 [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 00:29:48,437 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 00:29:48,534 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 00:29:48,633 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 00:29:48,730 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 00:29:48,830 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 00:29:48,929 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 00:29:49,029 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 00:29:49,129 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 00:29:49,242 INFO L203 LiptonReduction]: Total number of compositions: 3 [2022-12-06 00:29:49,243 INFO L143 eatedLiptonReduction]: Time needed for LBE in milliseconds: 5801 [2022-12-06 00:29:49,243 INFO L495 AbstractCegarLoop]: Abstraction has has 541 places, 1931 transitions, 39457 flow [2022-12-06 00:29:49,243 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 00:29:49,243 INFO L205 CegarLoopForPetriNet]: Found error trace [2022-12-06 00:29:49,243 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 00:29:49,243 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable14 [2022-12-06 00:29:49,243 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 00:29:49,243 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-12-06 00:29:49,243 INFO L85 PathProgramCache]: Analyzing trace with hash -1102269846, now seen corresponding path program 1 times [2022-12-06 00:29:49,243 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-12-06 00:29:49,244 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [424695053] [2022-12-06 00:29:49,244 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 00:29:49,244 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-12-06 00:29:49,262 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 00:29:50,151 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 00:29:50,151 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-12-06 00:29:50,151 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [424695053] [2022-12-06 00:29:50,151 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [424695053] provided 0 perfect and 1 imperfect interpolant sequences [2022-12-06 00:29:50,151 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1632059554] [2022-12-06 00:29:50,151 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-06 00:29:50,151 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-12-06 00:29:50,152 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-12-06 00:29:50,153 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 00:29:50,169 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 00:29:50,257 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-06 00:29:50,258 INFO L263 TraceCheckSpWp]: Trace formula consists of 254 conjuncts, 48 conjunts are in the unsatisfiable core [2022-12-06 00:29:50,259 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-12-06 00:29:50,362 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-12-06 00:29:50,363 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 00:29:50,543 INFO L321 Elim1Store]: treesize reduction 48, result has 12.7 percent of original size [2022-12-06 00:29:50,544 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 00:29:50,636 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 00:29:50,637 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-12-06 00:29:50,776 INFO L321 Elim1Store]: treesize reduction 14, result has 73.6 percent of original size [2022-12-06 00:29:50,777 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 00:29:50,781 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 00:29:50,892 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 00:29:50,892 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1632059554] provided 0 perfect and 2 imperfect interpolant sequences [2022-12-06 00:29:50,892 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-12-06 00:29:50,892 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 9, 9] total 24 [2022-12-06 00:29:50,892 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1223382784] [2022-12-06 00:29:50,892 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-12-06 00:29:50,892 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 25 states [2022-12-06 00:29:50,892 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-12-06 00:29:50,893 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 25 interpolants. [2022-12-06 00:29:50,893 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=91, Invalid=509, Unknown=0, NotChecked=0, Total=600 [2022-12-06 00:29:50,893 INFO L490 CegarLoopForPetriNet]: Number of universal loopers: 0 out of 134 [2022-12-06 00:29:50,893 INFO L100 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 541 places, 1931 transitions, 39457 flow. Second operand has 25 states, 25 states have (on average 2.08) internal successors, (52), 24 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 00:29:50,893 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-12-06 00:29:50,893 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 0 of 134 [2022-12-06 00:29:50,893 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand