/usr/bin/java -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data -tc ../../../trunk/examples/toolchains/BuchiAutomizerBplInline.xml -s ../../../trunk/examples/settings/default/automizer/svcomp-Termination-32bit-Automizer_Default.epf --buchiautomizer.automaton.type.for.concurrent.programs BUCHI_PETRI_NET -i ../../../trunk/examples/concurrent/bpl/regression/fork_in_loop.bpl -------------------------------------------------------------------------------- This is Ultimate 0.2.3-wip.fs.rabin-petrinet-4c29625-m [2023-10-12 17:18:01,129 INFO L172 SettingsManager]: Resetting all preferences to default values... [2023-10-12 17:18:01,200 INFO L100 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/default/automizer/svcomp-Termination-32bit-Automizer_Default.epf [2023-10-12 17:18:01,347 INFO L114 SettingsManager]: Preferences different from defaults after loading the file: [2023-10-12 17:18:01,347 INFO L135 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2023-10-12 17:18:01,348 INFO L137 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2023-10-12 17:18:01,349 INFO L135 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2023-10-12 17:18:01,349 INFO L137 SettingsManager]: * Create parallel compositions if possible=false [2023-10-12 17:18:01,349 INFO L137 SettingsManager]: * Use SBE=true [2023-10-12 17:18:01,350 INFO L135 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2023-10-12 17:18:01,350 INFO L137 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2023-10-12 17:18:01,350 INFO L137 SettingsManager]: * Use old map elimination=false [2023-10-12 17:18:01,350 INFO L137 SettingsManager]: * Use external solver (rank synthesis)=false [2023-10-12 17:18:01,351 INFO L137 SettingsManager]: * Use only trivial implications for array writes=true [2023-10-12 17:18:01,351 INFO L137 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2023-10-12 17:18:01,351 INFO L135 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2023-10-12 17:18:01,352 INFO L137 SettingsManager]: * sizeof long=4 [2023-10-12 17:18:01,352 INFO L137 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2023-10-12 17:18:01,352 INFO L137 SettingsManager]: * Overapproximate operations on floating types=true [2023-10-12 17:18:01,353 INFO L137 SettingsManager]: * sizeof POINTER=4 [2023-10-12 17:18:01,353 INFO L137 SettingsManager]: * Check division by zero=IGNORE [2023-10-12 17:18:01,358 INFO L137 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2023-10-12 17:18:01,358 INFO L137 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2023-10-12 17:18:01,358 INFO L137 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2023-10-12 17:18:01,358 INFO L137 SettingsManager]: * sizeof long double=12 [2023-10-12 17:18:01,358 INFO L137 SettingsManager]: * Check if freed pointer was valid=false [2023-10-12 17:18:01,359 INFO L137 SettingsManager]: * Assume nondeterminstic values are in range=false [2023-10-12 17:18:01,359 INFO L137 SettingsManager]: * Use constant arrays=true [2023-10-12 17:18:01,359 INFO L137 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2023-10-12 17:18:01,359 INFO L135 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2023-10-12 17:18:01,359 INFO L137 SettingsManager]: * Size of a code block=SequenceOfStatements [2023-10-12 17:18:01,360 INFO L135 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2023-10-12 17:18:01,360 INFO L137 SettingsManager]: * Trace refinement strategy=CAMEL [2023-10-12 17:18:01,361 INFO L135 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2023-10-12 17:18:01,361 INFO L137 SettingsManager]: * TransformationType=MODULO_NEIGHBOR WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer: Automaton type for concurrent programs -> BUCHI_PETRI_NET [2023-10-12 17:18:01,534 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2023-10-12 17:18:01,552 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2023-10-12 17:18:01,555 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2023-10-12 17:18:01,556 INFO L270 PluginConnector]: Initializing Boogie PL CUP Parser... [2023-10-12 17:18:01,557 INFO L274 PluginConnector]: Boogie PL CUP Parser initialized [2023-10-12 17:18:01,558 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/concurrent/bpl/regression/fork_in_loop.bpl [2023-10-12 17:18:01,558 INFO L110 BoogieParser]: Parsing: '/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/concurrent/bpl/regression/fork_in_loop.bpl' [2023-10-12 17:18:01,579 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2023-10-12 17:18:01,581 INFO L133 ToolchainWalker]: Walking toolchain with 4 elements. [2023-10-12 17:18:01,582 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2023-10-12 17:18:01,582 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2023-10-12 17:18:01,582 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2023-10-12 17:18:01,594 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "fork_in_loop.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 12.10 05:18:01" (1/1) ... [2023-10-12 17:18:01,602 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "fork_in_loop.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 12.10 05:18:01" (1/1) ... [2023-10-12 17:18:01,606 INFO L138 Inliner]: procedures = 2, calls = 2, calls flagged for inlining = 0, calls inlined = 0, statements flattened = 0 [2023-10-12 17:18:01,607 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2023-10-12 17:18:01,609 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2023-10-12 17:18:01,610 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2023-10-12 17:18:01,611 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2023-10-12 17:18:01,617 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "fork_in_loop.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 12.10 05:18:01" (1/1) ... [2023-10-12 17:18:01,618 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "fork_in_loop.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 12.10 05:18:01" (1/1) ... [2023-10-12 17:18:01,618 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "fork_in_loop.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 12.10 05:18:01" (1/1) ... [2023-10-12 17:18:01,618 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "fork_in_loop.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 12.10 05:18:01" (1/1) ... [2023-10-12 17:18:01,620 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "fork_in_loop.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 12.10 05:18:01" (1/1) ... [2023-10-12 17:18:01,622 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "fork_in_loop.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 12.10 05:18:01" (1/1) ... [2023-10-12 17:18:01,623 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "fork_in_loop.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 12.10 05:18:01" (1/1) ... [2023-10-12 17:18:01,623 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "fork_in_loop.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 12.10 05:18:01" (1/1) ... [2023-10-12 17:18:01,624 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2023-10-12 17:18:01,627 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2023-10-12 17:18:01,627 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2023-10-12 17:18:01,627 INFO L274 PluginConnector]: RCFGBuilder initialized [2023-10-12 17:18:01,628 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "fork_in_loop.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 12.10 05:18:01" (1/1) ... [2023-10-12 17:18:01,634 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-10-12 17:18:01,643 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-10-12 17:18:01,726 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2023-10-12 17:18:01,739 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (1)] Waiting until timeout for monitored process [2023-10-12 17:18:01,763 INFO L124 BoogieDeclarations]: Specification and implementation of procedure foo given in one single declaration [2023-10-12 17:18:01,764 INFO L130 BoogieDeclarations]: Found specification of procedure foo [2023-10-12 17:18:01,764 INFO L138 BoogieDeclarations]: Found implementation of procedure foo [2023-10-12 17:18:01,764 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2023-10-12 17:18:01,764 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2023-10-12 17:18:01,765 WARN L210 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement [2023-10-12 17:18:01,804 INFO L236 CfgBuilder]: Building ICFG [2023-10-12 17:18:01,805 INFO L262 CfgBuilder]: Building CFG for each procedure with an implementation [2023-10-12 17:18:01,859 INFO L277 CfgBuilder]: Performing block encoding [2023-10-12 17:18:01,865 INFO L297 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2023-10-12 17:18:01,865 INFO L302 CfgBuilder]: Removed 0 assume(true) statements. [2023-10-12 17:18:01,866 INFO L201 PluginConnector]: Adding new model fork_in_loop.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 12.10 05:18:01 BoogieIcfgContainer [2023-10-12 17:18:01,866 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2023-10-12 17:18:01,867 INFO L112 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2023-10-12 17:18:01,867 INFO L270 PluginConnector]: Initializing BuchiAutomizer... [2023-10-12 17:18:01,879 INFO L274 PluginConnector]: BuchiAutomizer initialized [2023-10-12 17:18:01,880 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2023-10-12 17:18:01,880 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "fork_in_loop.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 12.10 05:18:01" (1/2) ... [2023-10-12 17:18:01,881 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@78e8ff18 and model type fork_in_loop.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 12.10 05:18:01, skipping insertion in model container [2023-10-12 17:18:01,882 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2023-10-12 17:18:01,882 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "fork_in_loop.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 12.10 05:18:01" (2/2) ... [2023-10-12 17:18:01,883 INFO L332 chiAutomizerObserver]: Analyzing ICFG fork_in_loop.bpl [2023-10-12 17:18:01,937 INFO L144 ThreadInstanceAdder]: Constructed 6 joinOtherThreadTransitions. [2023-10-12 17:18:01,958 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 27 places, 27 transitions, 82 flow [2023-10-12 17:18:01,975 INFO L124 PetriNetUnfolderBase]: 2/25 cut-off events. [2023-10-12 17:18:01,975 INFO L125 PetriNetUnfolderBase]: For 2/2 co-relation queries the response was YES. [2023-10-12 17:18:01,977 INFO L83 FinitePrefix]: Finished finitePrefix Result has 36 conditions, 25 events. 2/25 cut-off events. For 2/2 co-relation queries the response was YES. Maximal size of possible extension queue 3. Compared 25 event pairs, 0 based on Foata normal form. 0/21 useless extension candidates. Maximal degree in co-relation 20. Up to 2 conditions per place. [2023-10-12 17:18:01,978 INFO L82 GeneralOperation]: Start removeDead. Operand has 27 places, 27 transitions, 82 flow [2023-10-12 17:18:01,980 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 23 places, 20 transitions, 56 flow [2023-10-12 17:18:01,983 INFO L115 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2023-10-12 17:18:01,995 INFO L131 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 23 places, 20 transitions, 56 flow [2023-10-12 17:18:01,998 INFO L113 LiptonReduction]: Starting Lipton reduction on Petri net that has 23 places, 20 transitions, 56 flow [2023-10-12 17:18:01,998 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 23 places, 20 transitions, 56 flow [2023-10-12 17:18:02,003 INFO L124 PetriNetUnfolderBase]: 2/25 cut-off events. [2023-10-12 17:18:02,004 INFO L125 PetriNetUnfolderBase]: For 2/2 co-relation queries the response was YES. [2023-10-12 17:18:02,004 INFO L83 FinitePrefix]: Finished finitePrefix Result has 36 conditions, 25 events. 2/25 cut-off events. For 2/2 co-relation queries the response was YES. Maximal size of possible extension queue 3. Compared 25 event pairs, 0 based on Foata normal form. 0/21 useless extension candidates. Maximal degree in co-relation 20. Up to 2 conditions per place. [2023-10-12 17:18:02,004 INFO L119 LiptonReduction]: Number of co-enabled transitions 44 [2023-10-12 17:18:02,049 INFO L134 LiptonReduction]: Checked pairs total: 62 [2023-10-12 17:18:02,049 INFO L136 LiptonReduction]: Total number of compositions: 3 [2023-10-12 17:18:02,060 INFO L305 stractBuchiCegarLoop]: Interprodecural is true [2023-10-12 17:18:02,060 INFO L306 stractBuchiCegarLoop]: Hoare is false [2023-10-12 17:18:02,061 INFO L307 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2023-10-12 17:18:02,061 INFO L308 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2023-10-12 17:18:02,061 INFO L309 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2023-10-12 17:18:02,061 INFO L310 stractBuchiCegarLoop]: Difference is false [2023-10-12 17:18:02,061 INFO L311 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2023-10-12 17:18:02,061 INFO L315 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiPetriNetCegarLoop ======== [2023-10-12 17:18:02,062 INFO L84 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 20 places, 17 transitions, 50 flow [2023-10-12 17:18:02,066 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2023-10-12 17:18:02,067 INFO L124 PetriNetUnfolderBase]: 0/9 cut-off events. [2023-10-12 17:18:02,067 INFO L125 PetriNetUnfolderBase]: For 1/1 co-relation queries the response was YES. [2023-10-12 17:18:02,067 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty language is not empty [2023-10-12 17:18:02,070 INFO L337 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2023-10-12 17:18:02,070 INFO L84 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 20 places, 17 transitions, 50 flow [2023-10-12 17:18:02,072 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2023-10-12 17:18:02,072 INFO L124 PetriNetUnfolderBase]: 0/9 cut-off events. [2023-10-12 17:18:02,072 INFO L125 PetriNetUnfolderBase]: For 1/1 co-relation queries the response was YES. [2023-10-12 17:18:02,072 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty language is not empty [2023-10-12 17:18:02,077 INFO L748 eck$LassoCheckResult]: Stem: 31#[$Ultimate##0]true [41] $Ultimate##0-->L22-1: Formula: (= 1 v_ULTIMATE.start_x_1) InVars {} OutVars{ULTIMATE.start_x=v_ULTIMATE.start_x_1} AuxVars[] AssignedVars[ULTIMATE.start_x] 33#[L22-1]true [28] L22-1-->L23: Formula: (< v_ULTIMATE.start_x_2 2) InVars {ULTIMATE.start_x=v_ULTIMATE.start_x_2} OutVars{ULTIMATE.start_x=v_ULTIMATE.start_x_2} AuxVars[] AssignedVars[] 35#[L23]true [53] L23-->$Ultimate##0: Formula: (and (= v_fooThread1of1ForFork1_thidvar0_2 v_ULTIMATE.start_x_16) (= v_fooThread1of1ForFork1_i_2 v_ULTIMATE.start_x_16)) InVars {ULTIMATE.start_x=v_ULTIMATE.start_x_16} OutVars{fooThread1of1ForFork1_y=v_fooThread1of1ForFork1_y_4, fooThread1of1ForFork1_i=v_fooThread1of1ForFork1_i_2, fooThread1of1ForFork1_thidvar0=v_fooThread1of1ForFork1_thidvar0_2, ULTIMATE.start_x=v_ULTIMATE.start_x_16} AuxVars[] AssignedVars[fooThread1of1ForFork1_y, fooThread1of1ForFork1_i, fooThread1of1ForFork1_thidvar0] 37#[$Ultimate##0, L23-1]true [35] L23-1-->L22-1: Formula: (= (+ 1 v_ULTIMATE.start_x_4) v_ULTIMATE.start_x_3) InVars {ULTIMATE.start_x=v_ULTIMATE.start_x_4} OutVars{ULTIMATE.start_x=v_ULTIMATE.start_x_3} AuxVars[] AssignedVars[ULTIMATE.start_x] 39#[$Ultimate##0, L22-1]true [28] L22-1-->L23: Formula: (< v_ULTIMATE.start_x_2 2) InVars {ULTIMATE.start_x=v_ULTIMATE.start_x_2} OutVars{ULTIMATE.start_x=v_ULTIMATE.start_x_2} AuxVars[] AssignedVars[] 41#[$Ultimate##0, L23]true [51] L23-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 43#[$Ultimate##0, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES]true [2023-10-12 17:18:02,078 INFO L750 eck$LassoCheckResult]: Loop: 43#[$Ultimate##0, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES]true [52] ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 43#[$Ultimate##0, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES]true [2023-10-12 17:18:02,082 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-10-12 17:18:02,082 INFO L85 PathProgramCache]: Analyzing trace with hash 2088770937, now seen corresponding path program 1 times [2023-10-12 17:18:02,089 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-10-12 17:18:02,090 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1750200825] [2023-10-12 17:18:02,090 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-10-12 17:18:02,090 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-10-12 17:18:02,150 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-10-12 17:18:02,206 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-10-12 17:18:02,207 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-10-12 17:18:02,207 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1750200825] [2023-10-12 17:18:02,208 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1750200825] provided 1 perfect and 0 imperfect interpolant sequences [2023-10-12 17:18:02,208 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-10-12 17:18:02,208 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2023-10-12 17:18:02,209 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1836208419] [2023-10-12 17:18:02,210 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-10-12 17:18:02,216 INFO L753 eck$LassoCheckResult]: stem already infeasible [2023-10-12 17:18:02,217 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-10-12 17:18:02,217 INFO L85 PathProgramCache]: Analyzing trace with hash 83, now seen corresponding path program 1 times [2023-10-12 17:18:02,218 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-10-12 17:18:02,218 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [242414347] [2023-10-12 17:18:02,218 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-10-12 17:18:02,218 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-10-12 17:18:02,221 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-10-12 17:18:02,221 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-10-12 17:18:02,223 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-10-12 17:18:02,232 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-10-12 17:18:02,241 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-10-12 17:18:02,265 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2023-10-12 17:18:02,266 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2023-10-12 17:18:02,267 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 20 places, 17 transitions, 50 flow. Second operand has 4 states, 4 states have (on average 1.5) internal successors, (6), 3 states have internal predecessors, (6), 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) [2023-10-12 17:18:02,268 INFO L124 encePairwiseOnDemand]: Subtrahend is not yet constructed. Will not use universal subtrahend loopers optimization. [2023-10-12 17:18:02,268 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2023-10-12 17:18:02,310 INFO L124 PetriNetUnfolderBase]: 8/31 cut-off events. [2023-10-12 17:18:02,310 INFO L125 PetriNetUnfolderBase]: For 2/2 co-relation queries the response was YES. [2023-10-12 17:18:02,311 INFO L83 FinitePrefix]: Finished finitePrefix Result has 74 conditions, 31 events. 8/31 cut-off events. For 2/2 co-relation queries the response was YES. Maximal size of possible extension queue 4. Compared 35 event pairs, 1 based on Foata normal form. 0/27 useless extension candidates. Maximal degree in co-relation 43. Up to 19 conditions per place. [2023-10-12 17:18:02,312 INFO L140 encePairwiseOnDemand]: 24/30 looper letters, 15 selfloop transitions, 5 changer transitions 0/20 dead transitions. [2023-10-12 17:18:02,312 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 22 places, 20 transitions, 94 flow [2023-10-12 17:18:02,313 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 22 places, 20 transitions, 94 flow [2023-10-12 17:18:02,318 INFO L124 PetriNetUnfolderBase]: 8/31 cut-off events. [2023-10-12 17:18:02,318 INFO L125 PetriNetUnfolderBase]: For 2/2 co-relation queries the response was YES. [2023-10-12 17:18:02,318 INFO L83 FinitePrefix]: Finished finitePrefix Result has 74 conditions, 31 events. 8/31 cut-off events. For 2/2 co-relation queries the response was YES. Maximal size of possible extension queue 4. Compared 35 event pairs, 1 based on Foata normal form. 0/27 useless extension candidates. Maximal degree in co-relation 43. Up to 19 conditions per place. [2023-10-12 17:18:02,318 INFO L82 GeneralOperation]: Start removeDeadBuchi. Operand has 22 places, 20 transitions, 94 flow [2023-10-12 17:18:02,320 INFO L88 GeneralOperation]: Finished RemoveDeadBuchi, result has has 22 places, 20 transitions, 94 flow [2023-10-12 17:18:02,321 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-10-12 17:18:02,324 INFO L430 stractBuchiCegarLoop]: Abstraction has has 22 places, 20 transitions, 94 flow [2023-10-12 17:18:02,324 INFO L337 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2023-10-12 17:18:02,324 INFO L84 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 22 places, 20 transitions, 94 flow [2023-10-12 17:18:02,331 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2023-10-12 17:18:02,331 INFO L124 PetriNetUnfolderBase]: 6/27 cut-off events. [2023-10-12 17:18:02,331 INFO L125 PetriNetUnfolderBase]: For 2/2 co-relation queries the response was YES. [2023-10-12 17:18:02,331 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty language is not empty [2023-10-12 17:18:02,332 INFO L748 eck$LassoCheckResult]: Stem: 31#[$Ultimate##0]true [41] $Ultimate##0-->L22-1: Formula: (= 1 v_ULTIMATE.start_x_1) InVars {} OutVars{ULTIMATE.start_x=v_ULTIMATE.start_x_1} AuxVars[] AssignedVars[ULTIMATE.start_x] 33#[L22-1]true [28] L22-1-->L23: Formula: (< v_ULTIMATE.start_x_2 2) InVars {ULTIMATE.start_x=v_ULTIMATE.start_x_2} OutVars{ULTIMATE.start_x=v_ULTIMATE.start_x_2} AuxVars[] AssignedVars[] 35#[L23]true [53] L23-->$Ultimate##0: Formula: (and (= v_fooThread1of1ForFork1_thidvar0_2 v_ULTIMATE.start_x_16) (= v_fooThread1of1ForFork1_i_2 v_ULTIMATE.start_x_16)) InVars {ULTIMATE.start_x=v_ULTIMATE.start_x_16} OutVars{fooThread1of1ForFork1_y=v_fooThread1of1ForFork1_y_4, fooThread1of1ForFork1_i=v_fooThread1of1ForFork1_i_2, fooThread1of1ForFork1_thidvar0=v_fooThread1of1ForFork1_thidvar0_2, ULTIMATE.start_x=v_ULTIMATE.start_x_16} AuxVars[] AssignedVars[fooThread1of1ForFork1_y, fooThread1of1ForFork1_i, fooThread1of1ForFork1_thidvar0] 37#[$Ultimate##0, L23-1]true [61] $Ultimate##0-->fooEXIT: Formula: (= v_fooThread1of1ForFork1_y_5 4) InVars {} OutVars{fooThread1of1ForFork1_y=v_fooThread1of1ForFork1_y_5} AuxVars[] AssignedVars[fooThread1of1ForFork1_y] 67#[fooEXIT, L23-1]true [35] L23-1-->L22-1: Formula: (= (+ 1 v_ULTIMATE.start_x_4) v_ULTIMATE.start_x_3) InVars {ULTIMATE.start_x=v_ULTIMATE.start_x_4} OutVars{ULTIMATE.start_x=v_ULTIMATE.start_x_3} AuxVars[] AssignedVars[ULTIMATE.start_x] 69#[L22-1, fooEXIT]true [60] L22-1-->L27: Formula: (and (= v_ULTIMATE.start_x_21 1) (<= 2 v_ULTIMATE.start_x_22)) InVars {ULTIMATE.start_x=v_ULTIMATE.start_x_22} OutVars{ULTIMATE.start_x=v_ULTIMATE.start_x_21} AuxVars[] AssignedVars[ULTIMATE.start_x] 71#[L27, fooEXIT]true [54] fooEXIT-->L28: Formula: (= v_fooThread1of1ForFork1_thidvar0_4 v_ULTIMATE.start_x_18) InVars {fooThread1of1ForFork1_thidvar0=v_fooThread1of1ForFork1_thidvar0_4, ULTIMATE.start_x=v_ULTIMATE.start_x_18} OutVars{fooThread1of1ForFork1_thidvar0=v_fooThread1of1ForFork1_thidvar0_4, ULTIMATE.start_x=v_ULTIMATE.start_x_18} AuxVars[] AssignedVars[] 73#[L28]true [40] L28-->L29: Formula: (< v_ULTIMATE.start_x_7 3) InVars {ULTIMATE.start_x=v_ULTIMATE.start_x_7} OutVars{ULTIMATE.start_x=v_ULTIMATE.start_x_7} AuxVars[] AssignedVars[] 75#[L29]true [50] L29-->$Ultimate##0: Formula: (and (= v_fooThread1of1ForFork0_thidvar0_2 v_ULTIMATE.start_x_13) (= v_fooThread1of1ForFork0_i_2 v_ULTIMATE.start_x_13)) InVars {ULTIMATE.start_x=v_ULTIMATE.start_x_13} OutVars{fooThread1of1ForFork0_thidvar0=v_fooThread1of1ForFork0_thidvar0_2, fooThread1of1ForFork0_y=v_fooThread1of1ForFork0_y_4, fooThread1of1ForFork0_i=v_fooThread1of1ForFork0_i_2, ULTIMATE.start_x=v_ULTIMATE.start_x_13} AuxVars[] AssignedVars[fooThread1of1ForFork0_thidvar0, fooThread1of1ForFork0_y, fooThread1of1ForFork0_i] 77#[L29-1, $Ultimate##0]true [32] L29-1-->L28: Formula: (= (+ 1 v_ULTIMATE.start_x_9) v_ULTIMATE.start_x_8) InVars {ULTIMATE.start_x=v_ULTIMATE.start_x_9} OutVars{ULTIMATE.start_x=v_ULTIMATE.start_x_8} AuxVars[] AssignedVars[ULTIMATE.start_x] 79#[L28, $Ultimate##0]true [40] L28-->L29: Formula: (< v_ULTIMATE.start_x_7 3) InVars {ULTIMATE.start_x=v_ULTIMATE.start_x_7} OutVars{ULTIMATE.start_x=v_ULTIMATE.start_x_7} AuxVars[] AssignedVars[] 81#[L29, $Ultimate##0]true [48] L29-->ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 83#[$Ultimate##0, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES]true [2023-10-12 17:18:02,333 INFO L750 eck$LassoCheckResult]: Loop: 83#[$Ultimate##0, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES]true [49] ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES-->ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 83#[$Ultimate##0, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES]true [2023-10-12 17:18:02,333 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-10-12 17:18:02,333 INFO L85 PathProgramCache]: Analyzing trace with hash 1387039133, now seen corresponding path program 1 times [2023-10-12 17:18:02,333 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-10-12 17:18:02,334 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [411659346] [2023-10-12 17:18:02,334 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-10-12 17:18:02,334 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-10-12 17:18:02,387 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-10-12 17:18:02,388 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-10-12 17:18:02,402 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-10-12 17:18:02,405 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-10-12 17:18:02,405 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-10-12 17:18:02,406 INFO L85 PathProgramCache]: Analyzing trace with hash 80, now seen corresponding path program 1 times [2023-10-12 17:18:02,406 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-10-12 17:18:02,406 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1373234122] [2023-10-12 17:18:02,406 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-10-12 17:18:02,406 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-10-12 17:18:02,408 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-10-12 17:18:02,409 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-10-12 17:18:02,410 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-10-12 17:18:02,410 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-10-12 17:18:02,411 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-10-12 17:18:02,411 INFO L85 PathProgramCache]: Analyzing trace with hash 48540212, now seen corresponding path program 1 times [2023-10-12 17:18:02,411 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-10-12 17:18:02,411 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [376018668] [2023-10-12 17:18:02,411 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-10-12 17:18:02,412 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-10-12 17:18:02,420 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-10-12 17:18:02,420 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-10-12 17:18:02,426 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-10-12 17:18:02,428 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-10-12 17:18:02,577 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-10-12 17:18:02,577 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-10-12 17:18:02,584 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-10-12 17:18:02,596 WARN L148 chiAutomizerObserver]: 1 thread instances were not sufficient, I will increase this number and restart the analysis [2023-10-12 17:18:02,607 INFO L144 ThreadInstanceAdder]: Constructed 12 joinOtherThreadTransitions. [2023-10-12 17:18:02,615 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 37 places, 39 transitions, 138 flow [2023-10-12 17:18:02,653 INFO L124 PetriNetUnfolderBase]: 18/115 cut-off events. [2023-10-12 17:18:02,653 INFO L125 PetriNetUnfolderBase]: For 40/40 co-relation queries the response was YES. [2023-10-12 17:18:02,654 INFO L83 FinitePrefix]: Finished finitePrefix Result has 180 conditions, 115 events. 18/115 cut-off events. For 40/40 co-relation queries the response was YES. Maximal size of possible extension queue 10. Compared 411 event pairs, 0 based on Foata normal form. 0/98 useless extension candidates. Maximal degree in co-relation 86. Up to 15 conditions per place. [2023-10-12 17:18:02,654 INFO L82 GeneralOperation]: Start removeDead. Operand has 37 places, 39 transitions, 138 flow [2023-10-12 17:18:02,656 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 37 places, 37 transitions, 128 flow [2023-10-12 17:18:02,656 INFO L115 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2023-10-12 17:18:02,656 INFO L131 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 37 places, 37 transitions, 128 flow [2023-10-12 17:18:02,657 INFO L113 LiptonReduction]: Starting Lipton reduction on Petri net that has 37 places, 37 transitions, 128 flow [2023-10-12 17:18:02,657 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 37 places, 37 transitions, 128 flow [2023-10-12 17:18:02,674 INFO L124 PetriNetUnfolderBase]: 18/115 cut-off events. [2023-10-12 17:18:02,674 INFO L125 PetriNetUnfolderBase]: For 40/40 co-relation queries the response was YES. [2023-10-12 17:18:02,675 INFO L83 FinitePrefix]: Finished finitePrefix Result has 180 conditions, 115 events. 18/115 cut-off events. For 40/40 co-relation queries the response was YES. Maximal size of possible extension queue 10. Compared 409 event pairs, 0 based on Foata normal form. 0/98 useless extension candidates. Maximal degree in co-relation 86. Up to 15 conditions per place. [2023-10-12 17:18:02,675 INFO L119 LiptonReduction]: Number of co-enabled transitions 336 [2023-10-12 17:18:02,733 INFO L134 LiptonReduction]: Checked pairs total: 674 [2023-10-12 17:18:02,734 INFO L136 LiptonReduction]: Total number of compositions: 6 [2023-10-12 17:18:02,737 INFO L305 stractBuchiCegarLoop]: Interprodecural is true [2023-10-12 17:18:02,738 INFO L306 stractBuchiCegarLoop]: Hoare is false [2023-10-12 17:18:02,738 INFO L307 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2023-10-12 17:18:02,738 INFO L308 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2023-10-12 17:18:02,738 INFO L309 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2023-10-12 17:18:02,738 INFO L310 stractBuchiCegarLoop]: Difference is false [2023-10-12 17:18:02,738 INFO L311 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2023-10-12 17:18:02,739 INFO L315 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiPetriNetCegarLoop ======== [2023-10-12 17:18:02,739 INFO L84 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 31 places, 31 transitions, 116 flow [2023-10-12 17:18:02,746 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2023-10-12 17:18:02,746 INFO L124 PetriNetUnfolderBase]: 0/17 cut-off events. [2023-10-12 17:18:02,746 INFO L125 PetriNetUnfolderBase]: For 5/5 co-relation queries the response was YES. [2023-10-12 17:18:02,747 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty language is not empty [2023-10-12 17:18:02,748 INFO L337 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2023-10-12 17:18:02,748 INFO L84 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 31 places, 31 transitions, 116 flow [2023-10-12 17:18:02,752 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2023-10-12 17:18:02,752 INFO L124 PetriNetUnfolderBase]: 0/17 cut-off events. [2023-10-12 17:18:02,752 INFO L125 PetriNetUnfolderBase]: For 5/5 co-relation queries the response was YES. [2023-10-12 17:18:02,753 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty language is not empty [2023-10-12 17:18:02,756 INFO L748 eck$LassoCheckResult]: Stem: 41#[$Ultimate##0]true [78] $Ultimate##0-->L22-1: Formula: (= 1 v_ULTIMATE.start_x_1) InVars {} OutVars{ULTIMATE.start_x=v_ULTIMATE.start_x_1} AuxVars[] AssignedVars[ULTIMATE.start_x] 43#[L22-1]true [65] L22-1-->L23: Formula: (< v_ULTIMATE.start_x_2 2) InVars {ULTIMATE.start_x=v_ULTIMATE.start_x_2} OutVars{ULTIMATE.start_x=v_ULTIMATE.start_x_2} AuxVars[] AssignedVars[] 45#[L23]true [95] L23-->$Ultimate##0: Formula: (and (= v_fooThread1of2ForFork1_i_2 v_ULTIMATE.start_x_37) (= v_ULTIMATE.start_x_37 v_fooThread1of2ForFork1_thidvar0_2)) InVars {ULTIMATE.start_x=v_ULTIMATE.start_x_37} OutVars{fooThread1of2ForFork1_y=v_fooThread1of2ForFork1_y_4, fooThread1of2ForFork1_i=v_fooThread1of2ForFork1_i_2, ULTIMATE.start_x=v_ULTIMATE.start_x_37, fooThread1of2ForFork1_thidvar0=v_fooThread1of2ForFork1_thidvar0_2} AuxVars[] AssignedVars[fooThread1of2ForFork1_y, fooThread1of2ForFork1_i, fooThread1of2ForFork1_thidvar0] 47#[$Ultimate##0, L23-1]true [72] L23-1-->L22-1: Formula: (= (+ 1 v_ULTIMATE.start_x_4) v_ULTIMATE.start_x_3) InVars {ULTIMATE.start_x=v_ULTIMATE.start_x_4} OutVars{ULTIMATE.start_x=v_ULTIMATE.start_x_3} AuxVars[] AssignedVars[ULTIMATE.start_x] 49#[$Ultimate##0, L22-1]true [65] L22-1-->L23: Formula: (< v_ULTIMATE.start_x_2 2) InVars {ULTIMATE.start_x=v_ULTIMATE.start_x_2} OutVars{ULTIMATE.start_x=v_ULTIMATE.start_x_2} AuxVars[] AssignedVars[] 51#[$Ultimate##0, L23]true [96] L23-->$Ultimate##0: Formula: (and (= v_fooThread2of2ForFork1_i_2 v_ULTIMATE.start_x_40) (= v_fooThread2of2ForFork1_thidvar0_2 v_ULTIMATE.start_x_40)) InVars {ULTIMATE.start_x=v_ULTIMATE.start_x_40} OutVars{fooThread2of2ForFork1_thidvar0=v_fooThread2of2ForFork1_thidvar0_2, ULTIMATE.start_x=v_ULTIMATE.start_x_40, fooThread2of2ForFork1_y=v_fooThread2of2ForFork1_y_4, fooThread2of2ForFork1_i=v_fooThread2of2ForFork1_i_2} AuxVars[] AssignedVars[fooThread2of2ForFork1_thidvar0, fooThread2of2ForFork1_y, fooThread2of2ForFork1_i] 53#[$Ultimate##0, L23-1, $Ultimate##0]true [72] L23-1-->L22-1: Formula: (= (+ 1 v_ULTIMATE.start_x_4) v_ULTIMATE.start_x_3) InVars {ULTIMATE.start_x=v_ULTIMATE.start_x_4} OutVars{ULTIMATE.start_x=v_ULTIMATE.start_x_3} AuxVars[] AssignedVars[ULTIMATE.start_x] 55#[L22-1, $Ultimate##0, $Ultimate##0]true [65] L22-1-->L23: Formula: (< v_ULTIMATE.start_x_2 2) InVars {ULTIMATE.start_x=v_ULTIMATE.start_x_2} OutVars{ULTIMATE.start_x=v_ULTIMATE.start_x_2} AuxVars[] AssignedVars[] 57#[$Ultimate##0, L23, $Ultimate##0]true [93] L23-->ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 59#[$Ultimate##0, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, $Ultimate##0]true [2023-10-12 17:18:02,757 INFO L750 eck$LassoCheckResult]: Loop: 59#[$Ultimate##0, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, $Ultimate##0]true [94] ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES-->ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 59#[$Ultimate##0, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, $Ultimate##0]true [2023-10-12 17:18:02,757 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-10-12 17:18:02,758 INFO L85 PathProgramCache]: Analyzing trace with hash -1587723320, now seen corresponding path program 1 times [2023-10-12 17:18:02,758 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-10-12 17:18:02,758 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1245801299] [2023-10-12 17:18:02,758 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-10-12 17:18:02,758 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-10-12 17:18:02,769 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-10-12 17:18:02,821 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2023-10-12 17:18:02,821 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-10-12 17:18:02,822 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1245801299] [2023-10-12 17:18:02,822 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1245801299] provided 1 perfect and 0 imperfect interpolant sequences [2023-10-12 17:18:02,822 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-10-12 17:18:02,822 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2023-10-12 17:18:02,822 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1704407372] [2023-10-12 17:18:02,822 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-10-12 17:18:02,823 INFO L753 eck$LassoCheckResult]: stem already infeasible [2023-10-12 17:18:02,823 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-10-12 17:18:02,823 INFO L85 PathProgramCache]: Analyzing trace with hash 125, now seen corresponding path program 1 times [2023-10-12 17:18:02,823 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-10-12 17:18:02,823 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [781516729] [2023-10-12 17:18:02,823 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-10-12 17:18:02,824 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-10-12 17:18:02,826 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-10-12 17:18:02,826 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-10-12 17:18:02,827 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-10-12 17:18:02,828 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-10-12 17:18:02,832 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-10-12 17:18:02,833 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2023-10-12 17:18:02,833 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2023-10-12 17:18:02,833 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 31 places, 31 transitions, 116 flow. Second operand has 4 states, 4 states have (on average 2.25) internal successors, (9), 3 states have internal predecessors, (9), 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) [2023-10-12 17:18:02,833 INFO L124 encePairwiseOnDemand]: Subtrahend is not yet constructed. Will not use universal subtrahend loopers optimization. [2023-10-12 17:18:02,833 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2023-10-12 17:18:02,876 INFO L124 PetriNetUnfolderBase]: 30/77 cut-off events. [2023-10-12 17:18:02,876 INFO L125 PetriNetUnfolderBase]: For 14/14 co-relation queries the response was YES. [2023-10-12 17:18:02,877 INFO L83 FinitePrefix]: Finished finitePrefix Result has 186 conditions, 77 events. 30/77 cut-off events. For 14/14 co-relation queries the response was YES. Maximal size of possible extension queue 8. Compared 153 event pairs, 10 based on Foata normal form. 0/69 useless extension candidates. Maximal degree in co-relation 180. Up to 65 conditions per place. [2023-10-12 17:18:02,878 INFO L140 encePairwiseOnDemand]: 38/45 looper letters, 22 selfloop transitions, 5 changer transitions 0/27 dead transitions. [2023-10-12 17:18:02,879 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 29 places, 27 transitions, 138 flow [2023-10-12 17:18:02,879 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 29 places, 27 transitions, 138 flow [2023-10-12 17:18:02,895 INFO L124 PetriNetUnfolderBase]: 30/77 cut-off events. [2023-10-12 17:18:02,895 INFO L125 PetriNetUnfolderBase]: For 14/14 co-relation queries the response was YES. [2023-10-12 17:18:02,895 INFO L83 FinitePrefix]: Finished finitePrefix Result has 186 conditions, 77 events. 30/77 cut-off events. For 14/14 co-relation queries the response was YES. Maximal size of possible extension queue 8. Compared 153 event pairs, 10 based on Foata normal form. 0/69 useless extension candidates. Maximal degree in co-relation 180. Up to 65 conditions per place. [2023-10-12 17:18:02,896 INFO L82 GeneralOperation]: Start removeDeadBuchi. Operand has 29 places, 27 transitions, 138 flow [2023-10-12 17:18:02,896 INFO L88 GeneralOperation]: Finished RemoveDeadBuchi, result has has 28 places, 27 transitions, 138 flow [2023-10-12 17:18:02,897 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2023-10-12 17:18:02,897 INFO L430 stractBuchiCegarLoop]: Abstraction has has 28 places, 27 transitions, 138 flow [2023-10-12 17:18:02,898 INFO L337 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2023-10-12 17:18:02,898 INFO L84 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 28 places, 27 transitions, 138 flow [2023-10-12 17:18:02,903 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2023-10-12 17:18:02,903 INFO L124 PetriNetUnfolderBase]: 19/55 cut-off events. [2023-10-12 17:18:02,903 INFO L125 PetriNetUnfolderBase]: For 9/9 co-relation queries the response was YES. [2023-10-12 17:18:02,903 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty language is not empty [2023-10-12 17:18:02,904 INFO L748 eck$LassoCheckResult]: Stem: 41#[$Ultimate##0]true [78] $Ultimate##0-->L22-1: Formula: (= 1 v_ULTIMATE.start_x_1) InVars {} OutVars{ULTIMATE.start_x=v_ULTIMATE.start_x_1} AuxVars[] AssignedVars[ULTIMATE.start_x] 43#[L22-1]true [65] L22-1-->L23: Formula: (< v_ULTIMATE.start_x_2 2) InVars {ULTIMATE.start_x=v_ULTIMATE.start_x_2} OutVars{ULTIMATE.start_x=v_ULTIMATE.start_x_2} AuxVars[] AssignedVars[] 45#[L23]true [95] L23-->$Ultimate##0: Formula: (and (= v_fooThread1of2ForFork1_i_2 v_ULTIMATE.start_x_37) (= v_ULTIMATE.start_x_37 v_fooThread1of2ForFork1_thidvar0_2)) InVars {ULTIMATE.start_x=v_ULTIMATE.start_x_37} OutVars{fooThread1of2ForFork1_y=v_fooThread1of2ForFork1_y_4, fooThread1of2ForFork1_i=v_fooThread1of2ForFork1_i_2, ULTIMATE.start_x=v_ULTIMATE.start_x_37, fooThread1of2ForFork1_thidvar0=v_fooThread1of2ForFork1_thidvar0_2} AuxVars[] AssignedVars[fooThread1of2ForFork1_y, fooThread1of2ForFork1_i, fooThread1of2ForFork1_thidvar0] 47#[$Ultimate##0, L23-1]true [111] $Ultimate##0-->fooEXIT: Formula: (= v_fooThread1of2ForFork1_y_5 4) InVars {} OutVars{fooThread1of2ForFork1_y=v_fooThread1of2ForFork1_y_5} AuxVars[] AssignedVars[fooThread1of2ForFork1_y] 86#[L23-1, fooEXIT]true [72] L23-1-->L22-1: Formula: (= (+ 1 v_ULTIMATE.start_x_4) v_ULTIMATE.start_x_3) InVars {ULTIMATE.start_x=v_ULTIMATE.start_x_4} OutVars{ULTIMATE.start_x=v_ULTIMATE.start_x_3} AuxVars[] AssignedVars[ULTIMATE.start_x] 88#[L22-1, fooEXIT]true [109] L22-1-->L27: Formula: (and (<= 2 v_ULTIMATE.start_x_50) (= v_ULTIMATE.start_x_49 1)) InVars {ULTIMATE.start_x=v_ULTIMATE.start_x_50} OutVars{ULTIMATE.start_x=v_ULTIMATE.start_x_49} AuxVars[] AssignedVars[ULTIMATE.start_x] 90#[L27, fooEXIT]true [99] fooEXIT-->L28: Formula: (= v_ULTIMATE.start_x_46 v_fooThread1of2ForFork1_thidvar0_4) InVars {ULTIMATE.start_x=v_ULTIMATE.start_x_46, fooThread1of2ForFork1_thidvar0=v_fooThread1of2ForFork1_thidvar0_4} OutVars{ULTIMATE.start_x=v_ULTIMATE.start_x_46, fooThread1of2ForFork1_thidvar0=v_fooThread1of2ForFork1_thidvar0_4} AuxVars[] AssignedVars[] 92#[L28]true [77] L28-->L29: Formula: (< v_ULTIMATE.start_x_7 3) InVars {ULTIMATE.start_x=v_ULTIMATE.start_x_7} OutVars{ULTIMATE.start_x=v_ULTIMATE.start_x_7} AuxVars[] AssignedVars[] 94#[L29]true [91] L29-->$Ultimate##0: Formula: (and (= v_fooThread1of2ForFork0_i_2 v_ULTIMATE.start_x_31) (= v_ULTIMATE.start_x_31 v_fooThread1of2ForFork0_thidvar0_2)) InVars {ULTIMATE.start_x=v_ULTIMATE.start_x_31} OutVars{fooThread1of2ForFork0_y=v_fooThread1of2ForFork0_y_4, fooThread1of2ForFork0_i=v_fooThread1of2ForFork0_i_2, ULTIMATE.start_x=v_ULTIMATE.start_x_31, fooThread1of2ForFork0_thidvar0=v_fooThread1of2ForFork0_thidvar0_2} AuxVars[] AssignedVars[fooThread1of2ForFork0_y, fooThread1of2ForFork0_i, fooThread1of2ForFork0_thidvar0] 96#[$Ultimate##0, L29-1]true [69] L29-1-->L28: Formula: (= (+ 1 v_ULTIMATE.start_x_9) v_ULTIMATE.start_x_8) InVars {ULTIMATE.start_x=v_ULTIMATE.start_x_9} OutVars{ULTIMATE.start_x=v_ULTIMATE.start_x_8} AuxVars[] AssignedVars[ULTIMATE.start_x] 98#[$Ultimate##0, L28]true [77] L28-->L29: Formula: (< v_ULTIMATE.start_x_7 3) InVars {ULTIMATE.start_x=v_ULTIMATE.start_x_7} OutVars{ULTIMATE.start_x=v_ULTIMATE.start_x_7} AuxVars[] AssignedVars[] 100#[$Ultimate##0, L29]true [92] L29-->$Ultimate##0: Formula: (and (= v_fooThread2of2ForFork0_thidvar0_2 v_ULTIMATE.start_x_34) (= v_fooThread2of2ForFork0_i_2 v_ULTIMATE.start_x_34)) InVars {ULTIMATE.start_x=v_ULTIMATE.start_x_34} OutVars{fooThread2of2ForFork0_thidvar0=v_fooThread2of2ForFork0_thidvar0_2, ULTIMATE.start_x=v_ULTIMATE.start_x_34, fooThread2of2ForFork0_y=v_fooThread2of2ForFork0_y_4, fooThread2of2ForFork0_i=v_fooThread2of2ForFork0_i_2} AuxVars[] AssignedVars[fooThread2of2ForFork0_thidvar0, fooThread2of2ForFork0_y, fooThread2of2ForFork0_i] 102#[$Ultimate##0, $Ultimate##0, L29-1]true [69] L29-1-->L28: Formula: (= (+ 1 v_ULTIMATE.start_x_9) v_ULTIMATE.start_x_8) InVars {ULTIMATE.start_x=v_ULTIMATE.start_x_9} OutVars{ULTIMATE.start_x=v_ULTIMATE.start_x_8} AuxVars[] AssignedVars[ULTIMATE.start_x] 104#[$Ultimate##0, L28, $Ultimate##0]true [77] L28-->L29: Formula: (< v_ULTIMATE.start_x_7 3) InVars {ULTIMATE.start_x=v_ULTIMATE.start_x_7} OutVars{ULTIMATE.start_x=v_ULTIMATE.start_x_7} AuxVars[] AssignedVars[] 106#[$Ultimate##0, $Ultimate##0, L29]true [89] L29-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 108#[$Ultimate##0, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, $Ultimate##0]true [2023-10-12 17:18:02,904 INFO L750 eck$LassoCheckResult]: Loop: 108#[$Ultimate##0, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, $Ultimate##0]true [90] ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 108#[$Ultimate##0, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, $Ultimate##0]true [2023-10-12 17:18:02,904 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-10-12 17:18:02,905 INFO L85 PathProgramCache]: Analyzing trace with hash 891866533, now seen corresponding path program 1 times [2023-10-12 17:18:02,905 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-10-12 17:18:02,905 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1733935726] [2023-10-12 17:18:02,905 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-10-12 17:18:02,905 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-10-12 17:18:02,914 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-10-12 17:18:02,957 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 7 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2023-10-12 17:18:02,957 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-10-12 17:18:02,960 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1733935726] [2023-10-12 17:18:02,961 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1733935726] provided 1 perfect and 0 imperfect interpolant sequences [2023-10-12 17:18:02,961 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-10-12 17:18:02,961 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2023-10-12 17:18:02,961 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1609473812] [2023-10-12 17:18:02,961 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-10-12 17:18:02,961 INFO L753 eck$LassoCheckResult]: stem already infeasible [2023-10-12 17:18:02,962 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-10-12 17:18:02,962 INFO L85 PathProgramCache]: Analyzing trace with hash 121, now seen corresponding path program 1 times [2023-10-12 17:18:02,962 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-10-12 17:18:02,962 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [434452405] [2023-10-12 17:18:02,962 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-10-12 17:18:02,964 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-10-12 17:18:02,968 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-10-12 17:18:02,968 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-10-12 17:18:02,968 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-10-12 17:18:02,969 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-10-12 17:18:02,974 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-10-12 17:18:02,975 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2023-10-12 17:18:02,975 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=10, Unknown=0, NotChecked=0, Total=20 [2023-10-12 17:18:02,975 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 28 places, 27 transitions, 138 flow. Second operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 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) [2023-10-12 17:18:02,976 INFO L124 encePairwiseOnDemand]: Subtrahend is not yet constructed. Will not use universal subtrahend loopers optimization. [2023-10-12 17:18:02,976 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2023-10-12 17:18:03,027 INFO L124 PetriNetUnfolderBase]: 18/57 cut-off events. [2023-10-12 17:18:03,028 INFO L125 PetriNetUnfolderBase]: For 10/10 co-relation queries the response was YES. [2023-10-12 17:18:03,030 INFO L83 FinitePrefix]: Finished finitePrefix Result has 195 conditions, 57 events. 18/57 cut-off events. For 10/10 co-relation queries the response was YES. Maximal size of possible extension queue 5. Compared 86 event pairs, 1 based on Foata normal form. 0/53 useless extension candidates. Maximal degree in co-relation 150. Up to 45 conditions per place. [2023-10-12 17:18:03,031 INFO L140 encePairwiseOnDemand]: 39/45 looper letters, 21 selfloop transitions, 7 changer transitions 0/28 dead transitions. [2023-10-12 17:18:03,031 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 31 places, 28 transitions, 194 flow [2023-10-12 17:18:03,031 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 31 places, 28 transitions, 194 flow [2023-10-12 17:18:03,035 INFO L124 PetriNetUnfolderBase]: 18/57 cut-off events. [2023-10-12 17:18:03,035 INFO L125 PetriNetUnfolderBase]: For 10/10 co-relation queries the response was YES. [2023-10-12 17:18:03,036 INFO L83 FinitePrefix]: Finished finitePrefix Result has 195 conditions, 57 events. 18/57 cut-off events. For 10/10 co-relation queries the response was YES. Maximal size of possible extension queue 5. Compared 87 event pairs, 1 based on Foata normal form. 0/53 useless extension candidates. Maximal degree in co-relation 150. Up to 45 conditions per place. [2023-10-12 17:18:03,036 INFO L82 GeneralOperation]: Start removeDeadBuchi. Operand has 31 places, 28 transitions, 194 flow [2023-10-12 17:18:03,038 INFO L88 GeneralOperation]: Finished RemoveDeadBuchi, result has has 31 places, 28 transitions, 194 flow [2023-10-12 17:18:03,039 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2023-10-12 17:18:03,041 INFO L430 stractBuchiCegarLoop]: Abstraction has has 31 places, 28 transitions, 194 flow [2023-10-12 17:18:03,041 INFO L337 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2023-10-12 17:18:03,041 INFO L84 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 31 places, 28 transitions, 194 flow [2023-10-12 17:18:03,046 INFO L124 PetriNetUnfolderBase]: 18/57 cut-off events. [2023-10-12 17:18:03,046 INFO L125 PetriNetUnfolderBase]: For 10/10 co-relation queries the response was YES. [2023-10-12 17:18:03,047 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty language is empty [2023-10-12 17:18:03,051 INFO L201 PluginConnector]: Adding new model fork_in_loop.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer CFG 12.10 05:18:03 BoogieIcfgContainer [2023-10-12 17:18:03,051 INFO L131 PluginConnector]: ------------------------ END BuchiAutomizer---------------------------- [2023-10-12 17:18:03,052 INFO L158 Benchmark]: Toolchain (without parser) took 1470.88ms. Allocated memory is still 198.2MB. Free memory was 151.5MB in the beginning and 123.6MB in the end (delta: 27.9MB). Peak memory consumption was 28.3MB. Max. memory is 8.0GB. [2023-10-12 17:18:03,053 INFO L158 Benchmark]: Boogie PL CUP Parser took 0.26ms. Allocated memory is still 198.2MB. Free memory is still 152.4MB. There was no memory consumed. Max. memory is 8.0GB. [2023-10-12 17:18:03,055 INFO L158 Benchmark]: Boogie Procedure Inliner took 25.52ms. Allocated memory is still 198.2MB. Free memory was 151.4MB in the beginning and 149.6MB in the end (delta: 1.8MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2023-10-12 17:18:03,061 INFO L158 Benchmark]: Boogie Preprocessor took 15.03ms. Allocated memory is still 198.2MB. Free memory was 149.6MB in the beginning and 148.5MB in the end (delta: 1.0MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2023-10-12 17:18:03,061 INFO L158 Benchmark]: RCFGBuilder took 239.23ms. Allocated memory is still 198.2MB. Free memory was 148.5MB in the beginning and 139.4MB in the end (delta: 9.1MB). Peak memory consumption was 9.4MB. Max. memory is 8.0GB. [2023-10-12 17:18:03,061 INFO L158 Benchmark]: BuchiAutomizer took 1183.91ms. Allocated memory is still 198.2MB. Free memory was 139.4MB in the beginning and 123.6MB in the end (delta: 15.8MB). Peak memory consumption was 15.7MB. Max. memory is 8.0GB. [2023-10-12 17:18:03,062 INFO L338 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.26ms. Allocated memory is still 198.2MB. Free memory is still 152.4MB. There was no memory consumed. Max. memory is 8.0GB. * Boogie Procedure Inliner took 25.52ms. Allocated memory is still 198.2MB. Free memory was 151.4MB in the beginning and 149.6MB in the end (delta: 1.8MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * Boogie Preprocessor took 15.03ms. Allocated memory is still 198.2MB. Free memory was 149.6MB in the beginning and 148.5MB in the end (delta: 1.0MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 239.23ms. Allocated memory is still 198.2MB. Free memory was 148.5MB in the beginning and 139.4MB in the end (delta: 9.1MB). Peak memory consumption was 9.4MB. Max. memory is 8.0GB. * BuchiAutomizer took 1183.91ms. Allocated memory is still 198.2MB. Free memory was 139.4MB in the beginning and 123.6MB in the end (delta: 15.8MB). Peak memory consumption was 15.7MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: Constructed decomposition of program Your program was decomposed into 2 terminating modules (2 trivial, 0 deterministic, 0 nondeterministic). 2 modules have a trivial ranking function, the largest among these consists of 5 locations. - StatisticsResult: Timing statistics BüchiAutomizer plugin needed 0.5s and 5 iterations. TraceHistogramMax:0. Analysis of lassos took 0.5s. Construction of modules took 0.0s. Büchi inclusion checks took 0.1s. Highest rank in rank-based complementation 0. Minimization of det autom 0. Minimization of nondet autom 0. Automata minimization No data available. Non-live state removal took 0.0s Buchi closure took 0.0s. Biggest automaton had -1 states and ocurred in iteration -1. Nontrivial modules had stage [0, 0, 0, 0, 0]. InterpolantCoveringCapabilityFinite: 0/0 InterpolantCoveringCapabilityBuchi: 0/0 HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 58 SdHoareTripleChecker+Valid, 0.1s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 58 mSDsluCounter, 9 SdHoareTripleChecker+Invalid, 0.1s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 0 mSDsCounter, 14 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 103 IncrementalHoareTripleChecker+Invalid, 117 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 14 mSolverCounterUnsat, 9 mSDtfsCounter, 103 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown LassoAnalysisResults: nont1 unkn0 SFLI0 SFLT0 conc0 concLT0 SILN3 SILU0 SILI0 SILT0 lasso0 LassoPreprocessingBenchmarks: LassoTerminationAnalysisBenchmarks: not availableLassoTerminationAnalysisBenchmarks: LassoNonterminationAnalysisSatFixpoint: 0 LassoNonterminationAnalysisSatUnbounded: 0 LassoNonterminationAnalysisUnsat: 0 LassoNonterminationAnalysisUnknown: 0 LassoNonterminationAnalysisTime: 0.0s InitialAbstractionConstructionTime: 0.2s - TerminationAnalysisResult: Termination proven Buchi Automizer proved that your program is terminating * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer: - StatisticsResult: PetriNetLargeBlockEncoding benchmarks Lipton Reduction Statistics: ReductionTime: 0.1s, 23 PlacesBefore, 20 PlacesAfterwards, 20 TransitionsBefore, 17 TransitionsAfterwards, 44 CoEnabledTransitionPairs, 1 FixpointIterations, 0 TrivialSequentialCompositions, 3 ConcurrentSequentialCompositions, 0 TrivialYvCompositions, 0 ConcurrentYvCompositions, 0 ChoiceCompositions, 3 TotalNumberOfCompositions, 62 MoverChecksTotal, Independence Relation Statistics: CachedIndependenceRelation.Independence Queries: [ total: 62, independent: 62, independent conditional: 0, independent unconditional: 62, 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: 39, independent: 39, independent conditional: 0, independent unconditional: 39, 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: 39, independent: 39, independent conditional: 0, independent unconditional: 39, 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: 62, independent: 23, independent conditional: 0, independent unconditional: 23, dependent: 0, dependent conditional: 0, dependent unconditional: 0, unknown: 39, unknown conditional: 0, unknown unconditional: 39] , Statistics on independence cache: Total cache size (in pairs): 18, Positive cache size: 18, Positive conditional cache size: 0, Positive unconditional cache size: 18, Negative cache size: 0, Negative conditional cache size: 0, Negative unconditional cache size: 0, Unknown cache size: 0, Unknown conditional cache size: 0, Unknown unconditional cache size: 0 - StatisticsResult: PetriNetLargeBlockEncoding benchmarks Lipton Reduction Statistics: ReductionTime: 0.1s, 37 PlacesBefore, 31 PlacesAfterwards, 37 TransitionsBefore, 31 TransitionsAfterwards, 336 CoEnabledTransitionPairs, 1 FixpointIterations, 0 TrivialSequentialCompositions, 6 ConcurrentSequentialCompositions, 0 TrivialYvCompositions, 0 ConcurrentYvCompositions, 0 ChoiceCompositions, 6 TotalNumberOfCompositions, 674 MoverChecksTotal, Independence Relation Statistics: CachedIndependenceRelation.Independence Queries: [ total: 674, independent: 674, independent conditional: 0, independent unconditional: 674, 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: 258, independent: 258, independent conditional: 0, independent unconditional: 258, 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: 258, independent: 258, independent conditional: 0, independent unconditional: 258, 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: 674, independent: 416, independent conditional: 0, independent unconditional: 416, dependent: 0, dependent conditional: 0, dependent unconditional: 0, unknown: 258, unknown conditional: 0, unknown unconditional: 258] , Statistics on independence cache: Total cache size (in pairs): 108, Positive cache size: 108, Positive conditional cache size: 0, Positive unconditional cache size: 108, Negative cache size: 0, Negative conditional cache size: 0, Negative unconditional cache size: 0, Unknown cache size: 0, Unknown conditional cache size: 0, Unknown unconditional cache size: 0 RESULT: Ultimate proved your program to be correct! [2023-10-12 17:18:03,092 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (1)] Forceful destruction successful, exit code 0 Received shutdown request...