/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-RepeatedSemanticLbeWithDisjunctivePredicates.epf -tc ../../../trunk/examples/toolchains/AutomizerCInline.xml -i ../../../trunk/examples/svcomp/goblint-regression/13-privatized_19-publish-precision_unknown_2_neg.i -------------------------------------------------------------------------------- This is Ultimate 0.2.2-wip.dk.repeated-lipton-a802222-m [2022-12-13 12:27:28,523 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-12-13 12:27:28,525 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-12-13 12:27:28,553 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-12-13 12:27:28,553 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-12-13 12:27:28,555 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-12-13 12:27:28,557 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-12-13 12:27:28,560 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-12-13 12:27:28,563 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-12-13 12:27:28,567 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-12-13 12:27:28,569 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-12-13 12:27:28,570 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-12-13 12:27:28,570 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-12-13 12:27:28,572 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-12-13 12:27:28,573 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-12-13 12:27:28,575 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-12-13 12:27:28,575 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-12-13 12:27:28,576 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-12-13 12:27:28,578 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-12-13 12:27:28,581 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-12-13 12:27:28,582 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-12-13 12:27:28,583 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-12-13 12:27:28,584 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-12-13 12:27:28,584 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-12-13 12:27:28,589 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-12-13 12:27:28,589 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-12-13 12:27:28,590 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-12-13 12:27:28,591 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-12-13 12:27:28,591 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-12-13 12:27:28,592 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-12-13 12:27:28,592 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-12-13 12:27:28,593 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-12-13 12:27:28,594 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-12-13 12:27:28,594 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-12-13 12:27:28,595 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-12-13 12:27:28,595 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-12-13 12:27:28,595 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-12-13 12:27:28,595 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-12-13 12:27:28,596 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-12-13 12:27:28,596 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-12-13 12:27:28,596 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-12-13 12:27:28,597 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-RepeatedSemanticLbeWithDisjunctivePredicates.epf [2022-12-13 12:27:28,620 INFO L113 SettingsManager]: Loading preferences was successful [2022-12-13 12:27:28,621 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-12-13 12:27:28,622 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-12-13 12:27:28,622 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-12-13 12:27:28,622 INFO L138 SettingsManager]: * Use SBE=true [2022-12-13 12:27:28,623 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-12-13 12:27:28,623 INFO L138 SettingsManager]: * sizeof long=4 [2022-12-13 12:27:28,623 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-12-13 12:27:28,623 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-12-13 12:27:28,623 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-12-13 12:27:28,624 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-12-13 12:27:28,624 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-12-13 12:27:28,624 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-12-13 12:27:28,624 INFO L138 SettingsManager]: * sizeof long double=12 [2022-12-13 12:27:28,624 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-12-13 12:27:28,624 INFO L138 SettingsManager]: * Use constant arrays=true [2022-12-13 12:27:28,624 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-12-13 12:27:28,625 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-12-13 12:27:28,625 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-12-13 12:27:28,625 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-12-13 12:27:28,625 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-12-13 12:27:28,625 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-12-13 12:27:28,625 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-12-13 12:27:28,625 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-12-13 12:27:28,625 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-12-13 12:27:28,625 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-12-13 12:27:28,625 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-12-13 12:27:28,625 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=REPEATED_LIPTON_PN [2022-12-13 12:27:28,625 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-13 12:27:28,905 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-12-13 12:27:28,923 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-12-13 12:27:28,925 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-12-13 12:27:28,925 INFO L271 PluginConnector]: Initializing CDTParser... [2022-12-13 12:27:28,926 INFO L275 PluginConnector]: CDTParser initialized [2022-12-13 12:27:28,926 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/goblint-regression/13-privatized_19-publish-precision_unknown_2_neg.i [2022-12-13 12:27:29,766 INFO L500 CDTParser]: Created temporary CDT project at NULL [2022-12-13 12:27:29,960 INFO L351 CDTParser]: Found 1 translation units. [2022-12-13 12:27:29,960 INFO L172 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/goblint-regression/13-privatized_19-publish-precision_unknown_2_neg.i [2022-12-13 12:27:29,969 INFO L394 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/0b50eb82c/96276365a5e34f559da6b1e9830dcd14/FLAG5e566e3f6 [2022-12-13 12:27:29,977 INFO L402 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/0b50eb82c/96276365a5e34f559da6b1e9830dcd14 [2022-12-13 12:27:29,979 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-12-13 12:27:29,980 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-12-13 12:27:29,980 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-12-13 12:27:29,980 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-12-13 12:27:29,982 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-12-13 12:27:29,982 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 13.12 12:27:29" (1/1) ... [2022-12-13 12:27:29,983 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@16a1aa6f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.12 12:27:29, skipping insertion in model container [2022-12-13 12:27:29,983 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 13.12 12:27:29" (1/1) ... [2022-12-13 12:27:29,987 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-12-13 12:27:30,016 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-12-13 12:27:30,110 WARN L237 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/goblint-regression/13-privatized_19-publish-precision_unknown_2_neg.i[1103,1116] [2022-12-13 12:27:30,225 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-12-13 12:27:30,235 INFO L203 MainTranslator]: Completed pre-run [2022-12-13 12:27:30,245 WARN L237 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/goblint-regression/13-privatized_19-publish-precision_unknown_2_neg.i[1103,1116] [2022-12-13 12:27:30,270 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-12-13 12:27:30,304 INFO L208 MainTranslator]: Completed translation [2022-12-13 12:27:30,305 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.12 12:27:30 WrapperNode [2022-12-13 12:27:30,305 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-12-13 12:27:30,306 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-12-13 12:27:30,306 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-12-13 12:27:30,307 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-12-13 12:27:30,311 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.12 12:27:30" (1/1) ... [2022-12-13 12:27:30,336 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.12 12:27:30" (1/1) ... [2022-12-13 12:27:30,353 INFO L138 Inliner]: procedures = 162, calls = 29, calls flagged for inlining = 3, calls inlined = 3, statements flattened = 49 [2022-12-13 12:27:30,353 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-12-13 12:27:30,354 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-12-13 12:27:30,354 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-12-13 12:27:30,354 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-12-13 12:27:30,359 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.12 12:27:30" (1/1) ... [2022-12-13 12:27:30,360 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.12 12:27:30" (1/1) ... [2022-12-13 12:27:30,368 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.12 12:27:30" (1/1) ... [2022-12-13 12:27:30,368 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.12 12:27:30" (1/1) ... [2022-12-13 12:27:30,380 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.12 12:27:30" (1/1) ... [2022-12-13 12:27:30,382 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.12 12:27:30" (1/1) ... [2022-12-13 12:27:30,386 INFO L185 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.12 12:27:30" (1/1) ... [2022-12-13 12:27:30,386 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.12 12:27:30" (1/1) ... [2022-12-13 12:27:30,388 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-12-13 12:27:30,388 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-12-13 12:27:30,388 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-12-13 12:27:30,388 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-12-13 12:27:30,389 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.12 12:27:30" (1/1) ... [2022-12-13 12:27:30,392 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-12-13 12:27:30,404 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-12-13 12:27:30,413 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-13 12:27:30,422 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-13 12:27:30,444 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-12-13 12:27:30,444 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-12-13 12:27:30,445 INFO L130 BoogieDeclarations]: Found specification of procedure #PthreadsMutexLock [2022-12-13 12:27:30,446 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-12-13 12:27:30,446 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-12-13 12:27:30,446 INFO L130 BoogieDeclarations]: Found specification of procedure t_fun [2022-12-13 12:27:30,446 INFO L138 BoogieDeclarations]: Found implementation of procedure t_fun [2022-12-13 12:27:30,446 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-12-13 12:27:30,446 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-12-13 12:27:30,446 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-12-13 12:27:30,446 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-12-13 12:27:30,447 WARN L210 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement [2022-12-13 12:27:30,542 INFO L236 CfgBuilder]: Building ICFG [2022-12-13 12:27:30,544 INFO L262 CfgBuilder]: Building CFG for each procedure with an implementation [2022-12-13 12:27:30,696 INFO L277 CfgBuilder]: Performing block encoding [2022-12-13 12:27:30,700 INFO L297 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-12-13 12:27:30,700 INFO L302 CfgBuilder]: Removed 0 assume(true) statements. [2022-12-13 12:27:30,701 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 13.12 12:27:30 BoogieIcfgContainer [2022-12-13 12:27:30,701 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-12-13 12:27:30,706 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-12-13 12:27:30,706 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-12-13 12:27:30,708 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-12-13 12:27:30,708 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 13.12 12:27:29" (1/3) ... [2022-12-13 12:27:30,709 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@76a258e5 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 13.12 12:27:30, skipping insertion in model container [2022-12-13 12:27:30,709 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.12 12:27:30" (2/3) ... [2022-12-13 12:27:30,709 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@76a258e5 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 13.12 12:27:30, skipping insertion in model container [2022-12-13 12:27:30,709 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 13.12 12:27:30" (3/3) ... [2022-12-13 12:27:30,710 INFO L112 eAbstractionObserver]: Analyzing ICFG 13-privatized_19-publish-precision_unknown_2_neg.i [2022-12-13 12:27:30,724 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-12-13 12:27:30,724 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-12-13 12:27:30,724 INFO L515 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2022-12-13 12:27:30,782 INFO L144 ThreadInstanceAdder]: Constructed 1 joinOtherThreadTransitions. [2022-12-13 12:27:30,811 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 68 places, 65 transitions, 138 flow [2022-12-13 12:27:30,859 INFO L130 PetriNetUnfolder]: 1/64 cut-off events. [2022-12-13 12:27:30,860 INFO L131 PetriNetUnfolder]: For 1/1 co-relation queries the response was YES. [2022-12-13 12:27:30,862 INFO L83 FinitePrefix]: Finished finitePrefix Result has 69 conditions, 64 events. 1/64 cut-off events. For 1/1 co-relation queries the response was YES. Maximal size of possible extension queue 4. Compared 32 event pairs, 0 based on Foata normal form. 0/62 useless extension candidates. Maximal degree in co-relation 28. Up to 2 conditions per place. [2022-12-13 12:27:30,863 INFO L82 GeneralOperation]: Start removeDead. Operand has 68 places, 65 transitions, 138 flow [2022-12-13 12:27:30,866 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 56 places, 52 transitions, 107 flow [2022-12-13 12:27:30,868 INFO L203 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-12-13 12:27:30,891 INFO L174 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 56 places, 52 transitions, 107 flow [2022-12-13 12:27:30,899 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 56 places, 52 transitions, 107 flow [2022-12-13 12:27:30,923 INFO L130 PetriNetUnfolder]: 0/52 cut-off events. [2022-12-13 12:27:30,923 INFO L131 PetriNetUnfolder]: For 0/0 co-relation queries the response was YES. [2022-12-13 12:27:30,924 INFO L83 FinitePrefix]: Finished finitePrefix Result has 56 conditions, 52 events. 0/52 cut-off events. For 0/0 co-relation queries the response was YES. Maximal size of possible extension queue 2. Compared 17 event pairs, 0 based on Foata normal form. 0/52 useless extension candidates. Maximal degree in co-relation 0. Up to 1 conditions per place. [2022-12-13 12:27:30,925 INFO L222 LiptonReduction]: Starting Lipton reduction on Petri net that has 56 places, 52 transitions, 107 flow [2022-12-13 12:27:30,925 INFO L226 LiptonReduction]: Number of co-enabled transitions 252 [2022-12-13 12:27:33,048 INFO L241 LiptonReduction]: Total number of compositions: 45 [2022-12-13 12:27:33,058 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-12-13 12:27:33,062 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;@ea108a5, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, Conditionality=CONDITIONAL_DISJUNCTIVE, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2022-12-13 12:27:33,062 INFO L358 AbstractCegarLoop]: Starting to check reachability of 2 error locations. [2022-12-13 12:27:33,064 INFO L130 PetriNetUnfolder]: 0/11 cut-off events. [2022-12-13 12:27:33,064 INFO L131 PetriNetUnfolder]: For 0/0 co-relation queries the response was YES. [2022-12-13 12:27:33,064 INFO L206 CegarLoopForPetriNet]: Found error trace [2022-12-13 12:27:33,064 INFO L214 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1] [2022-12-13 12:27:33,065 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2022-12-13 12:27:33,068 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-12-13 12:27:33,068 INFO L85 PathProgramCache]: Analyzing trace with hash 6971877, now seen corresponding path program 1 times [2022-12-13 12:27:33,073 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-12-13 12:27:33,073 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1437299009] [2022-12-13 12:27:33,074 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-13 12:27:33,074 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-12-13 12:27:33,140 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-13 12:27:33,266 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-13 12:27:33,266 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-12-13 12:27:33,266 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1437299009] [2022-12-13 12:27:33,267 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1437299009] provided 1 perfect and 0 imperfect interpolant sequences [2022-12-13 12:27:33,267 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-12-13 12:27:33,267 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2022-12-13 12:27:33,268 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [637489765] [2022-12-13 12:27:33,268 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-12-13 12:27:33,273 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-12-13 12:27:33,273 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-12-13 12:27:33,285 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-12-13 12:27:33,286 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-12-13 12:27:33,287 INFO L481 CegarLoopForPetriNet]: Number of universal loopers: 3 out of 18 [2022-12-13 12:27:33,287 INFO L100 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 22 places, 18 transitions, 39 flow. Second operand has 3 states, 3 states have (on average 4.333333333333333) internal successors, (13), 3 states have internal predecessors, (13), 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-13 12:27:33,288 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-12-13 12:27:33,288 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 3 of 18 [2022-12-13 12:27:33,288 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-12-13 12:27:33,322 INFO L130 PetriNetUnfolder]: 13/51 cut-off events. [2022-12-13 12:27:33,322 INFO L131 PetriNetUnfolder]: For 0/0 co-relation queries the response was YES. [2022-12-13 12:27:33,322 INFO L83 FinitePrefix]: Finished finitePrefix Result has 101 conditions, 51 events. 13/51 cut-off events. For 0/0 co-relation queries the response was YES. Maximal size of possible extension queue 12. Compared 184 event pairs, 10 based on Foata normal form. 9/40 useless extension candidates. Maximal degree in co-relation 92. Up to 31 conditions per place. [2022-12-13 12:27:33,323 INFO L137 encePairwiseOnDemand]: 13/18 looper letters, 8 selfloop transitions, 4 changer transitions 5/19 dead transitions. [2022-12-13 12:27:33,323 INFO L142 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 24 places, 19 transitions, 73 flow [2022-12-13 12:27:33,324 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-12-13 12:27:33,326 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2022-12-13 12:27:33,330 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 26 transitions. [2022-12-13 12:27:33,331 INFO L526 CegarLoopForPetriNet]: DFA transition density 0.48148148148148145 [2022-12-13 12:27:33,332 INFO L175 Difference]: Start difference. First operand has 22 places, 18 transitions, 39 flow. Second operand 3 states and 26 transitions. [2022-12-13 12:27:33,333 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 24 places, 19 transitions, 73 flow [2022-12-13 12:27:33,334 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 23 places, 19 transitions, 72 flow, removed 0 selfloop flow, removed 1 redundant places. [2022-12-13 12:27:33,335 INFO L231 Difference]: Finished difference. Result has 24 places, 13 transitions, 42 flow [2022-12-13 12:27:33,336 INFO L277 CegarLoopForPetriNet]: {PETRI_ALPHABET=18, PETRI_DIFFERENCE_MINUEND_FLOW=38, PETRI_DIFFERENCE_MINUEND_PLACES=21, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=18, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=4, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=14, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=42, PETRI_PLACES=24, PETRI_TRANSITIONS=13} [2022-12-13 12:27:33,338 INFO L295 CegarLoopForPetriNet]: 22 programPoint places, 2 predicate places. [2022-12-13 12:27:33,339 WARN L178 eatedLiptonReduction]: Counterexample is not a run of mAbstraction. Replaying acceptance of the word... [2022-12-13 12:27:33,339 INFO L89 Accepts]: Start accepts. Operand has 24 places, 13 transitions, 42 flow [2022-12-13 12:27:33,341 INFO L95 Accepts]: Finished accepts. [2022-12-13 12:27:33,341 INFO L203 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-12-13 12:27:33,341 INFO L174 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 24 places, 13 transitions, 42 flow [2022-12-13 12:27:33,342 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 19 places, 13 transitions, 42 flow [2022-12-13 12:27:33,344 INFO L130 PetriNetUnfolder]: 0/18 cut-off events. [2022-12-13 12:27:33,344 INFO L131 PetriNetUnfolder]: For 1/1 co-relation queries the response was YES. [2022-12-13 12:27:33,344 INFO L83 FinitePrefix]: Finished finitePrefix Result has 31 conditions, 18 events. 0/18 cut-off events. For 1/1 co-relation queries the response was YES. Maximal size of possible extension queue 6. Compared 36 event pairs, 0 based on Foata normal form. 0/10 useless extension candidates. Maximal degree in co-relation 0. Up to 5 conditions per place. [2022-12-13 12:27:33,346 INFO L222 LiptonReduction]: Starting Lipton reduction on Petri net that has 19 places, 13 transitions, 42 flow [2022-12-13 12:27:33,346 INFO L226 LiptonReduction]: Number of co-enabled transitions 24 [2022-12-13 12:27:33,369 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [186] L688-->L691: Formula: (and (= v_~glob1~0_30 0) (= (store |v_#pthreadsMutex_148| |v_~#mutex2~0.base_63| (store (select |v_#pthreadsMutex_148| |v_~#mutex2~0.base_63|) |v_~#mutex2~0.offset_63| 1)) |v_#pthreadsMutex_147|)) InVars {#pthreadsMutex=|v_#pthreadsMutex_148|, ~#mutex2~0.offset=|v_~#mutex2~0.offset_63|, ~#mutex2~0.base=|v_~#mutex2~0.base_63|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_147|, t_funThread1of1ForFork0_#t~nondet3=|v_t_funThread1of1ForFork0_#t~nondet3_19|, ~#mutex2~0.offset=|v_~#mutex2~0.offset_63|, ~glob1~0=v_~glob1~0_30, ~#mutex2~0.base=|v_~#mutex2~0.base_63|} AuxVars[] AssignedVars[#pthreadsMutex, t_funThread1of1ForFork0_#t~nondet3, ~glob1~0] and [177] $Ultimate##0-->L688: Formula: (let ((.cse2 (select |v_#pthreadsMutex_124| |v_~#mutex1~0.base_37|))) (let ((.cse0 (store |v_#pthreadsMutex_124| |v_~#mutex1~0.base_37| (store .cse2 |v_~#mutex1~0.offset_37| 1)))) (let ((.cse1 (select .cse0 |v_~#mutex2~0.base_57|))) (and (= (store .cse0 |v_~#mutex2~0.base_57| (store .cse1 |v_~#mutex2~0.offset_57| 1)) |v_#pthreadsMutex_123|) (= v_~glob1~0_20 5) (= |v_t_funThread1of1ForFork0_#in~arg.offset_17| v_t_funThread1of1ForFork0_~arg.offset_17) (= (select .cse1 |v_~#mutex2~0.offset_57|) 0) (= v_t_funThread1of1ForFork0_~arg.base_17 |v_t_funThread1of1ForFork0_#in~arg.base_17|) (= (select .cse2 |v_~#mutex1~0.offset_37|) 0))))) InVars {#pthreadsMutex=|v_#pthreadsMutex_124|, t_funThread1of1ForFork0_#in~arg.offset=|v_t_funThread1of1ForFork0_#in~arg.offset_17|, ~#mutex1~0.offset=|v_~#mutex1~0.offset_37|, ~#mutex1~0.base=|v_~#mutex1~0.base_37|, t_funThread1of1ForFork0_#in~arg.base=|v_t_funThread1of1ForFork0_#in~arg.base_17|, ~#mutex2~0.offset=|v_~#mutex2~0.offset_57|, ~#mutex2~0.base=|v_~#mutex2~0.base_57|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_123|, t_funThread1of1ForFork0_#in~arg.offset=|v_t_funThread1of1ForFork0_#in~arg.offset_17|, ~#mutex1~0.offset=|v_~#mutex1~0.offset_37|, ~#mutex1~0.base=|v_~#mutex1~0.base_37|, t_funThread1of1ForFork0_~arg.offset=v_t_funThread1of1ForFork0_~arg.offset_17, t_funThread1of1ForFork0_#t~nondet1=|v_t_funThread1of1ForFork0_#t~nondet1_25|, t_funThread1of1ForFork0_#t~nondet2=|v_t_funThread1of1ForFork0_#t~nondet2_19|, t_funThread1of1ForFork0_#in~arg.base=|v_t_funThread1of1ForFork0_#in~arg.base_17|, ~#mutex2~0.offset=|v_~#mutex2~0.offset_57|, t_funThread1of1ForFork0_~arg.base=v_t_funThread1of1ForFork0_~arg.base_17, ~glob1~0=v_~glob1~0_20, ~#mutex2~0.base=|v_~#mutex2~0.base_57|} AuxVars[] AssignedVars[#pthreadsMutex, t_funThread1of1ForFork0_~arg.offset, t_funThread1of1ForFork0_#t~nondet1, t_funThread1of1ForFork0_#t~nondet2, t_funThread1of1ForFork0_~arg.base, ~glob1~0] [2022-12-13 12:27:33,375 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [199] L688-->L692: Formula: (and (= v_~glob1~0_68 0) (= (store |v_#pthreadsMutex_231| |v_~#mutex2~0.base_107| (store (select |v_#pthreadsMutex_231| |v_~#mutex2~0.base_107|) |v_~#mutex2~0.offset_107| 0)) |v_#pthreadsMutex_229|)) InVars {#pthreadsMutex=|v_#pthreadsMutex_231|, ~#mutex2~0.offset=|v_~#mutex2~0.offset_107|, ~#mutex2~0.base=|v_~#mutex2~0.base_107|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_229|, ~#mutex2~0.offset=|v_~#mutex2~0.offset_107|, t_funThread1of1ForFork0_#t~nondet3=|v_t_funThread1of1ForFork0_#t~nondet3_37|, ~glob1~0=v_~glob1~0_68, ~#mutex2~0.base=|v_~#mutex2~0.base_107|} AuxVars[] AssignedVars[#pthreadsMutex, t_funThread1of1ForFork0_#t~nondet3, ~glob1~0] and [177] $Ultimate##0-->L688: Formula: (let ((.cse2 (select |v_#pthreadsMutex_124| |v_~#mutex1~0.base_37|))) (let ((.cse0 (store |v_#pthreadsMutex_124| |v_~#mutex1~0.base_37| (store .cse2 |v_~#mutex1~0.offset_37| 1)))) (let ((.cse1 (select .cse0 |v_~#mutex2~0.base_57|))) (and (= (store .cse0 |v_~#mutex2~0.base_57| (store .cse1 |v_~#mutex2~0.offset_57| 1)) |v_#pthreadsMutex_123|) (= v_~glob1~0_20 5) (= |v_t_funThread1of1ForFork0_#in~arg.offset_17| v_t_funThread1of1ForFork0_~arg.offset_17) (= (select .cse1 |v_~#mutex2~0.offset_57|) 0) (= v_t_funThread1of1ForFork0_~arg.base_17 |v_t_funThread1of1ForFork0_#in~arg.base_17|) (= (select .cse2 |v_~#mutex1~0.offset_37|) 0))))) InVars {#pthreadsMutex=|v_#pthreadsMutex_124|, t_funThread1of1ForFork0_#in~arg.offset=|v_t_funThread1of1ForFork0_#in~arg.offset_17|, ~#mutex1~0.offset=|v_~#mutex1~0.offset_37|, ~#mutex1~0.base=|v_~#mutex1~0.base_37|, t_funThread1of1ForFork0_#in~arg.base=|v_t_funThread1of1ForFork0_#in~arg.base_17|, ~#mutex2~0.offset=|v_~#mutex2~0.offset_57|, ~#mutex2~0.base=|v_~#mutex2~0.base_57|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_123|, t_funThread1of1ForFork0_#in~arg.offset=|v_t_funThread1of1ForFork0_#in~arg.offset_17|, ~#mutex1~0.offset=|v_~#mutex1~0.offset_37|, ~#mutex1~0.base=|v_~#mutex1~0.base_37|, t_funThread1of1ForFork0_~arg.offset=v_t_funThread1of1ForFork0_~arg.offset_17, t_funThread1of1ForFork0_#t~nondet1=|v_t_funThread1of1ForFork0_#t~nondet1_25|, t_funThread1of1ForFork0_#t~nondet2=|v_t_funThread1of1ForFork0_#t~nondet2_19|, t_funThread1of1ForFork0_#in~arg.base=|v_t_funThread1of1ForFork0_#in~arg.base_17|, ~#mutex2~0.offset=|v_~#mutex2~0.offset_57|, t_funThread1of1ForFork0_~arg.base=v_t_funThread1of1ForFork0_~arg.base_17, ~glob1~0=v_~glob1~0_20, ~#mutex2~0.base=|v_~#mutex2~0.base_57|} AuxVars[] AssignedVars[#pthreadsMutex, t_funThread1of1ForFork0_~arg.offset, t_funThread1of1ForFork0_#t~nondet1, t_funThread1of1ForFork0_#t~nondet2, t_funThread1of1ForFork0_~arg.base, ~glob1~0] [2022-12-13 12:27:33,427 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [201] L688-->L688: Formula: (let ((.cse3 (store |v_#pthreadsMutex_303| |v_~#mutex2~0.base_131| (store (select |v_#pthreadsMutex_303| |v_~#mutex2~0.base_131|) |v_~#mutex2~0.offset_131| 0)))) (let ((.cse2 (select .cse3 |v_~#mutex1~0.base_83|))) (let ((.cse0 (store .cse3 |v_~#mutex1~0.base_83| (store .cse2 |v_~#mutex1~0.offset_83| 1)))) (let ((.cse1 (select .cse0 |v_~#mutex2~0.base_131|))) (and (= v_t_funThread1of1ForFork0_~arg.base_31 |v_t_funThread1of1ForFork0_#in~arg.base_31|) (= (store .cse0 |v_~#mutex2~0.base_131| (store .cse1 |v_~#mutex2~0.offset_131| 1)) |v_#pthreadsMutex_301|) (= (select .cse1 |v_~#mutex2~0.offset_131|) 0) (= |v_t_funThread1of1ForFork0_#in~arg.offset_31| v_t_funThread1of1ForFork0_~arg.offset_31) (= v_~glob1~0_84 5) (= (select .cse2 |v_~#mutex1~0.offset_83|) 0)))))) InVars {#pthreadsMutex=|v_#pthreadsMutex_303|, t_funThread1of1ForFork0_#in~arg.offset=|v_t_funThread1of1ForFork0_#in~arg.offset_31|, ~#mutex1~0.offset=|v_~#mutex1~0.offset_83|, ~#mutex1~0.base=|v_~#mutex1~0.base_83|, t_funThread1of1ForFork0_#in~arg.base=|v_t_funThread1of1ForFork0_#in~arg.base_31|, ~#mutex2~0.offset=|v_~#mutex2~0.offset_131|, ~#mutex2~0.base=|v_~#mutex2~0.base_131|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_301|, ~#mutex1~0.offset=|v_~#mutex1~0.offset_83|, ~#mutex1~0.base=|v_~#mutex1~0.base_83|, t_funThread1of1ForFork0_#in~arg.base=|v_t_funThread1of1ForFork0_#in~arg.base_31|, t_funThread1of1ForFork0_~arg.base=v_t_funThread1of1ForFork0_~arg.base_31, t_funThread1of1ForFork0_#in~arg.offset=|v_t_funThread1of1ForFork0_#in~arg.offset_31|, t_funThread1of1ForFork0_~arg.offset=v_t_funThread1of1ForFork0_~arg.offset_31, t_funThread1of1ForFork0_#t~nondet1=|v_t_funThread1of1ForFork0_#t~nondet1_39|, t_funThread1of1ForFork0_#t~nondet2=|v_t_funThread1of1ForFork0_#t~nondet2_31|, ~#mutex2~0.offset=|v_~#mutex2~0.offset_131|, t_funThread1of1ForFork0_#t~nondet3=|v_t_funThread1of1ForFork0_#t~nondet3_53|, ~glob1~0=v_~glob1~0_84, ~#mutex2~0.base=|v_~#mutex2~0.base_131|} AuxVars[] AssignedVars[#pthreadsMutex, t_funThread1of1ForFork0_~arg.offset, t_funThread1of1ForFork0_#t~nondet1, t_funThread1of1ForFork0_#t~nondet2, t_funThread1of1ForFork0_~arg.base, t_funThread1of1ForFork0_#t~nondet3, ~glob1~0] and [146] L692-->L693: Formula: (= |v_#pthreadsMutex_9| (store |v_#pthreadsMutex_10| |v_~#mutex1~0.base_7| (store (select |v_#pthreadsMutex_10| |v_~#mutex1~0.base_7|) |v_~#mutex1~0.offset_7| 0))) InVars {#pthreadsMutex=|v_#pthreadsMutex_10|, ~#mutex1~0.offset=|v_~#mutex1~0.offset_7|, ~#mutex1~0.base=|v_~#mutex1~0.base_7|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_9|, ~#mutex1~0.offset=|v_~#mutex1~0.offset_7|, ~#mutex1~0.base=|v_~#mutex1~0.base_7|} AuxVars[] AssignedVars[#pthreadsMutex] [2022-12-13 12:27:33,472 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [201] L688-->L688: Formula: (let ((.cse3 (store |v_#pthreadsMutex_303| |v_~#mutex2~0.base_131| (store (select |v_#pthreadsMutex_303| |v_~#mutex2~0.base_131|) |v_~#mutex2~0.offset_131| 0)))) (let ((.cse2 (select .cse3 |v_~#mutex1~0.base_83|))) (let ((.cse0 (store .cse3 |v_~#mutex1~0.base_83| (store .cse2 |v_~#mutex1~0.offset_83| 1)))) (let ((.cse1 (select .cse0 |v_~#mutex2~0.base_131|))) (and (= v_t_funThread1of1ForFork0_~arg.base_31 |v_t_funThread1of1ForFork0_#in~arg.base_31|) (= (store .cse0 |v_~#mutex2~0.base_131| (store .cse1 |v_~#mutex2~0.offset_131| 1)) |v_#pthreadsMutex_301|) (= (select .cse1 |v_~#mutex2~0.offset_131|) 0) (= |v_t_funThread1of1ForFork0_#in~arg.offset_31| v_t_funThread1of1ForFork0_~arg.offset_31) (= v_~glob1~0_84 5) (= (select .cse2 |v_~#mutex1~0.offset_83|) 0)))))) InVars {#pthreadsMutex=|v_#pthreadsMutex_303|, t_funThread1of1ForFork0_#in~arg.offset=|v_t_funThread1of1ForFork0_#in~arg.offset_31|, ~#mutex1~0.offset=|v_~#mutex1~0.offset_83|, ~#mutex1~0.base=|v_~#mutex1~0.base_83|, t_funThread1of1ForFork0_#in~arg.base=|v_t_funThread1of1ForFork0_#in~arg.base_31|, ~#mutex2~0.offset=|v_~#mutex2~0.offset_131|, ~#mutex2~0.base=|v_~#mutex2~0.base_131|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_301|, ~#mutex1~0.offset=|v_~#mutex1~0.offset_83|, ~#mutex1~0.base=|v_~#mutex1~0.base_83|, t_funThread1of1ForFork0_#in~arg.base=|v_t_funThread1of1ForFork0_#in~arg.base_31|, t_funThread1of1ForFork0_~arg.base=v_t_funThread1of1ForFork0_~arg.base_31, t_funThread1of1ForFork0_#in~arg.offset=|v_t_funThread1of1ForFork0_#in~arg.offset_31|, t_funThread1of1ForFork0_~arg.offset=v_t_funThread1of1ForFork0_~arg.offset_31, t_funThread1of1ForFork0_#t~nondet1=|v_t_funThread1of1ForFork0_#t~nondet1_39|, t_funThread1of1ForFork0_#t~nondet2=|v_t_funThread1of1ForFork0_#t~nondet2_31|, ~#mutex2~0.offset=|v_~#mutex2~0.offset_131|, t_funThread1of1ForFork0_#t~nondet3=|v_t_funThread1of1ForFork0_#t~nondet3_53|, ~glob1~0=v_~glob1~0_84, ~#mutex2~0.base=|v_~#mutex2~0.base_131|} AuxVars[] AssignedVars[#pthreadsMutex, t_funThread1of1ForFork0_~arg.offset, t_funThread1of1ForFork0_#t~nondet1, t_funThread1of1ForFork0_#t~nondet2, t_funThread1of1ForFork0_~arg.base, t_funThread1of1ForFork0_#t~nondet3, ~glob1~0] and [180] L692-->t_funFINAL: Formula: (and (= |v_t_funThread1of1ForFork0_#res.offset_7| 0) (= |v_t_funThread1of1ForFork0_#res.base_7| 0) (= (store |v_#pthreadsMutex_134| |v_~#mutex1~0.base_43| (store (select |v_#pthreadsMutex_134| |v_~#mutex1~0.base_43|) |v_~#mutex1~0.offset_43| 0)) |v_#pthreadsMutex_133|)) InVars {#pthreadsMutex=|v_#pthreadsMutex_134|, ~#mutex1~0.offset=|v_~#mutex1~0.offset_43|, ~#mutex1~0.base=|v_~#mutex1~0.base_43|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_133|, ~#mutex1~0.offset=|v_~#mutex1~0.offset_43|, ~#mutex1~0.base=|v_~#mutex1~0.base_43|, t_funThread1of1ForFork0_#res.base=|v_t_funThread1of1ForFork0_#res.base_7|, t_funThread1of1ForFork0_#res.offset=|v_t_funThread1of1ForFork0_#res.offset_7|} AuxVars[] AssignedVars[#pthreadsMutex, t_funThread1of1ForFork0_#res.base, t_funThread1of1ForFork0_#res.offset] [2022-12-13 12:27:33,528 ERROR L112 fgCompositionFactory]: Composing non-subsequent actions: [201] L688-->L688: Formula: (let ((.cse3 (store |v_#pthreadsMutex_303| |v_~#mutex2~0.base_131| (store (select |v_#pthreadsMutex_303| |v_~#mutex2~0.base_131|) |v_~#mutex2~0.offset_131| 0)))) (let ((.cse2 (select .cse3 |v_~#mutex1~0.base_83|))) (let ((.cse0 (store .cse3 |v_~#mutex1~0.base_83| (store .cse2 |v_~#mutex1~0.offset_83| 1)))) (let ((.cse1 (select .cse0 |v_~#mutex2~0.base_131|))) (and (= v_t_funThread1of1ForFork0_~arg.base_31 |v_t_funThread1of1ForFork0_#in~arg.base_31|) (= (store .cse0 |v_~#mutex2~0.base_131| (store .cse1 |v_~#mutex2~0.offset_131| 1)) |v_#pthreadsMutex_301|) (= (select .cse1 |v_~#mutex2~0.offset_131|) 0) (= |v_t_funThread1of1ForFork0_#in~arg.offset_31| v_t_funThread1of1ForFork0_~arg.offset_31) (= v_~glob1~0_84 5) (= (select .cse2 |v_~#mutex1~0.offset_83|) 0)))))) InVars {#pthreadsMutex=|v_#pthreadsMutex_303|, t_funThread1of1ForFork0_#in~arg.offset=|v_t_funThread1of1ForFork0_#in~arg.offset_31|, ~#mutex1~0.offset=|v_~#mutex1~0.offset_83|, ~#mutex1~0.base=|v_~#mutex1~0.base_83|, t_funThread1of1ForFork0_#in~arg.base=|v_t_funThread1of1ForFork0_#in~arg.base_31|, ~#mutex2~0.offset=|v_~#mutex2~0.offset_131|, ~#mutex2~0.base=|v_~#mutex2~0.base_131|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_301|, ~#mutex1~0.offset=|v_~#mutex1~0.offset_83|, ~#mutex1~0.base=|v_~#mutex1~0.base_83|, t_funThread1of1ForFork0_#in~arg.base=|v_t_funThread1of1ForFork0_#in~arg.base_31|, t_funThread1of1ForFork0_~arg.base=v_t_funThread1of1ForFork0_~arg.base_31, t_funThread1of1ForFork0_#in~arg.offset=|v_t_funThread1of1ForFork0_#in~arg.offset_31|, t_funThread1of1ForFork0_~arg.offset=v_t_funThread1of1ForFork0_~arg.offset_31, t_funThread1of1ForFork0_#t~nondet1=|v_t_funThread1of1ForFork0_#t~nondet1_39|, t_funThread1of1ForFork0_#t~nondet2=|v_t_funThread1of1ForFork0_#t~nondet2_31|, ~#mutex2~0.offset=|v_~#mutex2~0.offset_131|, t_funThread1of1ForFork0_#t~nondet3=|v_t_funThread1of1ForFork0_#t~nondet3_53|, ~glob1~0=v_~glob1~0_84, ~#mutex2~0.base=|v_~#mutex2~0.base_131|} AuxVars[] AssignedVars[#pthreadsMutex, t_funThread1of1ForFork0_~arg.offset, t_funThread1of1ForFork0_#t~nondet1, t_funThread1of1ForFork0_#t~nondet2, t_funThread1of1ForFork0_~arg.base, t_funThread1of1ForFork0_#t~nondet3, ~glob1~0] and [181] L692-->t_funEXIT: Formula: (and (= |v_t_funThread1of1ForFork0_#res.offset_9| 0) (= (store |v_#pthreadsMutex_138| |v_~#mutex1~0.base_45| (store (select |v_#pthreadsMutex_138| |v_~#mutex1~0.base_45|) |v_~#mutex1~0.offset_45| 0)) |v_#pthreadsMutex_137|) (= |v_t_funThread1of1ForFork0_#res.base_9| 0)) InVars {#pthreadsMutex=|v_#pthreadsMutex_138|, ~#mutex1~0.offset=|v_~#mutex1~0.offset_45|, ~#mutex1~0.base=|v_~#mutex1~0.base_45|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_137|, ~#mutex1~0.offset=|v_~#mutex1~0.offset_45|, ~#mutex1~0.base=|v_~#mutex1~0.base_45|, t_funThread1of1ForFork0_#res.base=|v_t_funThread1of1ForFork0_#res.base_9|, t_funThread1of1ForFork0_#res.offset=|v_t_funThread1of1ForFork0_#res.offset_9|} AuxVars[] AssignedVars[#pthreadsMutex, t_funThread1of1ForFork0_#res.base, t_funThread1of1ForFork0_#res.offset] [2022-12-13 12:27:33,587 INFO L241 LiptonReduction]: Total number of compositions: 2 [2022-12-13 12:27:33,588 INFO L158 eatedLiptonReduction]: Time needed for LBE in milliseconds: 249 [2022-12-13 12:27:33,588 INFO L495 AbstractCegarLoop]: Abstraction has has 18 places, 12 transitions, 58 flow [2022-12-13 12:27:33,588 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 4.333333333333333) internal successors, (13), 3 states have internal predecessors, (13), 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-13 12:27:33,588 INFO L206 CegarLoopForPetriNet]: Found error trace [2022-12-13 12:27:33,588 INFO L214 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1] [2022-12-13 12:27:33,588 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-12-13 12:27:33,589 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2022-12-13 12:27:33,589 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-12-13 12:27:33,589 INFO L85 PathProgramCache]: Analyzing trace with hash 216127854, now seen corresponding path program 1 times [2022-12-13 12:27:33,589 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-12-13 12:27:33,589 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [382986234] [2022-12-13 12:27:33,589 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-13 12:27:33,590 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-12-13 12:27:33,618 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-12-13 12:27:33,823 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-13 12:27:33,823 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-12-13 12:27:33,823 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [382986234] [2022-12-13 12:27:33,824 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [382986234] provided 1 perfect and 0 imperfect interpolant sequences [2022-12-13 12:27:33,826 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-12-13 12:27:33,830 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-12-13 12:27:33,830 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1054323610] [2022-12-13 12:27:33,830 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-12-13 12:27:33,831 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-12-13 12:27:33,831 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-12-13 12:27:33,831 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-12-13 12:27:33,831 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-12-13 12:27:33,832 INFO L481 CegarLoopForPetriNet]: Number of universal loopers: 0 out of 12 [2022-12-13 12:27:33,832 INFO L100 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 18 places, 12 transitions, 58 flow. Second operand has 4 states, 4 states have (on average 1.25) internal successors, (5), 3 states have internal predecessors, (5), 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-13 12:27:33,832 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-12-13 12:27:33,832 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 0 of 12 [2022-12-13 12:27:33,832 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-12-13 12:27:33,848 INFO L130 PetriNetUnfolder]: 0/9 cut-off events. [2022-12-13 12:27:33,849 INFO L131 PetriNetUnfolder]: For 1/1 co-relation queries the response was YES. [2022-12-13 12:27:33,849 INFO L83 FinitePrefix]: Finished finitePrefix Result has 28 conditions, 9 events. 0/9 cut-off events. For 1/1 co-relation queries the response was YES. Maximal size of possible extension queue 4. Compared 9 event pairs, 0 based on Foata normal form. 4/11 useless extension candidates. Maximal degree in co-relation 0. Up to 6 conditions per place. [2022-12-13 12:27:33,849 INFO L137 encePairwiseOnDemand]: 8/12 looper letters, 2 selfloop transitions, 4 changer transitions 2/8 dead transitions. [2022-12-13 12:27:33,849 INFO L142 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 17 places, 8 transitions, 42 flow [2022-12-13 12:27:33,849 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-12-13 12:27:33,849 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2022-12-13 12:27:33,850 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 10 transitions. [2022-12-13 12:27:33,850 INFO L526 CegarLoopForPetriNet]: DFA transition density 0.20833333333333334 [2022-12-13 12:27:33,850 INFO L175 Difference]: Start difference. First operand has 18 places, 12 transitions, 58 flow. Second operand 4 states and 10 transitions. [2022-12-13 12:27:33,850 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 17 places, 8 transitions, 42 flow [2022-12-13 12:27:33,851 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 15 places, 8 transitions, 38 flow, removed 0 selfloop flow, removed 2 redundant places. [2022-12-13 12:27:33,851 INFO L231 Difference]: Finished difference. Result has 15 places, 6 transitions, 26 flow [2022-12-13 12:27:33,851 INFO L277 CegarLoopForPetriNet]: {PETRI_ALPHABET=12, PETRI_DIFFERENCE_MINUEND_FLOW=22, PETRI_DIFFERENCE_MINUEND_PLACES=12, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=8, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=4, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=4, PETRI_DIFFERENCE_SUBTRAHEND_STATES=4, PETRI_FLOW=26, PETRI_PLACES=15, PETRI_TRANSITIONS=6} [2022-12-13 12:27:33,852 INFO L295 CegarLoopForPetriNet]: 22 programPoint places, -7 predicate places. [2022-12-13 12:27:33,852 WARN L178 eatedLiptonReduction]: Counterexample is not a run of mAbstraction. Replaying acceptance of the word... [2022-12-13 12:27:33,852 INFO L89 Accepts]: Start accepts. Operand has 15 places, 6 transitions, 26 flow [2022-12-13 12:27:33,852 INFO L95 Accepts]: Finished accepts. [2022-12-13 12:27:33,852 INFO L203 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2022-12-13 12:27:33,852 INFO L174 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 15 places, 6 transitions, 26 flow [2022-12-13 12:27:33,853 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 13 places, 6 transitions, 26 flow [2022-12-13 12:27:33,855 INFO L130 PetriNetUnfolder]: 0/7 cut-off events. [2022-12-13 12:27:33,855 INFO L131 PetriNetUnfolder]: For 0/0 co-relation queries the response was YES. [2022-12-13 12:27:33,855 INFO L83 FinitePrefix]: Finished finitePrefix Result has 19 conditions, 7 events. 0/7 cut-off events. For 0/0 co-relation queries the response was YES. Maximal size of possible extension queue 2. Compared 2 event pairs, 0 based on Foata normal form. 0/7 useless extension candidates. Maximal degree in co-relation 0. Up to 3 conditions per place. [2022-12-13 12:27:33,855 INFO L222 LiptonReduction]: Starting Lipton reduction on Petri net that has 13 places, 6 transitions, 26 flow [2022-12-13 12:27:33,855 INFO L226 LiptonReduction]: Number of co-enabled transitions 0 [2022-12-13 12:27:33,924 INFO L241 LiptonReduction]: Total number of compositions: 2 [2022-12-13 12:27:33,926 INFO L158 eatedLiptonReduction]: Time needed for LBE in milliseconds: 74 [2022-12-13 12:27:33,926 INFO L495 AbstractCegarLoop]: Abstraction has has 11 places, 4 transitions, 20 flow [2022-12-13 12:27:33,926 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 1.25) internal successors, (5), 3 states have internal predecessors, (5), 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-13 12:27:33,926 INFO L206 CegarLoopForPetriNet]: Found error trace [2022-12-13 12:27:33,926 INFO L214 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1] [2022-12-13 12:27:33,926 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-12-13 12:27:33,926 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2022-12-13 12:27:33,927 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-12-13 12:27:33,927 INFO L85 PathProgramCache]: Analyzing trace with hash 6972850, now seen corresponding path program 1 times [2022-12-13 12:27:33,927 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-12-13 12:27:33,927 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [704458539] [2022-12-13 12:27:33,927 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-12-13 12:27:33,927 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-12-13 12:27:33,950 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-12-13 12:27:33,951 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-12-13 12:27:33,961 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-12-13 12:27:33,973 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-12-13 12:27:33,973 INFO L360 BasicCegarLoop]: Counterexample is feasible [2022-12-13 12:27:33,974 INFO L805 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (1 of 2 remaining) [2022-12-13 12:27:33,975 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (0 of 2 remaining) [2022-12-13 12:27:33,975 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-12-13 12:27:33,975 INFO L445 BasicCegarLoop]: Path program histogram: [1, 1, 1] [2022-12-13 12:27:33,979 INFO L228 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2022-12-13 12:27:33,979 INFO L178 ceAbstractionStarter]: Computing trace abstraction results [2022-12-13 12:27:33,991 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 13.12 12:27:33 BasicIcfg [2022-12-13 12:27:33,991 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-12-13 12:27:33,992 INFO L158 Benchmark]: Toolchain (without parser) took 4012.25ms. Allocated memory was 197.1MB in the beginning and 237.0MB in the end (delta: 39.8MB). Free memory was 170.7MB in the beginning and 176.9MB in the end (delta: -6.2MB). Peak memory consumption was 34.2MB. Max. memory is 8.0GB. [2022-12-13 12:27:33,992 INFO L158 Benchmark]: CDTParser took 0.09ms. Allocated memory is still 197.1MB. Free memory is still 173.9MB. There was no memory consumed. Max. memory is 8.0GB. [2022-12-13 12:27:33,997 INFO L158 Benchmark]: CACSL2BoogieTranslator took 324.66ms. Allocated memory is still 197.1MB. Free memory was 170.2MB in the beginning and 151.3MB in the end (delta: 18.9MB). Peak memory consumption was 18.9MB. Max. memory is 8.0GB. [2022-12-13 12:27:33,997 INFO L158 Benchmark]: Boogie Procedure Inliner took 47.32ms. Allocated memory is still 197.1MB. Free memory was 151.3MB in the beginning and 149.7MB in the end (delta: 1.6MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-12-13 12:27:33,999 INFO L158 Benchmark]: Boogie Preprocessor took 34.11ms. Allocated memory is still 197.1MB. Free memory was 149.7MB in the beginning and 148.1MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-12-13 12:27:33,999 INFO L158 Benchmark]: RCFGBuilder took 313.33ms. Allocated memory is still 197.1MB. Free memory was 148.1MB in the beginning and 135.6MB in the end (delta: 12.6MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2022-12-13 12:27:33,999 INFO L158 Benchmark]: TraceAbstraction took 3285.84ms. Allocated memory was 197.1MB in the beginning and 237.0MB in the end (delta: 39.8MB). Free memory was 134.5MB in the beginning and 176.9MB in the end (delta: -42.4MB). There was no memory consumed. Max. memory is 8.0GB. [2022-12-13 12:27:34,000 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.09ms. Allocated memory is still 197.1MB. Free memory is still 173.9MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 324.66ms. Allocated memory is still 197.1MB. Free memory was 170.2MB in the beginning and 151.3MB in the end (delta: 18.9MB). Peak memory consumption was 18.9MB. Max. memory is 8.0GB. * Boogie Procedure Inliner took 47.32ms. Allocated memory is still 197.1MB. Free memory was 151.3MB in the beginning and 149.7MB in the end (delta: 1.6MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * Boogie Preprocessor took 34.11ms. Allocated memory is still 197.1MB. Free memory was 149.7MB in the beginning and 148.1MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 313.33ms. Allocated memory is still 197.1MB. Free memory was 148.1MB in the beginning and 135.6MB in the end (delta: 12.6MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * TraceAbstraction took 3285.84ms. Allocated memory was 197.1MB in the beginning and 237.0MB in the end (delta: 39.8MB). Free memory was 134.5MB in the beginning and 176.9MB in the end (delta: -42.4MB). There was no memory consumed. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: PetriNetLargeBlockEncoding benchmarks Lipton Reduction Statistics: ReductionTime: 2.1s, 56 PlacesBefore, 22 PlacesAfterwards, 52 TransitionsBefore, 18 TransitionsAfterwards, 252 CoEnabledTransitionPairs, 3 FixpointIterations, 0 TrivialSequentialCompositions, 0 ConcurrentSequentialCompositions, 27 TrivialYvCompositions, 18 ConcurrentYvCompositions, 0 ChoiceCompositions, 45 TotalNumberOfCompositions, Independence Relation Statistics: ConditionTransformingIndependenceRelation.Independence Queries: [ total: 292, independent: 242, independent conditional: 242, independent unconditional: 0, dependent: 50, dependent conditional: 50, dependent unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ConditionTransformingIndependenceRelation.Statistics on underlying relation: DisjunctiveConditionalIndependenceRelation.Independence Queries: [ total: 292, independent: 242, independent conditional: 0, independent unconditional: 242, dependent: 50, dependent conditional: 0, dependent unconditional: 50, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , DisjunctiveConditionalIndependenceRelation.Statistics on underlying relation: SemanticConditionEliminator.Independence Queries: [ total: 292, independent: 242, independent conditional: 0, independent unconditional: 242, dependent: 50, dependent conditional: 0, dependent unconditional: 50, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticConditionEliminator.Statistics on underlying relation: CachedIndependenceRelation.Independence Queries: [ total: 292, independent: 242, independent conditional: 0, independent unconditional: 242, dependent: 50, dependent conditional: 0, dependent unconditional: 50, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , CachedIndependenceRelation.Statistics on underlying relation: UnionIndependenceRelation.Independence Queries: [ total: 189, independent: 164, independent conditional: 0, independent unconditional: 164, dependent: 25, dependent conditional: 0, dependent unconditional: 25, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , UnionIndependenceRelation.Statistics on underlying relations: [ SyntacticIndependenceRelation.Independence Queries: [ total: 189, independent: 154, independent conditional: 0, independent unconditional: 154, dependent: 35, dependent conditional: 0, dependent unconditional: 35, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticIndependenceRelation.Independence Queries: [ total: 35, independent: 10, independent conditional: 0, independent unconditional: 10, dependent: 25, dependent conditional: 0, dependent unconditional: 25, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticIndependenceRelation.Query Time [ms]: [ total: 78, independent: 27, independent conditional: 0, independent unconditional: 27, dependent: 50, dependent conditional: 0, dependent unconditional: 50, unknown: 0, unknown conditional: 0, unknown unconditional: 0] ], Cache Queries: [ total: 292, independent: 78, independent conditional: 0, independent unconditional: 78, dependent: 25, dependent conditional: 0, dependent unconditional: 25, unknown: 189, unknown conditional: 0, unknown unconditional: 189] , Statistics on independence cache: Total cache size (in pairs): 321, Positive cache size: 296, Positive conditional cache size: 0, Positive unconditional cache size: 296, Negative cache size: 25, Negative conditional cache size: 0, Negative unconditional cache size: 25, Unknown cache size: 0, Unknown conditional cache size: 0, Unknown unconditional cache size: 0, Eliminated conditions: 0, Maximal queried relation: -1 - StatisticsResult: PetriNetLargeBlockEncoding benchmarks Lipton Reduction Statistics: ReductionTime: 0.2s, 19 PlacesBefore, 18 PlacesAfterwards, 13 TransitionsBefore, 12 TransitionsAfterwards, 24 CoEnabledTransitionPairs, 2 FixpointIterations, 0 TrivialSequentialCompositions, 1 ConcurrentSequentialCompositions, 0 TrivialYvCompositions, 1 ConcurrentYvCompositions, 0 ChoiceCompositions, 2 TotalNumberOfCompositions, Independence Relation Statistics: ConditionTransformingIndependenceRelation.Independence Queries: [ total: 12, independent: 6, independent conditional: 6, independent unconditional: 0, dependent: 6, dependent conditional: 6, dependent unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ConditionTransformingIndependenceRelation.Statistics on underlying relation: DisjunctiveConditionalIndependenceRelation.Independence Queries: [ total: 12, independent: 6, independent conditional: 2, independent unconditional: 4, dependent: 6, dependent conditional: 0, dependent unconditional: 6, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , DisjunctiveConditionalIndependenceRelation.Statistics on underlying relation: SemanticConditionEliminator.Independence Queries: [ total: 12, independent: 6, independent conditional: 0, independent unconditional: 6, dependent: 6, dependent conditional: 0, dependent unconditional: 6, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticConditionEliminator.Statistics on underlying relation: CachedIndependenceRelation.Independence Queries: [ total: 12, independent: 6, independent conditional: 0, independent unconditional: 6, dependent: 6, dependent conditional: 0, dependent unconditional: 6, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , CachedIndependenceRelation.Statistics on underlying relation: UnionIndependenceRelation.Independence Queries: [ total: 8, independent: 3, independent conditional: 0, independent unconditional: 3, dependent: 5, dependent conditional: 0, dependent unconditional: 5, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , UnionIndependenceRelation.Statistics on underlying relations: [ SyntacticIndependenceRelation.Independence Queries: [ total: 8, independent: 0, independent conditional: 0, independent unconditional: 0, dependent: 8, dependent conditional: 0, dependent unconditional: 8, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticIndependenceRelation.Independence Queries: [ total: 8, independent: 3, independent conditional: 0, independent unconditional: 3, dependent: 5, dependent conditional: 0, dependent unconditional: 5, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticIndependenceRelation.Query Time [ms]: [ total: 10, independent: 3, independent conditional: 0, independent unconditional: 3, dependent: 6, dependent conditional: 0, dependent unconditional: 6, unknown: 0, unknown conditional: 0, unknown unconditional: 0] ], Cache Queries: [ total: 12, independent: 3, independent conditional: 0, independent unconditional: 3, dependent: 1, dependent conditional: 0, dependent unconditional: 1, unknown: 8, unknown conditional: 0, unknown unconditional: 8] , Statistics on independence cache: Total cache size (in pairs): 8, Positive cache size: 3, Positive conditional cache size: 0, Positive unconditional cache size: 3, Negative cache size: 5, Negative conditional cache size: 0, Negative unconditional cache size: 5, Unknown cache size: 0, Unknown conditional cache size: 0, Unknown unconditional cache size: 0, Eliminated conditions: 2, Maximal queried relation: 0 - StatisticsResult: PetriNetLargeBlockEncoding benchmarks Lipton Reduction Statistics: ReductionTime: 0.1s, 13 PlacesBefore, 11 PlacesAfterwards, 6 TransitionsBefore, 4 TransitionsAfterwards, 0 CoEnabledTransitionPairs, 2 FixpointIterations, 0 TrivialSequentialCompositions, 0 ConcurrentSequentialCompositions, 2 TrivialYvCompositions, 0 ConcurrentYvCompositions, 0 ChoiceCompositions, 2 TotalNumberOfCompositions, Independence Relation Statistics: ConditionTransformingIndependenceRelation.Independence Queries: [ total: 0, independent: 0, independent conditional: 0, independent unconditional: 0, dependent: 0, dependent conditional: 0, dependent unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ConditionTransformingIndependenceRelation.Statistics on underlying relation: DisjunctiveConditionalIndependenceRelation.Independence Queries: [ total: 0, independent: 0, independent conditional: 0, independent unconditional: 0, dependent: 0, dependent conditional: 0, dependent unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , DisjunctiveConditionalIndependenceRelation.Statistics on underlying relation: SemanticConditionEliminator.Independence Queries: [ total: 0, independent: 0, independent conditional: 0, independent unconditional: 0, dependent: 0, dependent conditional: 0, dependent unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticConditionEliminator.Statistics on underlying relation: CachedIndependenceRelation.Independence Queries: [ total: 0, independent: 0, independent conditional: 0, independent unconditional: 0, dependent: 0, dependent conditional: 0, dependent unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , CachedIndependenceRelation.Statistics on underlying relation: UnionIndependenceRelation.Independence Queries: [ total: 0, independent: 0, independent conditional: 0, independent unconditional: 0, dependent: 0, dependent conditional: 0, dependent unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , UnionIndependenceRelation.Statistics on underlying relations: [ SyntacticIndependenceRelation.Independence Queries: [ total: 0, independent: 0, independent conditional: 0, independent unconditional: 0, dependent: 0, dependent conditional: 0, dependent unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticIndependenceRelation.Independence Queries: [ total: 0, independent: 0, independent conditional: 0, independent unconditional: 0, dependent: 0, dependent conditional: 0, dependent unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticIndependenceRelation.Query Time [ms]: [ total: 0, independent: 0, independent conditional: 0, independent unconditional: 0, dependent: 0, dependent conditional: 0, dependent unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] ], Cache Queries: [ total: 0, independent: 0, independent conditional: 0, independent unconditional: 0, dependent: 0, dependent conditional: 0, dependent unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , Statistics on independence cache: Total cache size (in pairs): 8, Positive cache size: 3, Positive conditional cache size: 0, Positive unconditional cache size: 3, Negative cache size: 5, Negative conditional cache size: 0, Negative unconditional cache size: 5, Unknown cache size: 0, Unknown conditional cache size: 0, Unknown unconditional cache size: 0, Eliminated conditions: 0, Maximal queried relation: -1 - CounterExampleResult [Line: 19]: a call to reach_error is reachable a call to reach_error is reachable We found a FailurePath: [L681] 0 int glob1 = 0; [L682] 0 pthread_mutex_t mutex1 = { { 0, 0, 0, PTHREAD_MUTEX_TIMED_NP, 0, { { 0, 0 } } } }; [L683] 0 pthread_mutex_t mutex2 = { { 0, 0, 0, PTHREAD_MUTEX_TIMED_NP, 0, { { 0, 0 } } } }; [L696] 0 pthread_t id; [L697] FCALL, FORK 0 pthread_create(&id, ((void *)0), t_fun, ((void *)0)) VAL [arg={0:0}, glob1=0, id={5:0}, mutex1={3:0}, mutex2={4:0}, pthread_create(&id, ((void *)0), t_fun, ((void *)0))=-1] [L687] 1 glob1 = 5 [L699] CALL 0 __VERIFIER_assert(!(glob1 == 5)) [L19] COND TRUE 0 !(cond) [L19] 0 reach_error() VAL [\old(cond)=0, arg={0:0}, arg={0:0}, cond=0, glob1=5, mutex1={3:0}, mutex2={4:0}] - UnprovableResult [Line: 697]: Unable to prove that petrification did provide enough thread instances (tool internal message, not intended for end users) Unable to prove that petrification did provide enough thread instances (tool internal message, not intended for end users) Reason: Not analyzed. - StatisticsResult: Ultimate Automizer benchmark data with 1 thread instances CFG has 3 procedures, 81 locations, 2 error locations. Started 1 CEGAR loops. EmptinessCheckTime: 0.0s, RemoveRedundantFlowTime: 0.0s, RemoveRedundantFlowUnfoldingTime: 0.0s, BackfoldingTime: 0.0s, BackfoldingUnfoldingTime: 0.0s, FlowIncreaseByBackfolding: 0, BasicCegarLoop: OverallTime: 3.2s, OverallIterations: 3, TraceHistogramMax: 1, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 0.1s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 2.2s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 13 SdHoareTripleChecker+Valid, 0.0s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 13 mSDsluCounter, 0 SdHoareTripleChecker+Invalid, 0.0s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 0 mSDsCounter, 6 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 31 IncrementalHoareTripleChecker+Invalid, 37 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 6 mSolverCounterUnsat, 0 mSDtfsCounter, 31 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 4 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=58occurred in iteration=1, InterpolantAutomatonStates: 7, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: No data available, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 0.3s InterpolantComputationTime, 13 NumberOfCodeBlocks, 13 NumberOfCodeBlocksAsserted, 3 NumberOfCheckSat, 7 ConstructedInterpolants, 0 QuantifiedInterpolants, 44 SizeOfPredicates, 0 NumberOfNonLiveVariables, 0 ConjunctsInSsa, 0 ConjunctsInUnsatCore, 2 InterpolantComputations, 2 PerfectInterpolantSequences, 0/0 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available RESULT: Ultimate proved your program to be incorrect! [2022-12-13 12:27:34,016 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 0 Received shutdown request...