/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-MCRwithDepranks-Lazy-NoForkJoinOpt-wrwc.epf -tc ../../../trunk/examples/toolchains/AutomizerBplInline.xml -i ../../../trunk/examples/concurrent/bpl/regression/ForkInForkedProcedure01.bpl -------------------------------------------------------------------------------- This is Ultimate 0.2.2-wip.dk.mcr-reduction-4b0ab11 [2022-03-01 22:51:46,019 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-03-01 22:51:46,020 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-03-01 22:51:46,040 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-03-01 22:51:46,041 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-03-01 22:51:46,042 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-03-01 22:51:46,042 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-03-01 22:51:46,043 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-03-01 22:51:46,044 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-03-01 22:51:46,045 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-03-01 22:51:46,046 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-03-01 22:51:46,046 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-03-01 22:51:46,047 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-03-01 22:51:46,047 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-03-01 22:51:46,048 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-03-01 22:51:46,048 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-03-01 22:51:46,049 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-03-01 22:51:46,050 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-03-01 22:51:46,051 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-03-01 22:51:46,052 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-03-01 22:51:46,053 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-03-01 22:51:46,053 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-03-01 22:51:46,054 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-03-01 22:51:46,055 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-03-01 22:51:46,056 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-03-01 22:51:46,056 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-03-01 22:51:46,057 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-03-01 22:51:46,057 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-03-01 22:51:46,057 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-03-01 22:51:46,058 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-03-01 22:51:46,058 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-03-01 22:51:46,059 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-03-01 22:51:46,059 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-03-01 22:51:46,060 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-03-01 22:51:46,060 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-03-01 22:51:46,060 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-03-01 22:51:46,061 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-03-01 22:51:46,061 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-03-01 22:51:46,061 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-03-01 22:51:46,062 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-03-01 22:51:46,062 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-03-01 22:51:46,063 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-MCRwithDepranks-Lazy-NoForkJoinOpt-wrwc.epf [2022-03-01 22:51:46,077 INFO L113 SettingsManager]: Loading preferences was successful [2022-03-01 22:51:46,078 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-03-01 22:51:46,078 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-03-01 22:51:46,078 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-03-01 22:51:46,079 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-03-01 22:51:46,079 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-03-01 22:51:46,079 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-03-01 22:51:46,079 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-03-01 22:51:46,079 INFO L138 SettingsManager]: * Use SBE=true [2022-03-01 22:51:46,080 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-03-01 22:51:46,080 INFO L138 SettingsManager]: * sizeof long=4 [2022-03-01 22:51:46,080 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-03-01 22:51:46,080 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-03-01 22:51:46,080 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-03-01 22:51:46,080 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-03-01 22:51:46,080 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-03-01 22:51:46,080 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-03-01 22:51:46,081 INFO L138 SettingsManager]: * sizeof long double=12 [2022-03-01 22:51:46,081 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-03-01 22:51:46,081 INFO L138 SettingsManager]: * Use constant arrays=true [2022-03-01 22:51:46,081 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-03-01 22:51:46,081 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-03-01 22:51:46,081 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-03-01 22:51:46,081 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-03-01 22:51:46,081 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-03-01 22:51:46,081 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-03-01 22:51:46,082 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-03-01 22:51:46,082 INFO L138 SettingsManager]: * Construct finite automaton lazily=true [2022-03-01 22:51:46,082 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-03-01 22:51:46,082 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-03-01 22:51:46,082 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-03-01 22:51:46,082 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-03-01 22:51:46,082 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-03-01 22:51:46,082 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PARTIAL_ORDER_FA [2022-03-01 22:51:46,083 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-03-01 22:51:46,083 INFO L138 SettingsManager]: * Partial Order Reduction in concurrent analysis=MCR_WITH_DEPRANKS [2022-03-01 22:51:46,083 INFO L138 SettingsManager]: * MCR: Overapproximate write-read-write conflicts=false [2022-03-01 22:51:46,083 INFO L138 SettingsManager]: * MCR: Optimize fork and join=false [2022-03-01 22:51:46,083 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-03-01 22:51:46,268 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-03-01 22:51:46,283 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-03-01 22:51:46,285 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-03-01 22:51:46,286 INFO L271 PluginConnector]: Initializing Boogie PL CUP Parser... [2022-03-01 22:51:46,286 INFO L275 PluginConnector]: Boogie PL CUP Parser initialized [2022-03-01 22:51:46,287 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/concurrent/bpl/regression/ForkInForkedProcedure01.bpl [2022-03-01 22:51:46,288 INFO L110 BoogieParser]: Parsing: '/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/concurrent/bpl/regression/ForkInForkedProcedure01.bpl' [2022-03-01 22:51:46,306 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-03-01 22:51:46,307 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-03-01 22:51:46,308 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-03-01 22:51:46,308 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-03-01 22:51:46,308 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-03-01 22:51:46,317 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "ForkInForkedProcedure01.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 01.03 10:51:46" (1/1) ... [2022-03-01 22:51:46,321 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "ForkInForkedProcedure01.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 01.03 10:51:46" (1/1) ... [2022-03-01 22:51:46,326 INFO L137 Inliner]: procedures = 3, calls = 2, calls flagged for inlining = 0, calls inlined = 0, statements flattened = 0 [2022-03-01 22:51:46,328 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-03-01 22:51:46,329 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-03-01 22:51:46,329 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-03-01 22:51:46,329 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-03-01 22:51:46,334 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "ForkInForkedProcedure01.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 01.03 10:51:46" (1/1) ... [2022-03-01 22:51:46,334 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "ForkInForkedProcedure01.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 01.03 10:51:46" (1/1) ... [2022-03-01 22:51:46,335 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "ForkInForkedProcedure01.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 01.03 10:51:46" (1/1) ... [2022-03-01 22:51:46,335 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "ForkInForkedProcedure01.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 01.03 10:51:46" (1/1) ... [2022-03-01 22:51:46,337 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "ForkInForkedProcedure01.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 01.03 10:51:46" (1/1) ... [2022-03-01 22:51:46,337 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "ForkInForkedProcedure01.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 01.03 10:51:46" (1/1) ... [2022-03-01 22:51:46,337 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "ForkInForkedProcedure01.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 01.03 10:51:46" (1/1) ... [2022-03-01 22:51:46,338 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-03-01 22:51:46,339 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-03-01 22:51:46,339 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-03-01 22:51:46,339 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-03-01 22:51:46,340 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "ForkInForkedProcedure01.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 01.03 10:51:46" (1/1) ... [2022-03-01 22:51:46,344 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-03-01 22:51:46,352 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-03-01 22:51:46,364 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-03-01 22:51:46,386 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-03-01 22:51:46,397 INFO L124 BoogieDeclarations]: Specification and implementation of procedure bar given in one single declaration [2022-03-01 22:51:46,398 INFO L130 BoogieDeclarations]: Found specification of procedure bar [2022-03-01 22:51:46,398 INFO L138 BoogieDeclarations]: Found implementation of procedure bar [2022-03-01 22:51:46,398 INFO L124 BoogieDeclarations]: Specification and implementation of procedure foo given in one single declaration [2022-03-01 22:51:46,398 INFO L130 BoogieDeclarations]: Found specification of procedure foo [2022-03-01 22:51:46,398 INFO L138 BoogieDeclarations]: Found implementation of procedure foo [2022-03-01 22:51:46,398 INFO L124 BoogieDeclarations]: Specification and implementation of procedure ULTIMATE.start given in one single declaration [2022-03-01 22:51:46,398 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-03-01 22:51:46,399 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-03-01 22:51:46,399 WARN L208 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to SingleStatement [2022-03-01 22:51:46,434 INFO L234 CfgBuilder]: Building ICFG [2022-03-01 22:51:46,435 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-03-01 22:51:46,491 INFO L275 CfgBuilder]: Performing block encoding [2022-03-01 22:51:46,496 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-03-01 22:51:46,496 INFO L299 CfgBuilder]: Removed 0 assume(true) statements. [2022-03-01 22:51:46,497 INFO L202 PluginConnector]: Adding new model ForkInForkedProcedure01.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 01.03 10:51:46 BoogieIcfgContainer [2022-03-01 22:51:46,497 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-03-01 22:51:46,498 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-03-01 22:51:46,498 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-03-01 22:51:46,501 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-03-01 22:51:46,501 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "ForkInForkedProcedure01.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 01.03 10:51:46" (1/2) ... [2022-03-01 22:51:46,502 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@104fcbfe and model type ForkInForkedProcedure01.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 01.03 10:51:46, skipping insertion in model container [2022-03-01 22:51:46,502 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "ForkInForkedProcedure01.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 01.03 10:51:46" (2/2) ... [2022-03-01 22:51:46,503 INFO L111 eAbstractionObserver]: Analyzing ICFG ForkInForkedProcedure01.bpl [2022-03-01 22:51:46,506 WARN L150 ceAbstractionStarter]: Switching off computation of Hoare annotation because input is a concurrent program [2022-03-01 22:51:46,506 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-03-01 22:51:46,506 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-03-01 22:51:46,506 INFO L534 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2022-03-01 22:51:46,520 WARN L322 ript$VariableManager]: TermVariabe barThread1of1ForFork0_res not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-01 22:51:46,520 WARN L322 ript$VariableManager]: TermVariabe barThread1of1ForFork0_res not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-01 22:51:46,523 WARN L322 ript$VariableManager]: TermVariabe barThread1of1ForFork0_res not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-01 22:51:46,525 WARN L322 ript$VariableManager]: TermVariabe fooThread1of1ForFork1_res not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-01 22:51:46,526 WARN L322 ript$VariableManager]: TermVariabe barThread1of1ForFork0_res not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-01 22:51:46,528 INFO L148 ThreadInstanceAdder]: Constructed 3 joinOtherThreadTransitions. [2022-03-01 22:51:46,557 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 [2022-03-01 22:51:46,557 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-03-01 22:51:46,559 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 (exit command is (exit), workingDir is null) [2022-03-01 22:51:46,560 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 (2)] Waiting until timeout for monitored process [2022-03-01 22:51:46,581 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-03-01 22:51:46,585 INFO L339 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=true, mAutomataTypeConcurrency=PARTIAL_ORDER_FA, mLazyFiniteAutomaton=true, 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, mLoopAccelerationTechnique=FAST_UPR, mMcrOptimizeForkJoin=false, mMcrOverapproximateWrwc=false [2022-03-01 22:51:46,585 INFO L340 AbstractCegarLoop]: Starting to check reachability of 4 error locations. [2022-03-01 22:51:46,612 INFO L104 alCausalityReduction]: MaximalCausalityReduction evaluated 13 transitions and produced 14 states. [2022-03-01 22:51:46,614 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONASSERT === [fooErr0INUSE_VIOLATION, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1INUSE_VIOLATION, fooThread1of1ForFork1Err2INUSE_VIOLATION] === [2022-03-01 22:51:46,637 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-03-01 22:51:46,637 INFO L85 PathProgramCache]: Analyzing trace with hash 782458711, now seen corresponding path program 1 times [2022-03-01 22:51:46,643 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-03-01 22:51:46,643 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1720733182] [2022-03-01 22:51:46,644 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-03-01 22:51:46,644 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-03-01 22:51:46,696 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-03-01 22:51:46,738 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-03-01 22:51:46,739 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-03-01 22:51:46,739 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1720733182] [2022-03-01 22:51:46,740 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1720733182] provided 1 perfect and 0 imperfect interpolant sequences [2022-03-01 22:51:46,740 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-03-01 22:51:46,740 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-03-01 22:51:46,741 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [537621250] [2022-03-01 22:51:46,741 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-03-01 22:51:46,744 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-03-01 22:51:46,744 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-03-01 22:51:46,758 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-03-01 22:51:46,759 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-03-01 22:51:46,760 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-03-01 22:51:46,761 INFO L470 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2022-03-01 22:51:46,762 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 3 states have internal predecessors, (8), 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-03-01 22:51:46,762 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2022-03-01 22:51:46,774 INFO L104 alCausalityReduction]: MaximalCausalityReduction evaluated 17 transitions and produced 16 states. [2022-03-01 22:51:46,774 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-03-01 22:51:46,775 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-03-01 22:51:46,775 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONASSERT === [fooErr0INUSE_VIOLATION, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1INUSE_VIOLATION, fooThread1of1ForFork1Err2INUSE_VIOLATION] === [2022-03-01 22:51:46,776 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-03-01 22:51:46,776 INFO L85 PathProgramCache]: Analyzing trace with hash 323194809, now seen corresponding path program 1 times [2022-03-01 22:51:46,776 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-03-01 22:51:46,776 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1662981023] [2022-03-01 22:51:46,776 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-03-01 22:51:46,776 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-03-01 22:51:46,783 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-03-01 22:51:46,784 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-03-01 22:51:46,788 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-03-01 22:51:46,797 INFO L138 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-03-01 22:51:46,798 INFO L628 BasicCegarLoop]: Counterexample is feasible [2022-03-01 22:51:46,799 INFO L764 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONASSERT (3 of 4 remaining) [2022-03-01 22:51:46,801 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location fooErr0INUSE_VIOLATION (2 of 4 remaining) [2022-03-01 22:51:46,801 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr1INUSE_VIOLATION (1 of 4 remaining) [2022-03-01 22:51:46,801 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location fooThread1of1ForFork1Err2INUSE_VIOLATION (0 of 4 remaining) [2022-03-01 22:51:46,802 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-03-01 22:51:46,808 INFO L732 BasicCegarLoop]: Path program histogram: [1, 1] [2022-03-01 22:51:46,813 INFO L230 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2022-03-01 22:51:46,813 INFO L180 ceAbstractionStarter]: Computing trace abstraction results [2022-03-01 22:51:46,822 INFO L202 PluginConnector]: Adding new model ForkInForkedProcedure01.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 01.03 10:51:46 BasicIcfg [2022-03-01 22:51:46,822 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-03-01 22:51:46,823 INFO L158 Benchmark]: Toolchain (without parser) took 515.65ms. Allocated memory is still 166.7MB. Free memory was 129.2MB in the beginning and 130.1MB in the end (delta: -902.6kB). There was no memory consumed. Max. memory is 8.0GB. [2022-03-01 22:51:46,823 INFO L158 Benchmark]: Boogie PL CUP Parser took 0.12ms. Allocated memory is still 166.7MB. Free memory was 130.2MB in the beginning and 130.1MB in the end (delta: 141.4kB). There was no memory consumed. Max. memory is 8.0GB. [2022-03-01 22:51:46,824 INFO L158 Benchmark]: Boogie Procedure Inliner took 19.64ms. Allocated memory is still 166.7MB. Free memory was 129.2MB in the beginning and 127.5MB in the end (delta: 1.6MB). There was no memory consumed. Max. memory is 8.0GB. [2022-03-01 22:51:46,824 INFO L158 Benchmark]: Boogie Preprocessor took 9.05ms. Allocated memory is still 166.7MB. Free memory was 127.5MB in the beginning and 126.7MB in the end (delta: 845.8kB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-03-01 22:51:46,825 INFO L158 Benchmark]: RCFGBuilder took 158.28ms. Allocated memory is still 166.7MB. Free memory was 126.7MB in the beginning and 118.7MB in the end (delta: 8.0MB). Peak memory consumption was 8.4MB. Max. memory is 8.0GB. [2022-03-01 22:51:46,825 INFO L158 Benchmark]: TraceAbstraction took 323.73ms. Allocated memory is still 166.7MB. Free memory was 118.3MB in the beginning and 130.1MB in the end (delta: -11.8MB). There was no memory consumed. Max. memory is 8.0GB. [2022-03-01 22:51:46,827 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * Boogie PL CUP Parser took 0.12ms. Allocated memory is still 166.7MB. Free memory was 130.2MB in the beginning and 130.1MB in the end (delta: 141.4kB). There was no memory consumed. Max. memory is 8.0GB. * Boogie Procedure Inliner took 19.64ms. Allocated memory is still 166.7MB. Free memory was 129.2MB in the beginning and 127.5MB in the end (delta: 1.6MB). There was no memory consumed. Max. memory is 8.0GB. * Boogie Preprocessor took 9.05ms. Allocated memory is still 166.7MB. Free memory was 127.5MB in the beginning and 126.7MB in the end (delta: 845.8kB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 158.28ms. Allocated memory is still 166.7MB. Free memory was 126.7MB in the beginning and 118.7MB in the end (delta: 8.0MB). Peak memory consumption was 8.4MB. Max. memory is 8.0GB. * TraceAbstraction took 323.73ms. Allocated memory is still 166.7MB. Free memory was 118.3MB in the beginning and 130.1MB in the end (delta: -11.8MB). There was no memory consumed. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: Independence relation benchmarks ThreadSeparatingIndependenceRelation.Independence Queries: [ total: 0, positive: 0, positive conditional: 0, positive unconditional: 0, negative: 0, negative conditional: 0, negative unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ThreadSeparatingIndependenceRelation.Statistics on underlying relation: ConditionTransformingIndependenceRelation.Independence Queries: [ total: 0, positive: 0, positive conditional: 0, positive unconditional: 0, negative: 0, negative conditional: 0, negative unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ConditionTransformingIndependenceRelation.Statistics on underlying relation: DisjunctiveConditionalIndependenceRelation.Independence Queries: [ total: 0, positive: 0, positive conditional: 0, positive unconditional: 0, negative: 0, negative conditional: 0, negative unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , DisjunctiveConditionalIndependenceRelation.Statistics on underlying relation: ConditionTransformingIndependenceRelation.Independence Queries: [ total: 0, positive: 0, positive conditional: 0, positive unconditional: 0, negative: 0, negative conditional: 0, negative unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ConditionTransformingIndependenceRelation.Statistics on underlying relation: SemanticConditionEliminator.Independence Queries: [ total: 0, positive: 0, positive conditional: 0, positive unconditional: 0, negative: 0, negative conditional: 0, negative unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticConditionEliminator.Statistics on underlying relation: CachedIndependenceRelation.Independence Queries: [ total: 0, positive: 0, positive conditional: 0, positive unconditional: 0, negative: 0, negative conditional: 0, negative unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , CachedIndependenceRelation.Statistics on underlying relation: UnionIndependenceRelation.Independence Queries: [ total: 0, positive: 0, positive conditional: 0, positive unconditional: 0, negative: 0, negative conditional: 0, negative unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , UnionIndependenceRelation.Statistics on underlying relations: [ SyntacticIndependenceRelation.Independence Queries: [ total: 0, positive: 0, positive conditional: 0, positive unconditional: 0, negative: 0, negative conditional: 0, negative unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticIndependenceRelation.Independence Queries: [ total: 0, positive: 0, positive conditional: 0, positive unconditional: 0, negative: 0, negative conditional: 0, negative unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticIndependenceRelation.Query Time [ms]: [ total: 0, positive: 0, positive conditional: 0, positive unconditional: 0, negative: 0, negative conditional: 0, negative unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] ], Cache Queries: [ total: 0, positive: 0, positive conditional: 0, positive unconditional: 0, negative: 0, negative conditional: 0, negative unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , Statistics on independence cache: Total cache size (in pairs): 0, Positive cache size: 0, Positive conditional cache size: 0, Positive unconditional cache size: 0, Negative cache size: 0, Negative conditional cache size: 0, Negative unconditional cache size: 0, Eliminated conditions: 0, Maximal queried relation: -1, Independence queries for same thread: 0 - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - CounterExampleResult [Line: 23]: assertion can be violated assertion can be violated We found a FailurePath: [L17] 0 x := 0; VAL [x=0] [L18] 0 g := 0; VAL [g=0, x=0] [L20] FORK 0 fork 1 foo(x); VAL [g=0, n=0, x=0] [L29] FORK 1 fork 2 bar(n); VAL [g=0, n=0, n=0, x=0] [L30] 1 g := g + 1; VAL [g=1, n=0, n=0, x=0] [L36] 2 res := 23; VAL [g=1, n=0, n=0, res=23, x=0] [L21] JOIN 2 join 2; VAL [g=1, n=0, n=0, res=23, x=0] [L23] 0 assert g == 0; VAL [g=1, n=0, n=0, res=23, x=0] - UnprovableResult [Line: 26]: 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. - UnprovableResult [Line: 20]: 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. - UnprovableResult [Line: 26]: 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 5 procedures, 25 locations, 4 error locations. Started 1 CEGAR loops. OverallTime: 0.3s, OverallIterations: 2, TraceHistogramMax: 0, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 0.0s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: , PredicateUnifierStatistics: No data available, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=0occurred in iteration=0, InterpolantAutomatonStates: 3, 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.0s SatisfiabilityAnalysisTime, 0.0s InterpolantComputationTime, 18 NumberOfCodeBlocks, 18 NumberOfCodeBlocksAsserted, 2 NumberOfCheckSat, 7 ConstructedInterpolants, 0 QuantifiedInterpolants, 15 SizeOfPredicates, 0 NumberOfNonLiveVariables, 0 ConjunctsInSsa, 0 ConjunctsInUnsatCore, 1 InterpolantComputations, 1 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-03-01 22:51:46,918 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 (2)] Forceful destruction successful, exit code 0 [2022-03-01 22:51:47,119 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...