/root/.sdkman/candidates/java/current/bin/java -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data -s ../../../trunk/examples/settings/default/automizer/svcomp-Termination-32bit-Automizer_Default.epf --buchiautomizer.automaton.type.for.concurrent.programs BUCHI_PETRI_NET --buchiautomizer.use.buchi.petri.net.intersection.optimizations true --buchiautomizer.use.automata.for.buchi.petri.net.emptiness.check false -tc ../../../trunk/examples/toolchains/BuchiAutomizerBplInline.xml -i ../../../trunk/examples/concurrent/bpl/POPL2023/optimistic-concurrency2.bpl -------------------------------------------------------------------------------- This is Ultimate 0.2.3-?-9ecb849-m [2024-02-10 01:02:06,529 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-02-10 01:02:06,645 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/default/automizer/svcomp-Termination-32bit-Automizer_Default.epf [2024-02-10 01:02:06,655 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-02-10 01:02:06,656 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-02-10 01:02:06,672 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder.Only consider context switches at boundaries of atomic blocks [2024-02-10 01:02:06,726 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-02-10 01:02:06,727 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-02-10 01:02:06,727 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-02-10 01:02:06,732 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-02-10 01:02:06,733 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-02-10 01:02:06,733 INFO L153 SettingsManager]: * Use SBE=true [2024-02-10 01:02:06,734 INFO L151 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2024-02-10 01:02:06,735 INFO L153 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2024-02-10 01:02:06,736 INFO L153 SettingsManager]: * Use old map elimination=false [2024-02-10 01:02:06,736 INFO L153 SettingsManager]: * Use external solver (rank synthesis)=false [2024-02-10 01:02:06,736 INFO L153 SettingsManager]: * Use only trivial implications for array writes=true [2024-02-10 01:02:06,736 INFO L153 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2024-02-10 01:02:06,737 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-02-10 01:02:06,738 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2024-02-10 01:02:06,738 INFO L153 SettingsManager]: * sizeof long=4 [2024-02-10 01:02:06,738 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-02-10 01:02:06,739 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-02-10 01:02:06,739 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-02-10 01:02:06,740 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2024-02-10 01:02:06,740 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2024-02-10 01:02:06,740 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2024-02-10 01:02:06,740 INFO L153 SettingsManager]: * Check unreachability of reach_error function=false [2024-02-10 01:02:06,741 INFO L153 SettingsManager]: * sizeof long double=12 [2024-02-10 01:02:06,741 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-02-10 01:02:06,742 INFO L153 SettingsManager]: * Assume nondeterminstic values are in range=false [2024-02-10 01:02:06,742 INFO L153 SettingsManager]: * Use constant arrays=true [2024-02-10 01:02:06,742 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-02-10 01:02:06,742 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-02-10 01:02:06,742 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-02-10 01:02:06,743 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-02-10 01:02:06,743 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-02-10 01:02:06,743 INFO L151 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2024-02-10 01:02:06,744 INFO L153 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 Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer: Use Buchi Petri Net Intersection Optimizations -> true Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer: Use automata for Buchi Petri Net emptiness check -> false [2024-02-10 01:02:07,390 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-02-10 01:02:07,455 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-02-10 01:02:07,458 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-02-10 01:02:07,459 INFO L270 PluginConnector]: Initializing Boogie PL CUP Parser... [2024-02-10 01:02:07,472 INFO L274 PluginConnector]: Boogie PL CUP Parser initialized [2024-02-10 01:02:07,474 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/concurrent/bpl/POPL2023/optimistic-concurrency2.bpl [2024-02-10 01:02:07,474 INFO L110 BoogieParser]: Parsing: '/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/concurrent/bpl/POPL2023/optimistic-concurrency2.bpl' [2024-02-10 01:02:07,552 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-02-10 01:02:07,554 INFO L133 ToolchainWalker]: Walking toolchain with 4 elements. [2024-02-10 01:02:07,561 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-02-10 01:02:07,561 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-02-10 01:02:07,561 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-02-10 01:02:07,594 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "optimistic-concurrency2.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 10.02 01:02:07" (1/1) ... [2024-02-10 01:02:07,657 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "optimistic-concurrency2.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 10.02 01:02:07" (1/1) ... [2024-02-10 01:02:07,679 INFO L138 Inliner]: procedures = 3, calls = 3, calls flagged for inlining = 0, calls inlined = 0, statements flattened = 0 [2024-02-10 01:02:07,682 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-02-10 01:02:07,697 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-02-10 01:02:07,697 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-02-10 01:02:07,697 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-02-10 01:02:07,705 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "optimistic-concurrency2.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 10.02 01:02:07" (1/1) ... [2024-02-10 01:02:07,706 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "optimistic-concurrency2.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 10.02 01:02:07" (1/1) ... [2024-02-10 01:02:07,718 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "optimistic-concurrency2.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 10.02 01:02:07" (1/1) ... [2024-02-10 01:02:07,718 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "optimistic-concurrency2.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 10.02 01:02:07" (1/1) ... [2024-02-10 01:02:07,725 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "optimistic-concurrency2.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 10.02 01:02:07" (1/1) ... [2024-02-10 01:02:07,732 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "optimistic-concurrency2.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 10.02 01:02:07" (1/1) ... [2024-02-10 01:02:07,749 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "optimistic-concurrency2.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 10.02 01:02:07" (1/1) ... [2024-02-10 01:02:07,750 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "optimistic-concurrency2.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 10.02 01:02:07" (1/1) ... [2024-02-10 01:02:07,756 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-02-10 01:02:07,757 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-02-10 01:02:07,757 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-02-10 01:02:07,757 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-02-10 01:02:07,759 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "optimistic-concurrency2.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 10.02 01:02:07" (1/1) ... [2024-02-10 01:02:07,765 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-02-10 01:02:07,794 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-02-10 01:02:07,838 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) [2024-02-10 01:02:07,880 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 [2024-02-10 01:02:07,952 INFO L124 BoogieDeclarations]: Specification and implementation of procedure reader given in one single declaration [2024-02-10 01:02:07,952 INFO L130 BoogieDeclarations]: Found specification of procedure reader [2024-02-10 01:02:07,953 INFO L138 BoogieDeclarations]: Found implementation of procedure reader [2024-02-10 01:02:07,953 INFO L124 BoogieDeclarations]: Specification and implementation of procedure ULTIMATE.start given in one single declaration [2024-02-10 01:02:07,953 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-02-10 01:02:07,954 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-02-10 01:02:07,954 INFO L124 BoogieDeclarations]: Specification and implementation of procedure writer given in one single declaration [2024-02-10 01:02:07,954 INFO L130 BoogieDeclarations]: Found specification of procedure writer [2024-02-10 01:02:07,954 INFO L138 BoogieDeclarations]: Found implementation of procedure writer [2024-02-10 01:02:07,955 WARN L210 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement [2024-02-10 01:02:08,047 INFO L236 CfgBuilder]: Building ICFG [2024-02-10 01:02:08,060 INFO L262 CfgBuilder]: Building CFG for each procedure with an implementation [2024-02-10 01:02:08,296 INFO L277 CfgBuilder]: Performing block encoding [2024-02-10 01:02:08,302 INFO L297 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-02-10 01:02:08,303 INFO L302 CfgBuilder]: Removed 0 assume(true) statements. [2024-02-10 01:02:08,305 INFO L201 PluginConnector]: Adding new model optimistic-concurrency2.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 10.02 01:02:08 BoogieIcfgContainer [2024-02-10 01:02:08,305 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-02-10 01:02:08,306 INFO L112 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2024-02-10 01:02:08,306 INFO L270 PluginConnector]: Initializing BuchiAutomizer... [2024-02-10 01:02:08,326 INFO L274 PluginConnector]: BuchiAutomizer initialized [2024-02-10 01:02:08,327 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-02-10 01:02:08,327 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "optimistic-concurrency2.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 10.02 01:02:07" (1/2) ... [2024-02-10 01:02:08,334 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@5b372e0d and model type optimistic-concurrency2.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 10.02 01:02:08, skipping insertion in model container [2024-02-10 01:02:08,334 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-02-10 01:02:08,335 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "optimistic-concurrency2.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 10.02 01:02:08" (2/2) ... [2024-02-10 01:02:08,339 INFO L332 chiAutomizerObserver]: Analyzing ICFG optimistic-concurrency2.bpl [2024-02-10 01:02:08,541 INFO L144 ThreadInstanceAdder]: Constructed 5 joinOtherThreadTransitions. [2024-02-10 01:02:08,624 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 44 places, 43 transitions, 113 flow [2024-02-10 01:02:08,666 INFO L124 PetriNetUnfolderBase]: 4/35 cut-off events. [2024-02-10 01:02:08,667 INFO L125 PetriNetUnfolderBase]: For 3/3 co-relation queries the response was YES. [2024-02-10 01:02:08,671 INFO L83 FinitePrefix]: Finished finitePrefix Result has 48 conditions, 35 events. 4/35 cut-off events. For 3/3 co-relation queries the response was YES. Maximal size of possible extension queue 5. Compared 49 event pairs, 0 based on Foata normal form. 0/30 useless extension candidates. Maximal degree in co-relation 31. Up to 2 conditions per place. [2024-02-10 01:02:08,671 INFO L82 GeneralOperation]: Start removeDead. Operand has 44 places, 43 transitions, 113 flow [2024-02-10 01:02:08,704 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 41 places, 35 transitions, 88 flow [2024-02-10 01:02:08,722 INFO L303 stractBuchiCegarLoop]: Interprodecural is true [2024-02-10 01:02:08,723 INFO L304 stractBuchiCegarLoop]: Hoare is false [2024-02-10 01:02:08,724 INFO L305 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2024-02-10 01:02:08,724 INFO L306 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2024-02-10 01:02:08,724 INFO L307 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2024-02-10 01:02:08,724 INFO L308 stractBuchiCegarLoop]: Difference is false [2024-02-10 01:02:08,724 INFO L309 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2024-02-10 01:02:08,725 INFO L313 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiPetriNetCegarLoop ======== [2024-02-10 01:02:08,726 INFO L84 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 41 places, 35 transitions, 88 flow [2024-02-10 01:02:08,761 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2024-02-10 01:02:08,762 INFO L124 PetriNetUnfolderBase]: 0/15 cut-off events. [2024-02-10 01:02:08,762 INFO L125 PetriNetUnfolderBase]: For 1/1 co-relation queries the response was YES. [2024-02-10 01:02:08,762 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty language is not empty [2024-02-10 01:02:08,767 INFO L335 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2024-02-10 01:02:08,767 INFO L84 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 41 places, 35 transitions, 88 flow [2024-02-10 01:02:08,784 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2024-02-10 01:02:08,784 INFO L124 PetriNetUnfolderBase]: 0/15 cut-off events. [2024-02-10 01:02:08,784 INFO L125 PetriNetUnfolderBase]: For 1/1 co-relation queries the response was YES. [2024-02-10 01:02:08,784 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty language is not empty [2024-02-10 01:02:08,789 INFO L748 eck$LassoCheckResult]: Stem: 48#[$Ultimate##0]true [63] $Ultimate##0-->L56: Formula: (and (<= v_ULTIMATE.start_max1_3 v_N_2) (<= 0 v_ULTIMATE.start_min1_3)) InVars {ULTIMATE.start_max1=v_ULTIMATE.start_max1_3, N=v_N_2, ULTIMATE.start_min1=v_ULTIMATE.start_min1_3} OutVars{ULTIMATE.start_max1=v_ULTIMATE.start_max1_3, N=v_N_2, ULTIMATE.start_min1=v_ULTIMATE.start_min1_3} AuxVars[] AssignedVars[] 50#[L56]true [41] L56-->L59: Formula: (and (<= v_ULTIMATE.start_max2_3 v_N_3) (<= 0 v_ULTIMATE.start_min2_3)) InVars {ULTIMATE.start_max2=v_ULTIMATE.start_max2_3, N=v_N_3, ULTIMATE.start_min2=v_ULTIMATE.start_min2_3} OutVars{ULTIMATE.start_max2=v_ULTIMATE.start_max2_3, N=v_N_3, ULTIMATE.start_min2=v_ULTIMATE.start_min2_3} AuxVars[] AssignedVars[] 52#[L59]true [95] L59-->$Ultimate##0: Formula: (and (= v_writerThread1of1ForFork1_end_6 v_ULTIMATE.start_max1_5) (= v_writerThread1of1ForFork1_start_4 v_ULTIMATE.start_min1_5) (= v_writerThread1of1ForFork1_thidvar0_2 1)) InVars {ULTIMATE.start_max1=v_ULTIMATE.start_max1_5, ULTIMATE.start_min1=v_ULTIMATE.start_min1_5} OutVars{ULTIMATE.start_max1=v_ULTIMATE.start_max1_5, writerThread1of1ForFork1_j=v_writerThread1of1ForFork1_j_18, ULTIMATE.start_min1=v_ULTIMATE.start_min1_5, writerThread1of1ForFork1_start=v_writerThread1of1ForFork1_start_4, writerThread1of1ForFork1_end=v_writerThread1of1ForFork1_end_6, writerThread1of1ForFork1_thidvar0=v_writerThread1of1ForFork1_thidvar0_2} AuxVars[] AssignedVars[writerThread1of1ForFork1_j, writerThread1of1ForFork1_start, writerThread1of1ForFork1_end, writerThread1of1ForFork1_thidvar0] 54#[L59-1, $Ultimate##0]true [82] $Ultimate##0-->L41-1: Formula: (= v_writerThread1of1ForFork1_start_1 v_writerThread1of1ForFork1_j_1) InVars {writerThread1of1ForFork1_start=v_writerThread1of1ForFork1_start_1} OutVars{writerThread1of1ForFork1_j=v_writerThread1of1ForFork1_j_1, writerThread1of1ForFork1_start=v_writerThread1of1ForFork1_start_1} AuxVars[] AssignedVars[writerThread1of1ForFork1_j] 56#[L59-1, L41-1]true [2024-02-10 01:02:08,790 INFO L750 eck$LassoCheckResult]: Loop: 56#[L59-1, L41-1]true [84] L41-1-->L42: Formula: (< v_writerThread1of1ForFork1_j_5 v_writerThread1of1ForFork1_end_3) InVars {writerThread1of1ForFork1_j=v_writerThread1of1ForFork1_j_5, writerThread1of1ForFork1_end=v_writerThread1of1ForFork1_end_3} OutVars{writerThread1of1ForFork1_j=v_writerThread1of1ForFork1_j_5, writerThread1of1ForFork1_end=v_writerThread1of1ForFork1_end_3} AuxVars[] AssignedVars[] 59#[L59-1, L42]true [87] L42-->L43: Formula: (and (<= 0 v_writerThread1of1ForFork1_j_9) (<= v_writerThread1of1ForFork1_j_9 v_N_5)) InVars {writerThread1of1ForFork1_j=v_writerThread1of1ForFork1_j_9, N=v_N_5} OutVars{writerThread1of1ForFork1_j=v_writerThread1of1ForFork1_j_9, N=v_N_5} AuxVars[] AssignedVars[] 61#[L59-1, L43]true [88] L43-->L44: Formula: (= (store v_A_3 v_writerThread1of1ForFork1_j_11 0) v_A_2) InVars {A=v_A_3, writerThread1of1ForFork1_j=v_writerThread1of1ForFork1_j_11} OutVars{A=v_A_2, writerThread1of1ForFork1_j=v_writerThread1of1ForFork1_j_11} AuxVars[] AssignedVars[A] 63#[L59-1, L44]true [89] L44-->L41-1: Formula: (= v_writerThread1of1ForFork1_j_14 (+ v_writerThread1of1ForFork1_j_13 1)) InVars {writerThread1of1ForFork1_j=v_writerThread1of1ForFork1_j_13} OutVars{writerThread1of1ForFork1_j=v_writerThread1of1ForFork1_j_14} AuxVars[] AssignedVars[writerThread1of1ForFork1_j] 56#[L59-1, L41-1]true [2024-02-10 01:02:08,794 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2024-02-10 01:02:08,794 INFO L85 PathProgramCache]: Analyzing trace with hash 2842782, now seen corresponding path program 1 times [2024-02-10 01:02:08,807 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-02-10 01:02:08,808 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1410450804] [2024-02-10 01:02:08,809 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-02-10 01:02:08,809 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-02-10 01:02:08,914 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-02-10 01:02:08,916 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-02-10 01:02:08,930 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-02-10 01:02:08,953 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-02-10 01:02:08,965 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2024-02-10 01:02:08,966 INFO L85 PathProgramCache]: Analyzing trace with hash 3512389, now seen corresponding path program 1 times [2024-02-10 01:02:08,966 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-02-10 01:02:08,974 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1327258033] [2024-02-10 01:02:08,974 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-02-10 01:02:08,974 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-02-10 01:02:09,001 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-02-10 01:02:09,002 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-02-10 01:02:09,014 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-02-10 01:02:09,022 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-02-10 01:02:09,041 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2024-02-10 01:02:09,042 INFO L85 PathProgramCache]: Analyzing trace with hash 1146446434, now seen corresponding path program 1 times [2024-02-10 01:02:09,042 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-02-10 01:02:09,043 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [60809382] [2024-02-10 01:02:09,043 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-02-10 01:02:09,043 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-02-10 01:02:09,051 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-02-10 01:02:09,051 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-02-10 01:02:09,056 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-02-10 01:02:09,059 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-02-10 01:02:09,369 INFO L210 LassoAnalysis]: Preferences: [2024-02-10 01:02:09,370 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2024-02-10 01:02:09,370 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-02-10 01:02:09,370 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2024-02-10 01:02:09,371 INFO L129 ssoRankerPreferences]: Use exernal solver: false [2024-02-10 01:02:09,371 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-02-10 01:02:09,371 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2024-02-10 01:02:09,371 INFO L132 ssoRankerPreferences]: Path of dumped script: [2024-02-10 01:02:09,371 INFO L133 ssoRankerPreferences]: Filename of dumped script: optimistic-concurrency2.bpl_BEv2_Iteration1_Lasso [2024-02-10 01:02:09,371 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2024-02-10 01:02:09,371 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2024-02-10 01:02:09,417 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-02-10 01:02:09,446 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-02-10 01:02:09,538 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-02-10 01:02:09,676 INFO L294 LassoAnalysis]: Preprocessing complete. [2024-02-10 01:02:09,680 INFO L490 LassoAnalysis]: Using template 'affine'. [2024-02-10 01:02:09,681 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-02-10 01:02:09,681 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-02-10 01:02:09,703 INFO L229 MonitoredProcess]: Starting monitored process 2 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) [2024-02-10 01:02:09,716 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-02-10 01:02:09,729 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-02-10 01:02:09,730 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-02-10 01:02:09,730 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-02-10 01:02:09,730 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-02-10 01:02:09,741 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-02-10 01:02:09,741 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-02-10 01:02:09,760 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (2)] Waiting until timeout for monitored process [2024-02-10 01:02:09,775 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-02-10 01:02:09,791 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (2)] Forceful destruction successful, exit code 0 [2024-02-10 01:02:09,792 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-02-10 01:02:09,792 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-02-10 01:02:09,794 INFO L229 MonitoredProcess]: Starting monitored process 3 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) [2024-02-10 01:02:09,798 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (3)] Waiting until timeout for monitored process [2024-02-10 01:02:09,799 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-02-10 01:02:09,810 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-02-10 01:02:09,811 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-02-10 01:02:09,811 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-02-10 01:02:09,812 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-02-10 01:02:09,812 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-02-10 01:02:09,813 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-02-10 01:02:09,814 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-02-10 01:02:09,821 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-02-10 01:02:09,831 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (3)] Ended with exit code 0 [2024-02-10 01:02:09,832 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-02-10 01:02:09,832 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-02-10 01:02:09,833 INFO L229 MonitoredProcess]: Starting monitored process 4 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) [2024-02-10 01:02:09,835 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (4)] Waiting until timeout for monitored process [2024-02-10 01:02:09,837 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-02-10 01:02:09,847 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-02-10 01:02:09,847 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-02-10 01:02:09,847 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-02-10 01:02:09,847 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-02-10 01:02:09,855 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-02-10 01:02:09,855 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-02-10 01:02:09,884 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-02-10 01:02:09,947 INFO L443 ModelExtractionUtils]: Simplification made 13 calls to the SMT solver. [2024-02-10 01:02:09,947 INFO L444 ModelExtractionUtils]: 8 out of 25 variables were initially zero. Simplification set additionally 14 variables to zero. [2024-02-10 01:02:09,949 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-02-10 01:02:09,949 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-02-10 01:02:09,952 INFO L229 MonitoredProcess]: Starting monitored process 5 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) [2024-02-10 01:02:09,954 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (5)] Waiting until timeout for monitored process [2024-02-10 01:02:09,955 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-02-10 01:02:09,976 INFO L438 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2024-02-10 01:02:09,977 INFO L513 LassoAnalysis]: Proved termination. [2024-02-10 01:02:09,977 INFO L515 LassoAnalysis]: Termination argument consisting of: Ranking function f(writerThread1of1ForFork1_j, writerThread1of1ForFork1_end) = -1*writerThread1of1ForFork1_j + 1*writerThread1of1ForFork1_end Supporting invariants [] [2024-02-10 01:02:09,984 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (4)] Forceful destruction successful, exit code 0 [2024-02-10 01:02:09,987 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2024-02-10 01:02:10,009 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2024-02-10 01:02:10,019 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-02-10 01:02:10,021 INFO L262 TraceCheckSpWp]: Trace formula consists of 14 conjuncts, 2 conjunts are in the unsatisfiable core [2024-02-10 01:02:10,022 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-02-10 01:02:10,037 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-02-10 01:02:10,037 INFO L262 TraceCheckSpWp]: Trace formula consists of 10 conjuncts, 4 conjunts are in the unsatisfiable core [2024-02-10 01:02:10,038 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-02-10 01:02:10,063 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-02-10 01:02:10,095 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 2 loop predicates [2024-02-10 01:02:10,097 INFO L162 BuchiComplementFKV]: Start buchiComplementFKV with optimization HEIMAT2. Operand 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) [2024-02-10 01:02:10,230 INFO L171 BuchiComplementFKV]: Finished buchiComplementFKV with optimization HEIMAT2. Operand 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) Result 9 states and 543 transitions.6 powerset states3 rank states. The highest rank that occured is 1 [2024-02-10 01:02:10,231 INFO L89 BuchiIntersect]: Starting Intersection [2024-02-10 01:02:10,232 INFO L112 BuchiIntersect]: use intersection optimizations [2024-02-10 01:02:10,233 INFO L63 sectAllAcceptingtNet]: Starting Intersection with all accepting Petri Net [2024-02-10 01:02:10,255 INFO L72 sectAllAcceptingtNet]: Exiting Intersection with all accepting Petri Net [2024-02-10 01:02:10,255 INFO L99 BuchiIntersect]: Exiting Intersection [2024-02-10 01:02:10,257 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 5 states 1 stem states 2 non-accepting loop states 1 accepting loop states [2024-02-10 01:02:10,261 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 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) [2024-02-10 01:02:10,265 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 209 transitions. [2024-02-10 01:02:10,266 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 209 transitions. Stem has 4 letters. Loop has 4 letters. [2024-02-10 01:02:10,266 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-02-10 01:02:10,266 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 209 transitions. Stem has 8 letters. Loop has 4 letters. [2024-02-10 01:02:10,267 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-02-10 01:02:10,267 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 209 transitions. Stem has 4 letters. Loop has 8 letters. [2024-02-10 01:02:10,267 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-02-10 01:02:10,267 INFO L428 stractBuchiCegarLoop]: Abstraction has has 50 places, 439 transitions, 1975 flow [2024-02-10 01:02:10,267 INFO L335 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2024-02-10 01:02:10,267 INFO L84 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 50 places, 439 transitions, 1975 flow [2024-02-10 01:02:10,373 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2024-02-10 01:02:10,373 INFO L124 PetriNetUnfolderBase]: 145/223 cut-off events. [2024-02-10 01:02:10,373 INFO L125 PetriNetUnfolderBase]: For 17/17 co-relation queries the response was YES. [2024-02-10 01:02:10,373 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty language is not empty [2024-02-10 01:02:10,374 INFO L748 eck$LassoCheckResult]: Stem: 48#[$Ultimate##0]true [63] $Ultimate##0-->L56: Formula: (and (<= v_ULTIMATE.start_max1_3 v_N_2) (<= 0 v_ULTIMATE.start_min1_3)) InVars {ULTIMATE.start_max1=v_ULTIMATE.start_max1_3, N=v_N_2, ULTIMATE.start_min1=v_ULTIMATE.start_min1_3} OutVars{ULTIMATE.start_max1=v_ULTIMATE.start_max1_3, N=v_N_2, ULTIMATE.start_min1=v_ULTIMATE.start_min1_3} AuxVars[] AssignedVars[] 50#[L56]true [41] L56-->L59: Formula: (and (<= v_ULTIMATE.start_max2_3 v_N_3) (<= 0 v_ULTIMATE.start_min2_3)) InVars {ULTIMATE.start_max2=v_ULTIMATE.start_max2_3, N=v_N_3, ULTIMATE.start_min2=v_ULTIMATE.start_min2_3} OutVars{ULTIMATE.start_max2=v_ULTIMATE.start_max2_3, N=v_N_3, ULTIMATE.start_min2=v_ULTIMATE.start_min2_3} AuxVars[] AssignedVars[] 52#[L59]true [95] L59-->$Ultimate##0: Formula: (and (= v_writerThread1of1ForFork1_end_6 v_ULTIMATE.start_max1_5) (= v_writerThread1of1ForFork1_start_4 v_ULTIMATE.start_min1_5) (= v_writerThread1of1ForFork1_thidvar0_2 1)) InVars {ULTIMATE.start_max1=v_ULTIMATE.start_max1_5, ULTIMATE.start_min1=v_ULTIMATE.start_min1_5} OutVars{ULTIMATE.start_max1=v_ULTIMATE.start_max1_5, writerThread1of1ForFork1_j=v_writerThread1of1ForFork1_j_18, ULTIMATE.start_min1=v_ULTIMATE.start_min1_5, writerThread1of1ForFork1_start=v_writerThread1of1ForFork1_start_4, writerThread1of1ForFork1_end=v_writerThread1of1ForFork1_end_6, writerThread1of1ForFork1_thidvar0=v_writerThread1of1ForFork1_thidvar0_2} AuxVars[] AssignedVars[writerThread1of1ForFork1_j, writerThread1of1ForFork1_start, writerThread1of1ForFork1_end, writerThread1of1ForFork1_thidvar0] 54#[L59-1, $Ultimate##0]true [98] L59-1-->$Ultimate##0: Formula: (and (= v_readerThread1of1ForFork2_thidvar1_2 2) (= v_readerThread1of1ForFork2_start_4 v_ULTIMATE.start_min2_7) (= v_readerThread1of1ForFork2_end_6 v_ULTIMATE.start_max2_7) (= v_readerThread1of1ForFork2_thidvar0_2 2)) InVars {ULTIMATE.start_max2=v_ULTIMATE.start_max2_7, ULTIMATE.start_min2=v_ULTIMATE.start_min2_7} OutVars{ULTIMATE.start_max2=v_ULTIMATE.start_max2_7, readerThread1of1ForFork2_sum=v_readerThread1of1ForFork2_sum_8, ULTIMATE.start_min2=v_ULTIMATE.start_min2_7, readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_16, readerThread1of1ForFork2_thidvar0=v_readerThread1of1ForFork2_thidvar0_2, readerThread1of1ForFork2_start=v_readerThread1of1ForFork2_start_4, readerThread1of1ForFork2_thidvar1=v_readerThread1of1ForFork2_thidvar1_2, readerThread1of1ForFork2_end=v_readerThread1of1ForFork2_end_6} AuxVars[] AssignedVars[readerThread1of1ForFork2_sum, readerThread1of1ForFork2_i, readerThread1of1ForFork2_thidvar0, readerThread1of1ForFork2_start, readerThread1of1ForFork2_thidvar1, readerThread1of1ForFork2_end] 129#[L60, $Ultimate##0, $Ultimate##0]true [74] $Ultimate##0-->L27: Formula: (= v_readerThread1of1ForFork2_sum_1 0) InVars {} OutVars{readerThread1of1ForFork2_sum=v_readerThread1of1ForFork2_sum_1} AuxVars[] AssignedVars[readerThread1of1ForFork2_sum] 131#[L60, L27, $Ultimate##0]true [75] L27-->L28-1: Formula: (= v_readerThread1of1ForFork2_start_1 v_readerThread1of1ForFork2_i_1) InVars {readerThread1of1ForFork2_start=v_readerThread1of1ForFork2_start_1} OutVars{readerThread1of1ForFork2_start=v_readerThread1of1ForFork2_start_1, readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_1} AuxVars[] AssignedVars[readerThread1of1ForFork2_i] 133#[L28-1, L60, $Ultimate##0]true [77] L28-1-->L29: Formula: (< v_readerThread1of1ForFork2_i_5 v_readerThread1of1ForFork2_end_3) InVars {readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_5, readerThread1of1ForFork2_end=v_readerThread1of1ForFork2_end_3} OutVars{readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_5, readerThread1of1ForFork2_end=v_readerThread1of1ForFork2_end_3} AuxVars[] AssignedVars[] 135#[L60, L29, $Ultimate##0]true [79] L29-->L30: Formula: (and (<= v_readerThread1of1ForFork2_i_7 v_N_1) (<= 0 v_readerThread1of1ForFork2_i_7)) InVars {N=v_N_1, readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_7} OutVars{N=v_N_1, readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_7} AuxVars[] AssignedVars[] 137#[L60, $Ultimate##0, L30]true [80] L30-->L31: Formula: (= v_readerThread1of1ForFork2_sum_4 (+ v_readerThread1of1ForFork2_sum_3 (select v_A_1 v_readerThread1of1ForFork2_i_9))) InVars {A=v_A_1, readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_9, readerThread1of1ForFork2_sum=v_readerThread1of1ForFork2_sum_3} OutVars{A=v_A_1, readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_9, readerThread1of1ForFork2_sum=v_readerThread1of1ForFork2_sum_4} AuxVars[] AssignedVars[readerThread1of1ForFork2_sum] 139#[L60, L31, $Ultimate##0]true [81] L31-->L28-1: Formula: (= v_readerThread1of1ForFork2_i_12 (+ v_readerThread1of1ForFork2_i_11 1)) InVars {readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_11} OutVars{readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_12} AuxVars[] AssignedVars[readerThread1of1ForFork2_i] 133#[L28-1, L60, $Ultimate##0]true [2024-02-10 01:02:10,374 INFO L750 eck$LassoCheckResult]: Loop: 133#[L28-1, L60, $Ultimate##0]true [77] L28-1-->L29: Formula: (< v_readerThread1of1ForFork2_i_5 v_readerThread1of1ForFork2_end_3) InVars {readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_5, readerThread1of1ForFork2_end=v_readerThread1of1ForFork2_end_3} OutVars{readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_5, readerThread1of1ForFork2_end=v_readerThread1of1ForFork2_end_3} AuxVars[] AssignedVars[] 135#[L60, L29, $Ultimate##0]true [79] L29-->L30: Formula: (and (<= v_readerThread1of1ForFork2_i_7 v_N_1) (<= 0 v_readerThread1of1ForFork2_i_7)) InVars {N=v_N_1, readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_7} OutVars{N=v_N_1, readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_7} AuxVars[] AssignedVars[] 137#[L60, $Ultimate##0, L30]true [80] L30-->L31: Formula: (= v_readerThread1of1ForFork2_sum_4 (+ v_readerThread1of1ForFork2_sum_3 (select v_A_1 v_readerThread1of1ForFork2_i_9))) InVars {A=v_A_1, readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_9, readerThread1of1ForFork2_sum=v_readerThread1of1ForFork2_sum_3} OutVars{A=v_A_1, readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_9, readerThread1of1ForFork2_sum=v_readerThread1of1ForFork2_sum_4} AuxVars[] AssignedVars[readerThread1of1ForFork2_sum] 139#[L60, L31, $Ultimate##0]true [81] L31-->L28-1: Formula: (= v_readerThread1of1ForFork2_i_12 (+ v_readerThread1of1ForFork2_i_11 1)) InVars {readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_11} OutVars{readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_12} AuxVars[] AssignedVars[readerThread1of1ForFork2_i] 133#[L28-1, L60, $Ultimate##0]true [2024-02-10 01:02:10,375 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2024-02-10 01:02:10,375 INFO L85 PathProgramCache]: Analyzing trace with hash -1054123502, now seen corresponding path program 1 times [2024-02-10 01:02:10,375 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-02-10 01:02:10,375 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1542892842] [2024-02-10 01:02:10,375 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-02-10 01:02:10,375 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-02-10 01:02:10,419 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-02-10 01:02:10,420 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-02-10 01:02:10,431 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-02-10 01:02:10,437 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-02-10 01:02:10,439 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2024-02-10 01:02:10,439 INFO L85 PathProgramCache]: Analyzing trace with hash 3295908, now seen corresponding path program 1 times [2024-02-10 01:02:10,439 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-02-10 01:02:10,440 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [281189299] [2024-02-10 01:02:10,440 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-02-10 01:02:10,441 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-02-10 01:02:10,445 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-02-10 01:02:10,445 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-02-10 01:02:10,447 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-02-10 01:02:10,468 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-02-10 01:02:10,469 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2024-02-10 01:02:10,469 INFO L85 PathProgramCache]: Analyzing trace with hash 688927797, now seen corresponding path program 2 times [2024-02-10 01:02:10,469 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-02-10 01:02:10,469 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1965327246] [2024-02-10 01:02:10,469 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-02-10 01:02:10,470 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-02-10 01:02:10,505 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-02-10 01:02:10,505 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-02-10 01:02:10,525 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-02-10 01:02:10,540 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-02-10 01:02:10,747 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (5)] Forceful destruction successful, exit code 0 [2024-02-10 01:02:10,921 INFO L210 LassoAnalysis]: Preferences: [2024-02-10 01:02:10,922 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2024-02-10 01:02:10,922 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-02-10 01:02:10,922 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2024-02-10 01:02:10,922 INFO L129 ssoRankerPreferences]: Use exernal solver: false [2024-02-10 01:02:10,922 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-02-10 01:02:10,922 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2024-02-10 01:02:10,922 INFO L132 ssoRankerPreferences]: Path of dumped script: [2024-02-10 01:02:10,922 INFO L133 ssoRankerPreferences]: Filename of dumped script: optimistic-concurrency2.bpl_BEv2_Iteration2_Lasso [2024-02-10 01:02:10,922 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2024-02-10 01:02:10,922 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2024-02-10 01:02:10,925 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-02-10 01:02:10,927 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-02-10 01:02:10,978 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-02-10 01:02:10,980 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-02-10 01:02:10,983 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-02-10 01:02:10,986 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-02-10 01:02:11,177 INFO L294 LassoAnalysis]: Preprocessing complete. [2024-02-10 01:02:11,178 INFO L490 LassoAnalysis]: Using template 'affine'. [2024-02-10 01:02:11,178 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-02-10 01:02:11,178 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-02-10 01:02:11,185 INFO L229 MonitoredProcess]: Starting monitored process 6 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) [2024-02-10 01:02:11,223 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (6)] Waiting until timeout for monitored process [2024-02-10 01:02:11,224 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-02-10 01:02:11,233 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-02-10 01:02:11,233 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-02-10 01:02:11,233 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-02-10 01:02:11,233 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-02-10 01:02:11,238 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-02-10 01:02:11,238 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-02-10 01:02:11,258 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-02-10 01:02:11,286 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (6)] Ended with exit code 0 [2024-02-10 01:02:11,287 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-02-10 01:02:11,287 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-02-10 01:02:11,309 INFO L229 MonitoredProcess]: Starting monitored process 7 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) [2024-02-10 01:02:11,339 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-02-10 01:02:11,351 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-02-10 01:02:11,352 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-02-10 01:02:11,352 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-02-10 01:02:11,352 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-02-10 01:02:11,361 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-02-10 01:02:11,362 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-02-10 01:02:11,369 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (7)] Waiting until timeout for monitored process [2024-02-10 01:02:11,392 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-02-10 01:02:11,439 INFO L443 ModelExtractionUtils]: Simplification made 16 calls to the SMT solver. [2024-02-10 01:02:11,439 INFO L444 ModelExtractionUtils]: 8 out of 28 variables were initially zero. Simplification set additionally 16 variables to zero. [2024-02-10 01:02:11,439 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-02-10 01:02:11,439 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-02-10 01:02:11,441 INFO L229 MonitoredProcess]: Starting monitored process 8 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) [2024-02-10 01:02:11,464 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (8)] Waiting until timeout for monitored process [2024-02-10 01:02:11,677 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-02-10 01:02:11,688 INFO L438 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2024-02-10 01:02:11,688 INFO L513 LassoAnalysis]: Proved termination. [2024-02-10 01:02:11,688 INFO L515 LassoAnalysis]: Termination argument consisting of: Ranking function f(N, readerThread1of1ForFork2_i) = 2*N - 2*readerThread1of1ForFork2_i + 1 Supporting invariants [] [2024-02-10 01:02:11,707 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (7)] Forceful destruction successful, exit code 0 [2024-02-10 01:02:11,711 INFO L156 tatePredicateManager]: 1 out of 1 supporting invariants were superfluous and have been removed [2024-02-10 01:02:11,727 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2024-02-10 01:02:11,740 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-02-10 01:02:11,741 INFO L262 TraceCheckSpWp]: Trace formula consists of 31 conjuncts, 2 conjunts are in the unsatisfiable core [2024-02-10 01:02:11,743 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-02-10 01:02:11,767 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-02-10 01:02:11,767 INFO L262 TraceCheckSpWp]: Trace formula consists of 9 conjuncts, 4 conjunts are in the unsatisfiable core [2024-02-10 01:02:11,768 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-02-10 01:02:11,799 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-02-10 01:02:11,799 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 2 loop predicates [2024-02-10 01:02:11,799 INFO L162 BuchiComplementFKV]: Start buchiComplementFKV with optimization HEIMAT2. Operand has 4 states, 4 states have (on average 3.5) internal successors, (14), 4 states have internal predecessors, (14), 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) [2024-02-10 01:02:11,934 INFO L171 BuchiComplementFKV]: Finished buchiComplementFKV with optimization HEIMAT2. Operand has 4 states, 4 states have (on average 3.5) internal successors, (14), 4 states have internal predecessors, (14), 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) Result 8 states and 502 transitions.5 powerset states3 rank states. The highest rank that occured is 1 [2024-02-10 01:02:11,934 INFO L89 BuchiIntersect]: Starting Intersection [2024-02-10 01:02:11,935 INFO L112 BuchiIntersect]: use intersection optimizations [2024-02-10 01:02:11,935 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states and 502 transitions. [2024-02-10 01:02:11,938 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 502 transitions. [2024-02-10 01:02:11,949 INFO L79 tersectStemOptimized]: Starting StemOptimized Intersection [2024-02-10 01:02:11,950 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states and 502 transitions. [2024-02-10 01:02:11,951 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 502 transitions. [2024-02-10 01:02:12,273 WARN L435 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (8)] Forcibly destroying the process [2024-02-10 01:02:12,281 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (8)] Forceful destruction successful, exit code 0 [2024-02-10 01:02:12,283 INFO L90 tersectStemOptimized]: Exiting StemOptimized Intersection [2024-02-10 01:02:12,284 INFO L99 BuchiIntersect]: Exiting Intersection [2024-02-10 01:02:12,284 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 4 states 1 stem states 2 non-accepting loop states 1 accepting loop states [2024-02-10 01:02:12,285 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.5) internal successors, (14), 4 states have internal predecessors, (14), 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) [2024-02-10 01:02:12,286 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 166 transitions. [2024-02-10 01:02:12,286 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 166 transitions. Stem has 10 letters. Loop has 4 letters. [2024-02-10 01:02:12,286 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-02-10 01:02:12,286 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 166 transitions. Stem has 14 letters. Loop has 4 letters. [2024-02-10 01:02:12,287 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-02-10 01:02:12,287 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 166 transitions. Stem has 10 letters. Loop has 8 letters. [2024-02-10 01:02:12,287 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-02-10 01:02:12,287 INFO L428 stractBuchiCegarLoop]: Abstraction has has 62 places, 6764 transitions, 43815 flow [2024-02-10 01:02:12,287 INFO L335 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2024-02-10 01:02:12,287 INFO L84 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 62 places, 6764 transitions, 43815 flow [2024-02-10 01:02:13,204 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2024-02-10 01:02:13,205 INFO L124 PetriNetUnfolderBase]: 2086/2880 cut-off events. [2024-02-10 01:02:13,205 INFO L125 PetriNetUnfolderBase]: For 123/123 co-relation queries the response was YES. [2024-02-10 01:02:13,205 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty language is not empty [2024-02-10 01:02:13,206 INFO L748 eck$LassoCheckResult]: Stem: 48#[$Ultimate##0]true [63] $Ultimate##0-->L56: Formula: (and (<= v_ULTIMATE.start_max1_3 v_N_2) (<= 0 v_ULTIMATE.start_min1_3)) InVars {ULTIMATE.start_max1=v_ULTIMATE.start_max1_3, N=v_N_2, ULTIMATE.start_min1=v_ULTIMATE.start_min1_3} OutVars{ULTIMATE.start_max1=v_ULTIMATE.start_max1_3, N=v_N_2, ULTIMATE.start_min1=v_ULTIMATE.start_min1_3} AuxVars[] AssignedVars[] 50#[L56]true [41] L56-->L59: Formula: (and (<= v_ULTIMATE.start_max2_3 v_N_3) (<= 0 v_ULTIMATE.start_min2_3)) InVars {ULTIMATE.start_max2=v_ULTIMATE.start_max2_3, N=v_N_3, ULTIMATE.start_min2=v_ULTIMATE.start_min2_3} OutVars{ULTIMATE.start_max2=v_ULTIMATE.start_max2_3, N=v_N_3, ULTIMATE.start_min2=v_ULTIMATE.start_min2_3} AuxVars[] AssignedVars[] 52#[L59]true [95] L59-->$Ultimate##0: Formula: (and (= v_writerThread1of1ForFork1_end_6 v_ULTIMATE.start_max1_5) (= v_writerThread1of1ForFork1_start_4 v_ULTIMATE.start_min1_5) (= v_writerThread1of1ForFork1_thidvar0_2 1)) InVars {ULTIMATE.start_max1=v_ULTIMATE.start_max1_5, ULTIMATE.start_min1=v_ULTIMATE.start_min1_5} OutVars{ULTIMATE.start_max1=v_ULTIMATE.start_max1_5, writerThread1of1ForFork1_j=v_writerThread1of1ForFork1_j_18, ULTIMATE.start_min1=v_ULTIMATE.start_min1_5, writerThread1of1ForFork1_start=v_writerThread1of1ForFork1_start_4, writerThread1of1ForFork1_end=v_writerThread1of1ForFork1_end_6, writerThread1of1ForFork1_thidvar0=v_writerThread1of1ForFork1_thidvar0_2} AuxVars[] AssignedVars[writerThread1of1ForFork1_j, writerThread1of1ForFork1_start, writerThread1of1ForFork1_end, writerThread1of1ForFork1_thidvar0] 54#[L59-1, $Ultimate##0]true [98] L59-1-->$Ultimate##0: Formula: (and (= v_readerThread1of1ForFork2_thidvar1_2 2) (= v_readerThread1of1ForFork2_start_4 v_ULTIMATE.start_min2_7) (= v_readerThread1of1ForFork2_end_6 v_ULTIMATE.start_max2_7) (= v_readerThread1of1ForFork2_thidvar0_2 2)) InVars {ULTIMATE.start_max2=v_ULTIMATE.start_max2_7, ULTIMATE.start_min2=v_ULTIMATE.start_min2_7} OutVars{ULTIMATE.start_max2=v_ULTIMATE.start_max2_7, readerThread1of1ForFork2_sum=v_readerThread1of1ForFork2_sum_8, ULTIMATE.start_min2=v_ULTIMATE.start_min2_7, readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_16, readerThread1of1ForFork2_thidvar0=v_readerThread1of1ForFork2_thidvar0_2, readerThread1of1ForFork2_start=v_readerThread1of1ForFork2_start_4, readerThread1of1ForFork2_thidvar1=v_readerThread1of1ForFork2_thidvar1_2, readerThread1of1ForFork2_end=v_readerThread1of1ForFork2_end_6} AuxVars[] AssignedVars[readerThread1of1ForFork2_sum, readerThread1of1ForFork2_i, readerThread1of1ForFork2_thidvar0, readerThread1of1ForFork2_start, readerThread1of1ForFork2_thidvar1, readerThread1of1ForFork2_end] 129#[L60, $Ultimate##0, $Ultimate##0]true [74] $Ultimate##0-->L27: Formula: (= v_readerThread1of1ForFork2_sum_1 0) InVars {} OutVars{readerThread1of1ForFork2_sum=v_readerThread1of1ForFork2_sum_1} AuxVars[] AssignedVars[readerThread1of1ForFork2_sum] 131#[L60, L27, $Ultimate##0]true [75] L27-->L28-1: Formula: (= v_readerThread1of1ForFork2_start_1 v_readerThread1of1ForFork2_i_1) InVars {readerThread1of1ForFork2_start=v_readerThread1of1ForFork2_start_1} OutVars{readerThread1of1ForFork2_start=v_readerThread1of1ForFork2_start_1, readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_1} AuxVars[] AssignedVars[readerThread1of1ForFork2_i] 133#[L28-1, L60, $Ultimate##0]true [76] L28-1-->readerFINAL: Formula: (<= v_readerThread1of1ForFork2_end_1 v_readerThread1of1ForFork2_i_3) InVars {readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_3, readerThread1of1ForFork2_end=v_readerThread1of1ForFork2_end_1} OutVars{readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_3, readerThread1of1ForFork2_end=v_readerThread1of1ForFork2_end_1} AuxVars[] AssignedVars[] 228#[L60, readerFINAL, $Ultimate##0]true [78] readerFINAL-->readerEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 230#[L60, readerEXIT, $Ultimate##0]true [82] $Ultimate##0-->L41-1: Formula: (= v_writerThread1of1ForFork1_start_1 v_writerThread1of1ForFork1_j_1) InVars {writerThread1of1ForFork1_start=v_writerThread1of1ForFork1_start_1} OutVars{writerThread1of1ForFork1_j=v_writerThread1of1ForFork1_j_1, writerThread1of1ForFork1_start=v_writerThread1of1ForFork1_start_1} AuxVars[] AssignedVars[writerThread1of1ForFork1_j] 232#[L60, readerEXIT, L41-1]true [83] L41-1-->writerFINAL: Formula: (<= v_writerThread1of1ForFork1_end_1 v_writerThread1of1ForFork1_j_3) InVars {writerThread1of1ForFork1_j=v_writerThread1of1ForFork1_j_3, writerThread1of1ForFork1_end=v_writerThread1of1ForFork1_end_1} OutVars{writerThread1of1ForFork1_j=v_writerThread1of1ForFork1_j_3, writerThread1of1ForFork1_end=v_writerThread1of1ForFork1_end_1} AuxVars[] AssignedVars[] 234#[writerFINAL, L60, readerEXIT]true [85] writerFINAL-->writerEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 236#[L60, readerEXIT, writerEXIT]true [99] writerEXIT-->L61: Formula: (= v_writerThread1of1ForFork1_thidvar0_4 1) InVars {writerThread1of1ForFork1_thidvar0=v_writerThread1of1ForFork1_thidvar0_4} OutVars{writerThread1of1ForFork1_thidvar0=v_writerThread1of1ForFork1_thidvar0_4} AuxVars[] AssignedVars[] 238#[L61, readerEXIT]true [100] readerEXIT-->L62: Formula: (and (= v_readerThread1of1ForFork2_thidvar1_4 2) (= v_readerThread1of1ForFork2_thidvar0_4 2) (= v_readerThread1of1ForFork2_sum_10 v_ULTIMATE.start_sum_2)) InVars {readerThread1of1ForFork2_sum=v_readerThread1of1ForFork2_sum_10, readerThread1of1ForFork2_thidvar0=v_readerThread1of1ForFork2_thidvar0_4, readerThread1of1ForFork2_thidvar1=v_readerThread1of1ForFork2_thidvar1_4} OutVars{ULTIMATE.start_sum=v_ULTIMATE.start_sum_2, readerThread1of1ForFork2_sum=v_readerThread1of1ForFork2_sum_10, readerThread1of1ForFork2_thidvar0=v_readerThread1of1ForFork2_thidvar0_4, readerThread1of1ForFork2_thidvar1=v_readerThread1of1ForFork2_thidvar1_4} AuxVars[] AssignedVars[ULTIMATE.start_sum] 240#[L62]true [61] L62-->L67: Formula: (and (<= v_ULTIMATE.start_min2_1 v_ULTIMATE.start_max1_1) (<= v_ULTIMATE.start_min1_1 v_ULTIMATE.start_max2_1)) InVars {ULTIMATE.start_max1=v_ULTIMATE.start_max1_1, ULTIMATE.start_max2=v_ULTIMATE.start_max2_1, ULTIMATE.start_min1=v_ULTIMATE.start_min1_1, ULTIMATE.start_min2=v_ULTIMATE.start_min2_1} OutVars{ULTIMATE.start_max1=v_ULTIMATE.start_max1_1, ULTIMATE.start_max2=v_ULTIMATE.start_max2_1, ULTIMATE.start_min1=v_ULTIMATE.start_min1_1, ULTIMATE.start_min2=v_ULTIMATE.start_min2_1} AuxVars[] AssignedVars[] 242#[L67]true [92] L67-->$Ultimate##0: Formula: (and (= v_readerThread1of1ForFork0_thidvar0_2 2) (= v_readerThread1of1ForFork0_thidvar1_2 2) (= v_readerThread1of1ForFork0_start_4 v_ULTIMATE.start_min2_5) (= v_readerThread1of1ForFork0_end_6 v_ULTIMATE.start_max2_5)) InVars {ULTIMATE.start_max2=v_ULTIMATE.start_max2_5, ULTIMATE.start_min2=v_ULTIMATE.start_min2_5} OutVars{ULTIMATE.start_max2=v_ULTIMATE.start_max2_5, readerThread1of1ForFork0_start=v_readerThread1of1ForFork0_start_4, readerThread1of1ForFork0_sum=v_readerThread1of1ForFork0_sum_8, readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_16, readerThread1of1ForFork0_thidvar1=v_readerThread1of1ForFork0_thidvar1_2, readerThread1of1ForFork0_thidvar0=v_readerThread1of1ForFork0_thidvar0_2, ULTIMATE.start_min2=v_ULTIMATE.start_min2_5, readerThread1of1ForFork0_end=v_readerThread1of1ForFork0_end_6} AuxVars[] AssignedVars[readerThread1of1ForFork0_start, readerThread1of1ForFork0_sum, readerThread1of1ForFork0_i, readerThread1of1ForFork0_thidvar1, readerThread1of1ForFork0_thidvar0, readerThread1of1ForFork0_end] 244#[L67-1, $Ultimate##0]true [66] $Ultimate##0-->L27: Formula: (= v_readerThread1of1ForFork0_sum_1 0) InVars {} OutVars{readerThread1of1ForFork0_sum=v_readerThread1of1ForFork0_sum_1} AuxVars[] AssignedVars[readerThread1of1ForFork0_sum] 246#[L67-1, L27]true [67] L27-->L28-1: Formula: (= v_readerThread1of1ForFork0_start_1 v_readerThread1of1ForFork0_i_1) InVars {readerThread1of1ForFork0_start=v_readerThread1of1ForFork0_start_1} OutVars{readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_1, readerThread1of1ForFork0_start=v_readerThread1of1ForFork0_start_1} AuxVars[] AssignedVars[readerThread1of1ForFork0_i] 248#[L67-1, L28-1]true [69] L28-1-->L29: Formula: (< v_readerThread1of1ForFork0_i_5 v_readerThread1of1ForFork0_end_3) InVars {readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_5, readerThread1of1ForFork0_end=v_readerThread1of1ForFork0_end_3} OutVars{readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_5, readerThread1of1ForFork0_end=v_readerThread1of1ForFork0_end_3} AuxVars[] AssignedVars[] 250#[L67-1, L29]true [71] L29-->L30: Formula: (and (<= 0 v_readerThread1of1ForFork0_i_7) (<= v_readerThread1of1ForFork0_i_7 v_N_1)) InVars {readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_7, N=v_N_1} OutVars{readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_7, N=v_N_1} AuxVars[] AssignedVars[] 252#[L67-1, L30]true [72] L30-->L31: Formula: (= (+ (select v_A_1 v_readerThread1of1ForFork0_i_9) v_readerThread1of1ForFork0_sum_3) v_readerThread1of1ForFork0_sum_4) InVars {A=v_A_1, readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_9, readerThread1of1ForFork0_sum=v_readerThread1of1ForFork0_sum_3} OutVars{A=v_A_1, readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_9, readerThread1of1ForFork0_sum=v_readerThread1of1ForFork0_sum_4} AuxVars[] AssignedVars[readerThread1of1ForFork0_sum] 254#[L67-1, L31]true [73] L31-->L28-1: Formula: (= v_readerThread1of1ForFork0_i_12 (+ v_readerThread1of1ForFork0_i_11 1)) InVars {readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_11} OutVars{readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_12} AuxVars[] AssignedVars[readerThread1of1ForFork0_i] 248#[L67-1, L28-1]true [2024-02-10 01:02:13,207 INFO L750 eck$LassoCheckResult]: Loop: 248#[L67-1, L28-1]true [69] L28-1-->L29: Formula: (< v_readerThread1of1ForFork0_i_5 v_readerThread1of1ForFork0_end_3) InVars {readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_5, readerThread1of1ForFork0_end=v_readerThread1of1ForFork0_end_3} OutVars{readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_5, readerThread1of1ForFork0_end=v_readerThread1of1ForFork0_end_3} AuxVars[] AssignedVars[] 250#[L67-1, L29]true [71] L29-->L30: Formula: (and (<= 0 v_readerThread1of1ForFork0_i_7) (<= v_readerThread1of1ForFork0_i_7 v_N_1)) InVars {readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_7, N=v_N_1} OutVars{readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_7, N=v_N_1} AuxVars[] AssignedVars[] 252#[L67-1, L30]true [72] L30-->L31: Formula: (= (+ (select v_A_1 v_readerThread1of1ForFork0_i_9) v_readerThread1of1ForFork0_sum_3) v_readerThread1of1ForFork0_sum_4) InVars {A=v_A_1, readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_9, readerThread1of1ForFork0_sum=v_readerThread1of1ForFork0_sum_3} OutVars{A=v_A_1, readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_9, readerThread1of1ForFork0_sum=v_readerThread1of1ForFork0_sum_4} AuxVars[] AssignedVars[readerThread1of1ForFork0_sum] 254#[L67-1, L31]true [73] L31-->L28-1: Formula: (= v_readerThread1of1ForFork0_i_12 (+ v_readerThread1of1ForFork0_i_11 1)) InVars {readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_11} OutVars{readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_12} AuxVars[] AssignedVars[readerThread1of1ForFork0_i] 248#[L67-1, L28-1]true [2024-02-10 01:02:13,207 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2024-02-10 01:02:13,207 INFO L85 PathProgramCache]: Analyzing trace with hash 539823463, now seen corresponding path program 1 times [2024-02-10 01:02:13,207 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-02-10 01:02:13,207 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [368296849] [2024-02-10 01:02:13,208 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-02-10 01:02:13,208 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-02-10 01:02:13,219 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-02-10 01:02:13,320 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-02-10 01:02:13,320 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-02-10 01:02:13,320 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [368296849] [2024-02-10 01:02:13,321 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [368296849] provided 1 perfect and 0 imperfect interpolant sequences [2024-02-10 01:02:13,321 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-02-10 01:02:13,321 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2024-02-10 01:02:13,322 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1152215669] [2024-02-10 01:02:13,323 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-02-10 01:02:13,324 INFO L753 eck$LassoCheckResult]: stem already infeasible [2024-02-10 01:02:13,325 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2024-02-10 01:02:13,325 INFO L85 PathProgramCache]: Analyzing trace with hash 3049636, now seen corresponding path program 1 times [2024-02-10 01:02:13,325 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-02-10 01:02:13,325 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1864577389] [2024-02-10 01:02:13,325 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-02-10 01:02:13,326 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-02-10 01:02:13,329 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-02-10 01:02:13,330 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-02-10 01:02:13,331 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-02-10 01:02:13,333 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-02-10 01:02:13,356 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-02-10 01:02:13,359 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2024-02-10 01:02:13,360 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=31, Unknown=0, NotChecked=0, Total=42 [2024-02-10 01:02:13,938 INFO L175 Difference]: Start difference. First operand has 62 places, 6764 transitions, 43815 flow. Second operand 15 states and 645 transitions. [2024-02-10 01:02:13,939 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 62 places, 6764 transitions, 43815 flow. Second operand 15 states and 645 transitions. [2024-02-10 01:02:13,940 INFO L120 encePairwiseOnDemand]: Number of universal subtrahend loopers: 34 of 43 [2024-02-10 01:02:13,941 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-02-10 01:02:14,761 INFO L124 PetriNetUnfolderBase]: 2113/2948 cut-off events. [2024-02-10 01:02:14,761 INFO L125 PetriNetUnfolderBase]: For 391/391 co-relation queries the response was YES. [2024-02-10 01:02:14,786 INFO L83 FinitePrefix]: Finished finitePrefix Result has 10001 conditions, 2948 events. 2113/2948 cut-off events. For 391/391 co-relation queries the response was YES. Maximal size of possible extension queue 104. Compared 10864 event pairs, 0 based on Foata normal form. 0/1136 useless extension candidates. Maximal degree in co-relation 9324. Up to 958 conditions per place. [2024-02-10 01:02:14,832 INFO L140 encePairwiseOnDemand]: 35/43 looper letters, 173 selfloop transitions, 147 changer transitions 47/1077 dead transitions. [2024-02-10 01:02:14,833 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 65 places, 1077 transitions, 7536 flow [2024-02-10 01:02:14,860 INFO L231 Difference]: Finished difference. Result has 76 places, 1030 transitions, 6882 flow [2024-02-10 01:02:14,861 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2024-02-10 01:02:14,863 INFO L428 stractBuchiCegarLoop]: Abstraction has has 76 places, 1030 transitions, 6882 flow [2024-02-10 01:02:14,863 INFO L335 stractBuchiCegarLoop]: ======== Iteration 4 ============ [2024-02-10 01:02:14,863 INFO L84 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 76 places, 1030 transitions, 6882 flow [2024-02-10 01:02:16,047 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2024-02-10 01:02:16,047 INFO L124 PetriNetUnfolderBase]: 2080/2881 cut-off events. [2024-02-10 01:02:16,048 INFO L125 PetriNetUnfolderBase]: For 297/297 co-relation queries the response was YES. [2024-02-10 01:02:16,048 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty language is not empty [2024-02-10 01:02:16,058 INFO L748 eck$LassoCheckResult]: Stem: 48#[$Ultimate##0]true [63] $Ultimate##0-->L56: Formula: (and (<= v_ULTIMATE.start_max1_3 v_N_2) (<= 0 v_ULTIMATE.start_min1_3)) InVars {ULTIMATE.start_max1=v_ULTIMATE.start_max1_3, N=v_N_2, ULTIMATE.start_min1=v_ULTIMATE.start_min1_3} OutVars{ULTIMATE.start_max1=v_ULTIMATE.start_max1_3, N=v_N_2, ULTIMATE.start_min1=v_ULTIMATE.start_min1_3} AuxVars[] AssignedVars[] 50#[L56]true [41] L56-->L59: Formula: (and (<= v_ULTIMATE.start_max2_3 v_N_3) (<= 0 v_ULTIMATE.start_min2_3)) InVars {ULTIMATE.start_max2=v_ULTIMATE.start_max2_3, N=v_N_3, ULTIMATE.start_min2=v_ULTIMATE.start_min2_3} OutVars{ULTIMATE.start_max2=v_ULTIMATE.start_max2_3, N=v_N_3, ULTIMATE.start_min2=v_ULTIMATE.start_min2_3} AuxVars[] AssignedVars[] 52#[L59]true [95] L59-->$Ultimate##0: Formula: (and (= v_writerThread1of1ForFork1_end_6 v_ULTIMATE.start_max1_5) (= v_writerThread1of1ForFork1_start_4 v_ULTIMATE.start_min1_5) (= v_writerThread1of1ForFork1_thidvar0_2 1)) InVars {ULTIMATE.start_max1=v_ULTIMATE.start_max1_5, ULTIMATE.start_min1=v_ULTIMATE.start_min1_5} OutVars{ULTIMATE.start_max1=v_ULTIMATE.start_max1_5, writerThread1of1ForFork1_j=v_writerThread1of1ForFork1_j_18, ULTIMATE.start_min1=v_ULTIMATE.start_min1_5, writerThread1of1ForFork1_start=v_writerThread1of1ForFork1_start_4, writerThread1of1ForFork1_end=v_writerThread1of1ForFork1_end_6, writerThread1of1ForFork1_thidvar0=v_writerThread1of1ForFork1_thidvar0_2} AuxVars[] AssignedVars[writerThread1of1ForFork1_j, writerThread1of1ForFork1_start, writerThread1of1ForFork1_end, writerThread1of1ForFork1_thidvar0] 54#[L59-1, $Ultimate##0]true [98] L59-1-->$Ultimate##0: Formula: (and (= v_readerThread1of1ForFork2_thidvar1_2 2) (= v_readerThread1of1ForFork2_start_4 v_ULTIMATE.start_min2_7) (= v_readerThread1of1ForFork2_end_6 v_ULTIMATE.start_max2_7) (= v_readerThread1of1ForFork2_thidvar0_2 2)) InVars {ULTIMATE.start_max2=v_ULTIMATE.start_max2_7, ULTIMATE.start_min2=v_ULTIMATE.start_min2_7} OutVars{ULTIMATE.start_max2=v_ULTIMATE.start_max2_7, readerThread1of1ForFork2_sum=v_readerThread1of1ForFork2_sum_8, ULTIMATE.start_min2=v_ULTIMATE.start_min2_7, readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_16, readerThread1of1ForFork2_thidvar0=v_readerThread1of1ForFork2_thidvar0_2, readerThread1of1ForFork2_start=v_readerThread1of1ForFork2_start_4, readerThread1of1ForFork2_thidvar1=v_readerThread1of1ForFork2_thidvar1_2, readerThread1of1ForFork2_end=v_readerThread1of1ForFork2_end_6} AuxVars[] AssignedVars[readerThread1of1ForFork2_sum, readerThread1of1ForFork2_i, readerThread1of1ForFork2_thidvar0, readerThread1of1ForFork2_start, readerThread1of1ForFork2_thidvar1, readerThread1of1ForFork2_end] 129#[L60, $Ultimate##0, $Ultimate##0]true [74] $Ultimate##0-->L27: Formula: (= v_readerThread1of1ForFork2_sum_1 0) InVars {} OutVars{readerThread1of1ForFork2_sum=v_readerThread1of1ForFork2_sum_1} AuxVars[] AssignedVars[readerThread1of1ForFork2_sum] 131#[L60, L27, $Ultimate##0]true [75] L27-->L28-1: Formula: (= v_readerThread1of1ForFork2_start_1 v_readerThread1of1ForFork2_i_1) InVars {readerThread1of1ForFork2_start=v_readerThread1of1ForFork2_start_1} OutVars{readerThread1of1ForFork2_start=v_readerThread1of1ForFork2_start_1, readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_1} AuxVars[] AssignedVars[readerThread1of1ForFork2_i] 133#[L28-1, L60, $Ultimate##0]true [77] L28-1-->L29: Formula: (< v_readerThread1of1ForFork2_i_5 v_readerThread1of1ForFork2_end_3) InVars {readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_5, readerThread1of1ForFork2_end=v_readerThread1of1ForFork2_end_3} OutVars{readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_5, readerThread1of1ForFork2_end=v_readerThread1of1ForFork2_end_3} AuxVars[] AssignedVars[] 135#[L60, L29, $Ultimate##0]true [79] L29-->L30: Formula: (and (<= v_readerThread1of1ForFork2_i_7 v_N_1) (<= 0 v_readerThread1of1ForFork2_i_7)) InVars {N=v_N_1, readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_7} OutVars{N=v_N_1, readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_7} AuxVars[] AssignedVars[] 137#[L60, $Ultimate##0, L30]true [80] L30-->L31: Formula: (= v_readerThread1of1ForFork2_sum_4 (+ v_readerThread1of1ForFork2_sum_3 (select v_A_1 v_readerThread1of1ForFork2_i_9))) InVars {A=v_A_1, readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_9, readerThread1of1ForFork2_sum=v_readerThread1of1ForFork2_sum_3} OutVars{A=v_A_1, readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_9, readerThread1of1ForFork2_sum=v_readerThread1of1ForFork2_sum_4} AuxVars[] AssignedVars[readerThread1of1ForFork2_sum] 139#[L60, L31, $Ultimate##0]true [81] L31-->L28-1: Formula: (= v_readerThread1of1ForFork2_i_12 (+ v_readerThread1of1ForFork2_i_11 1)) InVars {readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_11} OutVars{readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_12} AuxVars[] AssignedVars[readerThread1of1ForFork2_i] 133#[L28-1, L60, $Ultimate##0]true [76] L28-1-->readerFINAL: Formula: (<= v_readerThread1of1ForFork2_end_1 v_readerThread1of1ForFork2_i_3) InVars {readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_3, readerThread1of1ForFork2_end=v_readerThread1of1ForFork2_end_1} OutVars{readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_3, readerThread1of1ForFork2_end=v_readerThread1of1ForFork2_end_1} AuxVars[] AssignedVars[] 228#[L60, readerFINAL, $Ultimate##0]true [78] readerFINAL-->readerEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 230#[L60, readerEXIT, $Ultimate##0]true [82] $Ultimate##0-->L41-1: Formula: (= v_writerThread1of1ForFork1_start_1 v_writerThread1of1ForFork1_j_1) InVars {writerThread1of1ForFork1_start=v_writerThread1of1ForFork1_start_1} OutVars{writerThread1of1ForFork1_j=v_writerThread1of1ForFork1_j_1, writerThread1of1ForFork1_start=v_writerThread1of1ForFork1_start_1} AuxVars[] AssignedVars[writerThread1of1ForFork1_j] 232#[L60, readerEXIT, L41-1]true [83] L41-1-->writerFINAL: Formula: (<= v_writerThread1of1ForFork1_end_1 v_writerThread1of1ForFork1_j_3) InVars {writerThread1of1ForFork1_j=v_writerThread1of1ForFork1_j_3, writerThread1of1ForFork1_end=v_writerThread1of1ForFork1_end_1} OutVars{writerThread1of1ForFork1_j=v_writerThread1of1ForFork1_j_3, writerThread1of1ForFork1_end=v_writerThread1of1ForFork1_end_1} AuxVars[] AssignedVars[] 234#[writerFINAL, L60, readerEXIT]true [85] writerFINAL-->writerEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 236#[L60, readerEXIT, writerEXIT]true [99] writerEXIT-->L61: Formula: (= v_writerThread1of1ForFork1_thidvar0_4 1) InVars {writerThread1of1ForFork1_thidvar0=v_writerThread1of1ForFork1_thidvar0_4} OutVars{writerThread1of1ForFork1_thidvar0=v_writerThread1of1ForFork1_thidvar0_4} AuxVars[] AssignedVars[] 238#[L61, readerEXIT]true [100] readerEXIT-->L62: Formula: (and (= v_readerThread1of1ForFork2_thidvar1_4 2) (= v_readerThread1of1ForFork2_thidvar0_4 2) (= v_readerThread1of1ForFork2_sum_10 v_ULTIMATE.start_sum_2)) InVars {readerThread1of1ForFork2_sum=v_readerThread1of1ForFork2_sum_10, readerThread1of1ForFork2_thidvar0=v_readerThread1of1ForFork2_thidvar0_4, readerThread1of1ForFork2_thidvar1=v_readerThread1of1ForFork2_thidvar1_4} OutVars{ULTIMATE.start_sum=v_ULTIMATE.start_sum_2, readerThread1of1ForFork2_sum=v_readerThread1of1ForFork2_sum_10, readerThread1of1ForFork2_thidvar0=v_readerThread1of1ForFork2_thidvar0_4, readerThread1of1ForFork2_thidvar1=v_readerThread1of1ForFork2_thidvar1_4} AuxVars[] AssignedVars[ULTIMATE.start_sum] 240#[L62]true [61] L62-->L67: Formula: (and (<= v_ULTIMATE.start_min2_1 v_ULTIMATE.start_max1_1) (<= v_ULTIMATE.start_min1_1 v_ULTIMATE.start_max2_1)) InVars {ULTIMATE.start_max1=v_ULTIMATE.start_max1_1, ULTIMATE.start_max2=v_ULTIMATE.start_max2_1, ULTIMATE.start_min1=v_ULTIMATE.start_min1_1, ULTIMATE.start_min2=v_ULTIMATE.start_min2_1} OutVars{ULTIMATE.start_max1=v_ULTIMATE.start_max1_1, ULTIMATE.start_max2=v_ULTIMATE.start_max2_1, ULTIMATE.start_min1=v_ULTIMATE.start_min1_1, ULTIMATE.start_min2=v_ULTIMATE.start_min2_1} AuxVars[] AssignedVars[] 242#[L67]true [92] L67-->$Ultimate##0: Formula: (and (= v_readerThread1of1ForFork0_thidvar0_2 2) (= v_readerThread1of1ForFork0_thidvar1_2 2) (= v_readerThread1of1ForFork0_start_4 v_ULTIMATE.start_min2_5) (= v_readerThread1of1ForFork0_end_6 v_ULTIMATE.start_max2_5)) InVars {ULTIMATE.start_max2=v_ULTIMATE.start_max2_5, ULTIMATE.start_min2=v_ULTIMATE.start_min2_5} OutVars{ULTIMATE.start_max2=v_ULTIMATE.start_max2_5, readerThread1of1ForFork0_start=v_readerThread1of1ForFork0_start_4, readerThread1of1ForFork0_sum=v_readerThread1of1ForFork0_sum_8, readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_16, readerThread1of1ForFork0_thidvar1=v_readerThread1of1ForFork0_thidvar1_2, readerThread1of1ForFork0_thidvar0=v_readerThread1of1ForFork0_thidvar0_2, ULTIMATE.start_min2=v_ULTIMATE.start_min2_5, readerThread1of1ForFork0_end=v_readerThread1of1ForFork0_end_6} AuxVars[] AssignedVars[readerThread1of1ForFork0_start, readerThread1of1ForFork0_sum, readerThread1of1ForFork0_i, readerThread1of1ForFork0_thidvar1, readerThread1of1ForFork0_thidvar0, readerThread1of1ForFork0_end] 244#[L67-1, $Ultimate##0]true [66] $Ultimate##0-->L27: Formula: (= v_readerThread1of1ForFork0_sum_1 0) InVars {} OutVars{readerThread1of1ForFork0_sum=v_readerThread1of1ForFork0_sum_1} AuxVars[] AssignedVars[readerThread1of1ForFork0_sum] 246#[L67-1, L27]true [67] L27-->L28-1: Formula: (= v_readerThread1of1ForFork0_start_1 v_readerThread1of1ForFork0_i_1) InVars {readerThread1of1ForFork0_start=v_readerThread1of1ForFork0_start_1} OutVars{readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_1, readerThread1of1ForFork0_start=v_readerThread1of1ForFork0_start_1} AuxVars[] AssignedVars[readerThread1of1ForFork0_i] 248#[L67-1, L28-1]true [69] L28-1-->L29: Formula: (< v_readerThread1of1ForFork0_i_5 v_readerThread1of1ForFork0_end_3) InVars {readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_5, readerThread1of1ForFork0_end=v_readerThread1of1ForFork0_end_3} OutVars{readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_5, readerThread1of1ForFork0_end=v_readerThread1of1ForFork0_end_3} AuxVars[] AssignedVars[] 250#[L67-1, L29]true [71] L29-->L30: Formula: (and (<= 0 v_readerThread1of1ForFork0_i_7) (<= v_readerThread1of1ForFork0_i_7 v_N_1)) InVars {readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_7, N=v_N_1} OutVars{readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_7, N=v_N_1} AuxVars[] AssignedVars[] 252#[L67-1, L30]true [72] L30-->L31: Formula: (= (+ (select v_A_1 v_readerThread1of1ForFork0_i_9) v_readerThread1of1ForFork0_sum_3) v_readerThread1of1ForFork0_sum_4) InVars {A=v_A_1, readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_9, readerThread1of1ForFork0_sum=v_readerThread1of1ForFork0_sum_3} OutVars{A=v_A_1, readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_9, readerThread1of1ForFork0_sum=v_readerThread1of1ForFork0_sum_4} AuxVars[] AssignedVars[readerThread1of1ForFork0_sum] 254#[L67-1, L31]true [73] L31-->L28-1: Formula: (= v_readerThread1of1ForFork0_i_12 (+ v_readerThread1of1ForFork0_i_11 1)) InVars {readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_11} OutVars{readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_12} AuxVars[] AssignedVars[readerThread1of1ForFork0_i] 248#[L67-1, L28-1]true [2024-02-10 01:02:16,058 INFO L750 eck$LassoCheckResult]: Loop: 248#[L67-1, L28-1]true [69] L28-1-->L29: Formula: (< v_readerThread1of1ForFork0_i_5 v_readerThread1of1ForFork0_end_3) InVars {readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_5, readerThread1of1ForFork0_end=v_readerThread1of1ForFork0_end_3} OutVars{readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_5, readerThread1of1ForFork0_end=v_readerThread1of1ForFork0_end_3} AuxVars[] AssignedVars[] 250#[L67-1, L29]true [71] L29-->L30: Formula: (and (<= 0 v_readerThread1of1ForFork0_i_7) (<= v_readerThread1of1ForFork0_i_7 v_N_1)) InVars {readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_7, N=v_N_1} OutVars{readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_7, N=v_N_1} AuxVars[] AssignedVars[] 252#[L67-1, L30]true [72] L30-->L31: Formula: (= (+ (select v_A_1 v_readerThread1of1ForFork0_i_9) v_readerThread1of1ForFork0_sum_3) v_readerThread1of1ForFork0_sum_4) InVars {A=v_A_1, readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_9, readerThread1of1ForFork0_sum=v_readerThread1of1ForFork0_sum_3} OutVars{A=v_A_1, readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_9, readerThread1of1ForFork0_sum=v_readerThread1of1ForFork0_sum_4} AuxVars[] AssignedVars[readerThread1of1ForFork0_sum] 254#[L67-1, L31]true [73] L31-->L28-1: Formula: (= v_readerThread1of1ForFork0_i_12 (+ v_readerThread1of1ForFork0_i_11 1)) InVars {readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_11} OutVars{readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_12} AuxVars[] AssignedVars[readerThread1of1ForFork0_i] 248#[L67-1, L28-1]true [2024-02-10 01:02:16,059 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2024-02-10 01:02:16,060 INFO L85 PathProgramCache]: Analyzing trace with hash -169504924, now seen corresponding path program 1 times [2024-02-10 01:02:16,060 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-02-10 01:02:16,060 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1960546138] [2024-02-10 01:02:16,061 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-02-10 01:02:16,061 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-02-10 01:02:16,108 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-02-10 01:02:16,109 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-02-10 01:02:16,115 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-02-10 01:02:16,140 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-02-10 01:02:16,141 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2024-02-10 01:02:16,141 INFO L85 PathProgramCache]: Analyzing trace with hash 3049636, now seen corresponding path program 2 times [2024-02-10 01:02:16,141 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-02-10 01:02:16,141 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [608360413] [2024-02-10 01:02:16,141 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-02-10 01:02:16,141 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-02-10 01:02:16,156 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-02-10 01:02:16,157 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-02-10 01:02:16,159 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-02-10 01:02:16,161 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-02-10 01:02:16,161 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2024-02-10 01:02:16,162 INFO L85 PathProgramCache]: Analyzing trace with hash 1613213319, now seen corresponding path program 2 times [2024-02-10 01:02:16,162 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-02-10 01:02:16,162 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [748500317] [2024-02-10 01:02:16,162 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-02-10 01:02:16,162 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-02-10 01:02:16,213 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-02-10 01:02:16,434 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 4 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-02-10 01:02:16,435 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-02-10 01:02:16,435 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [748500317] [2024-02-10 01:02:16,435 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [748500317] provided 0 perfect and 1 imperfect interpolant sequences [2024-02-10 01:02:16,435 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1153317453] [2024-02-10 01:02:16,435 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-02-10 01:02:16,436 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-02-10 01:02:16,436 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-02-10 01:02:16,451 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-02-10 01:02:16,472 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2024-02-10 01:02:16,518 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-02-10 01:02:16,518 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2024-02-10 01:02:16,519 INFO L262 TraceCheckSpWp]: Trace formula consists of 73 conjuncts, 10 conjunts are in the unsatisfiable core [2024-02-10 01:02:16,521 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-02-10 01:02:16,634 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 4 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-02-10 01:02:16,634 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-02-10 01:02:16,748 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 4 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-02-10 01:02:16,749 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1153317453] provided 0 perfect and 2 imperfect interpolant sequences [2024-02-10 01:02:16,749 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-02-10 01:02:16,749 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9, 9] total 15 [2024-02-10 01:02:16,749 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [570864519] [2024-02-10 01:02:16,749 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-02-10 01:02:16,776 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-02-10 01:02:16,777 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2024-02-10 01:02:16,777 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=46, Invalid=164, Unknown=0, NotChecked=0, Total=210 [2024-02-10 01:02:19,436 INFO L175 Difference]: Start difference. First operand has 76 places, 1030 transitions, 6882 flow. Second operand 58 states and 2494 transitions. [2024-02-10 01:02:19,436 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 76 places, 1030 transitions, 6882 flow. Second operand 58 states and 2494 transitions. [2024-02-10 01:02:19,437 INFO L120 encePairwiseOnDemand]: Number of universal subtrahend loopers: 33 of 43 [2024-02-10 01:02:19,437 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-02-10 01:02:19,668 INFO L124 PetriNetUnfolderBase]: 2990/4140 cut-off events. [2024-02-10 01:02:19,669 INFO L125 PetriNetUnfolderBase]: For 821/821 co-relation queries the response was YES. [2024-02-10 01:02:19,676 INFO L83 FinitePrefix]: Finished finitePrefix Result has 14373 conditions, 4140 events. 2990/4140 cut-off events. For 821/821 co-relation queries the response was YES. Maximal size of possible extension queue 106. Compared 15553 event pairs, 0 based on Foata normal form. 5/1647 useless extension candidates. Maximal degree in co-relation 13293. Up to 1359 conditions per place. [2024-02-10 01:02:19,705 INFO L140 encePairwiseOnDemand]: 33/43 looper letters, 182 selfloop transitions, 305 changer transitions 0/1187 dead transitions. [2024-02-10 01:02:19,705 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 79 places, 1187 transitions, 8868 flow [2024-02-10 01:02:19,713 INFO L231 Difference]: Finished difference. Result has 139 places, 1177 transitions, 9050 flow [2024-02-10 01:02:19,714 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 58 states. [2024-02-10 01:02:19,715 INFO L428 stractBuchiCegarLoop]: Abstraction has has 139 places, 1177 transitions, 9050 flow [2024-02-10 01:02:19,715 INFO L335 stractBuchiCegarLoop]: ======== Iteration 5 ============ [2024-02-10 01:02:19,715 INFO L84 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 139 places, 1177 transitions, 9050 flow [2024-02-10 01:02:21,141 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2024-02-10 01:02:21,142 INFO L124 PetriNetUnfolderBase]: 2988/4136 cut-off events. [2024-02-10 01:02:21,142 INFO L125 PetriNetUnfolderBase]: For 1157/1157 co-relation queries the response was YES. [2024-02-10 01:02:21,142 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty language is not empty [2024-02-10 01:02:21,143 INFO L748 eck$LassoCheckResult]: Stem: 48#[$Ultimate##0]true [63] $Ultimate##0-->L56: Formula: (and (<= v_ULTIMATE.start_max1_3 v_N_2) (<= 0 v_ULTIMATE.start_min1_3)) InVars {ULTIMATE.start_max1=v_ULTIMATE.start_max1_3, N=v_N_2, ULTIMATE.start_min1=v_ULTIMATE.start_min1_3} OutVars{ULTIMATE.start_max1=v_ULTIMATE.start_max1_3, N=v_N_2, ULTIMATE.start_min1=v_ULTIMATE.start_min1_3} AuxVars[] AssignedVars[] 50#[L56]true [41] L56-->L59: Formula: (and (<= v_ULTIMATE.start_max2_3 v_N_3) (<= 0 v_ULTIMATE.start_min2_3)) InVars {ULTIMATE.start_max2=v_ULTIMATE.start_max2_3, N=v_N_3, ULTIMATE.start_min2=v_ULTIMATE.start_min2_3} OutVars{ULTIMATE.start_max2=v_ULTIMATE.start_max2_3, N=v_N_3, ULTIMATE.start_min2=v_ULTIMATE.start_min2_3} AuxVars[] AssignedVars[] 52#[L59]true [95] L59-->$Ultimate##0: Formula: (and (= v_writerThread1of1ForFork1_end_6 v_ULTIMATE.start_max1_5) (= v_writerThread1of1ForFork1_start_4 v_ULTIMATE.start_min1_5) (= v_writerThread1of1ForFork1_thidvar0_2 1)) InVars {ULTIMATE.start_max1=v_ULTIMATE.start_max1_5, ULTIMATE.start_min1=v_ULTIMATE.start_min1_5} OutVars{ULTIMATE.start_max1=v_ULTIMATE.start_max1_5, writerThread1of1ForFork1_j=v_writerThread1of1ForFork1_j_18, ULTIMATE.start_min1=v_ULTIMATE.start_min1_5, writerThread1of1ForFork1_start=v_writerThread1of1ForFork1_start_4, writerThread1of1ForFork1_end=v_writerThread1of1ForFork1_end_6, writerThread1of1ForFork1_thidvar0=v_writerThread1of1ForFork1_thidvar0_2} AuxVars[] AssignedVars[writerThread1of1ForFork1_j, writerThread1of1ForFork1_start, writerThread1of1ForFork1_end, writerThread1of1ForFork1_thidvar0] 54#[L59-1, $Ultimate##0]true [98] L59-1-->$Ultimate##0: Formula: (and (= v_readerThread1of1ForFork2_thidvar1_2 2) (= v_readerThread1of1ForFork2_start_4 v_ULTIMATE.start_min2_7) (= v_readerThread1of1ForFork2_end_6 v_ULTIMATE.start_max2_7) (= v_readerThread1of1ForFork2_thidvar0_2 2)) InVars {ULTIMATE.start_max2=v_ULTIMATE.start_max2_7, ULTIMATE.start_min2=v_ULTIMATE.start_min2_7} OutVars{ULTIMATE.start_max2=v_ULTIMATE.start_max2_7, readerThread1of1ForFork2_sum=v_readerThread1of1ForFork2_sum_8, ULTIMATE.start_min2=v_ULTIMATE.start_min2_7, readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_16, readerThread1of1ForFork2_thidvar0=v_readerThread1of1ForFork2_thidvar0_2, readerThread1of1ForFork2_start=v_readerThread1of1ForFork2_start_4, readerThread1of1ForFork2_thidvar1=v_readerThread1of1ForFork2_thidvar1_2, readerThread1of1ForFork2_end=v_readerThread1of1ForFork2_end_6} AuxVars[] AssignedVars[readerThread1of1ForFork2_sum, readerThread1of1ForFork2_i, readerThread1of1ForFork2_thidvar0, readerThread1of1ForFork2_start, readerThread1of1ForFork2_thidvar1, readerThread1of1ForFork2_end] 129#[L60, $Ultimate##0, $Ultimate##0]true [74] $Ultimate##0-->L27: Formula: (= v_readerThread1of1ForFork2_sum_1 0) InVars {} OutVars{readerThread1of1ForFork2_sum=v_readerThread1of1ForFork2_sum_1} AuxVars[] AssignedVars[readerThread1of1ForFork2_sum] 131#[L60, L27, $Ultimate##0]true [75] L27-->L28-1: Formula: (= v_readerThread1of1ForFork2_start_1 v_readerThread1of1ForFork2_i_1) InVars {readerThread1of1ForFork2_start=v_readerThread1of1ForFork2_start_1} OutVars{readerThread1of1ForFork2_start=v_readerThread1of1ForFork2_start_1, readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_1} AuxVars[] AssignedVars[readerThread1of1ForFork2_i] 133#[L28-1, L60, $Ultimate##0]true [77] L28-1-->L29: Formula: (< v_readerThread1of1ForFork2_i_5 v_readerThread1of1ForFork2_end_3) InVars {readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_5, readerThread1of1ForFork2_end=v_readerThread1of1ForFork2_end_3} OutVars{readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_5, readerThread1of1ForFork2_end=v_readerThread1of1ForFork2_end_3} AuxVars[] AssignedVars[] 135#[L60, L29, $Ultimate##0]true [79] L29-->L30: Formula: (and (<= v_readerThread1of1ForFork2_i_7 v_N_1) (<= 0 v_readerThread1of1ForFork2_i_7)) InVars {N=v_N_1, readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_7} OutVars{N=v_N_1, readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_7} AuxVars[] AssignedVars[] 137#[L60, $Ultimate##0, L30]true [80] L30-->L31: Formula: (= v_readerThread1of1ForFork2_sum_4 (+ v_readerThread1of1ForFork2_sum_3 (select v_A_1 v_readerThread1of1ForFork2_i_9))) InVars {A=v_A_1, readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_9, readerThread1of1ForFork2_sum=v_readerThread1of1ForFork2_sum_3} OutVars{A=v_A_1, readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_9, readerThread1of1ForFork2_sum=v_readerThread1of1ForFork2_sum_4} AuxVars[] AssignedVars[readerThread1of1ForFork2_sum] 139#[L60, L31, $Ultimate##0]true [81] L31-->L28-1: Formula: (= v_readerThread1of1ForFork2_i_12 (+ v_readerThread1of1ForFork2_i_11 1)) InVars {readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_11} OutVars{readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_12} AuxVars[] AssignedVars[readerThread1of1ForFork2_i] 133#[L28-1, L60, $Ultimate##0]true [77] L28-1-->L29: Formula: (< v_readerThread1of1ForFork2_i_5 v_readerThread1of1ForFork2_end_3) InVars {readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_5, readerThread1of1ForFork2_end=v_readerThread1of1ForFork2_end_3} OutVars{readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_5, readerThread1of1ForFork2_end=v_readerThread1of1ForFork2_end_3} AuxVars[] AssignedVars[] 135#[L60, L29, $Ultimate##0]true [79] L29-->L30: Formula: (and (<= v_readerThread1of1ForFork2_i_7 v_N_1) (<= 0 v_readerThread1of1ForFork2_i_7)) InVars {N=v_N_1, readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_7} OutVars{N=v_N_1, readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_7} AuxVars[] AssignedVars[] 137#[L60, $Ultimate##0, L30]true [80] L30-->L31: Formula: (= v_readerThread1of1ForFork2_sum_4 (+ v_readerThread1of1ForFork2_sum_3 (select v_A_1 v_readerThread1of1ForFork2_i_9))) InVars {A=v_A_1, readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_9, readerThread1of1ForFork2_sum=v_readerThread1of1ForFork2_sum_3} OutVars{A=v_A_1, readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_9, readerThread1of1ForFork2_sum=v_readerThread1of1ForFork2_sum_4} AuxVars[] AssignedVars[readerThread1of1ForFork2_sum] 139#[L60, L31, $Ultimate##0]true [81] L31-->L28-1: Formula: (= v_readerThread1of1ForFork2_i_12 (+ v_readerThread1of1ForFork2_i_11 1)) InVars {readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_11} OutVars{readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_12} AuxVars[] AssignedVars[readerThread1of1ForFork2_i] 133#[L28-1, L60, $Ultimate##0]true [76] L28-1-->readerFINAL: Formula: (<= v_readerThread1of1ForFork2_end_1 v_readerThread1of1ForFork2_i_3) InVars {readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_3, readerThread1of1ForFork2_end=v_readerThread1of1ForFork2_end_1} OutVars{readerThread1of1ForFork2_i=v_readerThread1of1ForFork2_i_3, readerThread1of1ForFork2_end=v_readerThread1of1ForFork2_end_1} AuxVars[] AssignedVars[] 228#[L60, readerFINAL, $Ultimate##0]true [78] readerFINAL-->readerEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 230#[L60, readerEXIT, $Ultimate##0]true [82] $Ultimate##0-->L41-1: Formula: (= v_writerThread1of1ForFork1_start_1 v_writerThread1of1ForFork1_j_1) InVars {writerThread1of1ForFork1_start=v_writerThread1of1ForFork1_start_1} OutVars{writerThread1of1ForFork1_j=v_writerThread1of1ForFork1_j_1, writerThread1of1ForFork1_start=v_writerThread1of1ForFork1_start_1} AuxVars[] AssignedVars[writerThread1of1ForFork1_j] 232#[L60, readerEXIT, L41-1]true [83] L41-1-->writerFINAL: Formula: (<= v_writerThread1of1ForFork1_end_1 v_writerThread1of1ForFork1_j_3) InVars {writerThread1of1ForFork1_j=v_writerThread1of1ForFork1_j_3, writerThread1of1ForFork1_end=v_writerThread1of1ForFork1_end_1} OutVars{writerThread1of1ForFork1_j=v_writerThread1of1ForFork1_j_3, writerThread1of1ForFork1_end=v_writerThread1of1ForFork1_end_1} AuxVars[] AssignedVars[] 234#[writerFINAL, L60, readerEXIT]true [85] writerFINAL-->writerEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 236#[L60, readerEXIT, writerEXIT]true [99] writerEXIT-->L61: Formula: (= v_writerThread1of1ForFork1_thidvar0_4 1) InVars {writerThread1of1ForFork1_thidvar0=v_writerThread1of1ForFork1_thidvar0_4} OutVars{writerThread1of1ForFork1_thidvar0=v_writerThread1of1ForFork1_thidvar0_4} AuxVars[] AssignedVars[] 238#[L61, readerEXIT]true [100] readerEXIT-->L62: Formula: (and (= v_readerThread1of1ForFork2_thidvar1_4 2) (= v_readerThread1of1ForFork2_thidvar0_4 2) (= v_readerThread1of1ForFork2_sum_10 v_ULTIMATE.start_sum_2)) InVars {readerThread1of1ForFork2_sum=v_readerThread1of1ForFork2_sum_10, readerThread1of1ForFork2_thidvar0=v_readerThread1of1ForFork2_thidvar0_4, readerThread1of1ForFork2_thidvar1=v_readerThread1of1ForFork2_thidvar1_4} OutVars{ULTIMATE.start_sum=v_ULTIMATE.start_sum_2, readerThread1of1ForFork2_sum=v_readerThread1of1ForFork2_sum_10, readerThread1of1ForFork2_thidvar0=v_readerThread1of1ForFork2_thidvar0_4, readerThread1of1ForFork2_thidvar1=v_readerThread1of1ForFork2_thidvar1_4} AuxVars[] AssignedVars[ULTIMATE.start_sum] 240#[L62]true [61] L62-->L67: Formula: (and (<= v_ULTIMATE.start_min2_1 v_ULTIMATE.start_max1_1) (<= v_ULTIMATE.start_min1_1 v_ULTIMATE.start_max2_1)) InVars {ULTIMATE.start_max1=v_ULTIMATE.start_max1_1, ULTIMATE.start_max2=v_ULTIMATE.start_max2_1, ULTIMATE.start_min1=v_ULTIMATE.start_min1_1, ULTIMATE.start_min2=v_ULTIMATE.start_min2_1} OutVars{ULTIMATE.start_max1=v_ULTIMATE.start_max1_1, ULTIMATE.start_max2=v_ULTIMATE.start_max2_1, ULTIMATE.start_min1=v_ULTIMATE.start_min1_1, ULTIMATE.start_min2=v_ULTIMATE.start_min2_1} AuxVars[] AssignedVars[] 242#[L67]true [92] L67-->$Ultimate##0: Formula: (and (= v_readerThread1of1ForFork0_thidvar0_2 2) (= v_readerThread1of1ForFork0_thidvar1_2 2) (= v_readerThread1of1ForFork0_start_4 v_ULTIMATE.start_min2_5) (= v_readerThread1of1ForFork0_end_6 v_ULTIMATE.start_max2_5)) InVars {ULTIMATE.start_max2=v_ULTIMATE.start_max2_5, ULTIMATE.start_min2=v_ULTIMATE.start_min2_5} OutVars{ULTIMATE.start_max2=v_ULTIMATE.start_max2_5, readerThread1of1ForFork0_start=v_readerThread1of1ForFork0_start_4, readerThread1of1ForFork0_sum=v_readerThread1of1ForFork0_sum_8, readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_16, readerThread1of1ForFork0_thidvar1=v_readerThread1of1ForFork0_thidvar1_2, readerThread1of1ForFork0_thidvar0=v_readerThread1of1ForFork0_thidvar0_2, ULTIMATE.start_min2=v_ULTIMATE.start_min2_5, readerThread1of1ForFork0_end=v_readerThread1of1ForFork0_end_6} AuxVars[] AssignedVars[readerThread1of1ForFork0_start, readerThread1of1ForFork0_sum, readerThread1of1ForFork0_i, readerThread1of1ForFork0_thidvar1, readerThread1of1ForFork0_thidvar0, readerThread1of1ForFork0_end] 244#[L67-1, $Ultimate##0]true [66] $Ultimate##0-->L27: Formula: (= v_readerThread1of1ForFork0_sum_1 0) InVars {} OutVars{readerThread1of1ForFork0_sum=v_readerThread1of1ForFork0_sum_1} AuxVars[] AssignedVars[readerThread1of1ForFork0_sum] 246#[L67-1, L27]true [67] L27-->L28-1: Formula: (= v_readerThread1of1ForFork0_start_1 v_readerThread1of1ForFork0_i_1) InVars {readerThread1of1ForFork0_start=v_readerThread1of1ForFork0_start_1} OutVars{readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_1, readerThread1of1ForFork0_start=v_readerThread1of1ForFork0_start_1} AuxVars[] AssignedVars[readerThread1of1ForFork0_i] 248#[L67-1, L28-1]true [69] L28-1-->L29: Formula: (< v_readerThread1of1ForFork0_i_5 v_readerThread1of1ForFork0_end_3) InVars {readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_5, readerThread1of1ForFork0_end=v_readerThread1of1ForFork0_end_3} OutVars{readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_5, readerThread1of1ForFork0_end=v_readerThread1of1ForFork0_end_3} AuxVars[] AssignedVars[] 250#[L67-1, L29]true [71] L29-->L30: Formula: (and (<= 0 v_readerThread1of1ForFork0_i_7) (<= v_readerThread1of1ForFork0_i_7 v_N_1)) InVars {readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_7, N=v_N_1} OutVars{readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_7, N=v_N_1} AuxVars[] AssignedVars[] 252#[L67-1, L30]true [72] L30-->L31: Formula: (= (+ (select v_A_1 v_readerThread1of1ForFork0_i_9) v_readerThread1of1ForFork0_sum_3) v_readerThread1of1ForFork0_sum_4) InVars {A=v_A_1, readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_9, readerThread1of1ForFork0_sum=v_readerThread1of1ForFork0_sum_3} OutVars{A=v_A_1, readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_9, readerThread1of1ForFork0_sum=v_readerThread1of1ForFork0_sum_4} AuxVars[] AssignedVars[readerThread1of1ForFork0_sum] 254#[L67-1, L31]true [73] L31-->L28-1: Formula: (= v_readerThread1of1ForFork0_i_12 (+ v_readerThread1of1ForFork0_i_11 1)) InVars {readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_11} OutVars{readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_12} AuxVars[] AssignedVars[readerThread1of1ForFork0_i] 248#[L67-1, L28-1]true [2024-02-10 01:02:21,143 INFO L750 eck$LassoCheckResult]: Loop: 248#[L67-1, L28-1]true [69] L28-1-->L29: Formula: (< v_readerThread1of1ForFork0_i_5 v_readerThread1of1ForFork0_end_3) InVars {readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_5, readerThread1of1ForFork0_end=v_readerThread1of1ForFork0_end_3} OutVars{readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_5, readerThread1of1ForFork0_end=v_readerThread1of1ForFork0_end_3} AuxVars[] AssignedVars[] 250#[L67-1, L29]true [71] L29-->L30: Formula: (and (<= 0 v_readerThread1of1ForFork0_i_7) (<= v_readerThread1of1ForFork0_i_7 v_N_1)) InVars {readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_7, N=v_N_1} OutVars{readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_7, N=v_N_1} AuxVars[] AssignedVars[] 252#[L67-1, L30]true [72] L30-->L31: Formula: (= (+ (select v_A_1 v_readerThread1of1ForFork0_i_9) v_readerThread1of1ForFork0_sum_3) v_readerThread1of1ForFork0_sum_4) InVars {A=v_A_1, readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_9, readerThread1of1ForFork0_sum=v_readerThread1of1ForFork0_sum_3} OutVars{A=v_A_1, readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_9, readerThread1of1ForFork0_sum=v_readerThread1of1ForFork0_sum_4} AuxVars[] AssignedVars[readerThread1of1ForFork0_sum] 254#[L67-1, L31]true [73] L31-->L28-1: Formula: (= v_readerThread1of1ForFork0_i_12 (+ v_readerThread1of1ForFork0_i_11 1)) InVars {readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_11} OutVars{readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_12} AuxVars[] AssignedVars[readerThread1of1ForFork0_i] 248#[L67-1, L28-1]true [2024-02-10 01:02:21,143 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2024-02-10 01:02:21,143 INFO L85 PathProgramCache]: Analyzing trace with hash 1466092257, now seen corresponding path program 3 times [2024-02-10 01:02:21,144 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-02-10 01:02:21,144 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [695084318] [2024-02-10 01:02:21,144 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-02-10 01:02:21,144 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-02-10 01:02:21,196 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-02-10 01:02:21,197 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-02-10 01:02:21,210 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-02-10 01:02:21,228 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-02-10 01:02:21,230 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2024-02-10 01:02:21,230 INFO L85 PathProgramCache]: Analyzing trace with hash 3049636, now seen corresponding path program 3 times [2024-02-10 01:02:21,230 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-02-10 01:02:21,230 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1998084501] [2024-02-10 01:02:21,230 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-02-10 01:02:21,230 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-02-10 01:02:21,234 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-02-10 01:02:21,234 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-02-10 01:02:21,238 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-02-10 01:02:21,245 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-02-10 01:02:21,246 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2024-02-10 01:02:21,247 INFO L85 PathProgramCache]: Analyzing trace with hash 24175492, now seen corresponding path program 4 times [2024-02-10 01:02:21,247 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-02-10 01:02:21,247 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1414343653] [2024-02-10 01:02:21,247 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-02-10 01:02:21,248 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-02-10 01:02:21,273 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-02-10 01:02:21,273 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-02-10 01:02:21,279 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-02-10 01:02:21,284 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-02-10 01:02:21,769 INFO L210 LassoAnalysis]: Preferences: [2024-02-10 01:02:21,770 INFO L126 ssoRankerPreferences]: Compute integeral hull: false [2024-02-10 01:02:21,770 INFO L127 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-02-10 01:02:21,770 INFO L128 ssoRankerPreferences]: Term annotations enabled: false [2024-02-10 01:02:21,770 INFO L129 ssoRankerPreferences]: Use exernal solver: false [2024-02-10 01:02:21,770 INFO L130 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-02-10 01:02:21,770 INFO L131 ssoRankerPreferences]: Dump SMT script to file: false [2024-02-10 01:02:21,770 INFO L132 ssoRankerPreferences]: Path of dumped script: [2024-02-10 01:02:21,770 INFO L133 ssoRankerPreferences]: Filename of dumped script: optimistic-concurrency2.bpl_BEv2_Iteration5_Lasso [2024-02-10 01:02:21,770 INFO L134 ssoRankerPreferences]: MapElimAlgo: Frank [2024-02-10 01:02:21,770 INFO L276 LassoAnalysis]: Starting lasso preprocessing... [2024-02-10 01:02:21,774 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-02-10 01:02:21,786 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-02-10 01:02:21,789 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-02-10 01:02:21,791 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-02-10 01:02:21,793 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-02-10 01:02:21,796 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-02-10 01:02:22,183 INFO L294 LassoAnalysis]: Preprocessing complete. [2024-02-10 01:02:22,183 INFO L490 LassoAnalysis]: Using template 'affine'. [2024-02-10 01:02:22,183 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-02-10 01:02:22,184 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-02-10 01:02:22,185 INFO L229 MonitoredProcess]: Starting monitored process 10 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) [2024-02-10 01:02:22,187 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (10)] Waiting until timeout for monitored process [2024-02-10 01:02:22,191 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-02-10 01:02:22,200 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-02-10 01:02:22,200 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-02-10 01:02:22,200 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-02-10 01:02:22,200 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-02-10 01:02:22,203 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-02-10 01:02:22,203 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-02-10 01:02:22,216 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-02-10 01:02:22,223 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (10)] Forceful destruction successful, exit code 0 [2024-02-10 01:02:22,223 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-02-10 01:02:22,224 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-02-10 01:02:22,225 INFO L229 MonitoredProcess]: Starting monitored process 11 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) [2024-02-10 01:02:22,230 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-02-10 01:02:22,238 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-02-10 01:02:22,238 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-02-10 01:02:22,239 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-02-10 01:02:22,239 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-02-10 01:02:22,241 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-02-10 01:02:22,241 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-02-10 01:02:22,243 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (11)] Waiting until timeout for monitored process [2024-02-10 01:02:22,251 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-02-10 01:02:22,258 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (11)] Forceful destruction successful, exit code 0 [2024-02-10 01:02:22,258 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-02-10 01:02:22,258 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-02-10 01:02:22,260 INFO L229 MonitoredProcess]: Starting monitored process 12 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) [2024-02-10 01:02:22,266 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-02-10 01:02:22,273 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-02-10 01:02:22,274 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-02-10 01:02:22,274 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-02-10 01:02:22,274 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-02-10 01:02:22,275 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-02-10 01:02:22,276 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-02-10 01:02:22,278 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (12)] Waiting until timeout for monitored process [2024-02-10 01:02:22,285 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-02-10 01:02:22,292 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (12)] Forceful destruction successful, exit code 0 [2024-02-10 01:02:22,293 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-02-10 01:02:22,293 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-02-10 01:02:22,294 INFO L229 MonitoredProcess]: Starting monitored process 13 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) [2024-02-10 01:02:22,300 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-02-10 01:02:22,309 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-02-10 01:02:22,310 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-02-10 01:02:22,310 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-02-10 01:02:22,310 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-02-10 01:02:22,311 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-02-10 01:02:22,311 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-02-10 01:02:22,314 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (13)] Waiting until timeout for monitored process [2024-02-10 01:02:22,321 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-02-10 01:02:22,328 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (13)] Forceful destruction successful, exit code 0 [2024-02-10 01:02:22,328 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-02-10 01:02:22,329 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-02-10 01:02:22,330 INFO L229 MonitoredProcess]: Starting monitored process 14 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) [2024-02-10 01:02:22,339 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-02-10 01:02:22,348 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-02-10 01:02:22,349 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-02-10 01:02:22,349 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-02-10 01:02:22,349 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-02-10 01:02:22,350 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-02-10 01:02:22,350 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-02-10 01:02:22,352 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (14)] Waiting until timeout for monitored process [2024-02-10 01:02:22,359 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-02-10 01:02:22,366 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (14)] Forceful destruction successful, exit code 0 [2024-02-10 01:02:22,367 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-02-10 01:02:22,367 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-02-10 01:02:22,368 INFO L229 MonitoredProcess]: Starting monitored process 15 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) [2024-02-10 01:02:22,375 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-02-10 01:02:22,384 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-02-10 01:02:22,384 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-02-10 01:02:22,384 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-02-10 01:02:22,384 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-02-10 01:02:22,391 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-02-10 01:02:22,392 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-02-10 01:02:22,398 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (15)] Waiting until timeout for monitored process [2024-02-10 01:02:22,403 INFO L527 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-02-10 01:02:22,409 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (15)] Forceful destruction successful, exit code 0 [2024-02-10 01:02:22,409 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-02-10 01:02:22,410 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-02-10 01:02:22,411 INFO L229 MonitoredProcess]: Starting monitored process 16 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) [2024-02-10 01:02:22,418 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-02-10 01:02:22,427 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-02-10 01:02:22,427 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-02-10 01:02:22,427 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-02-10 01:02:22,427 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-02-10 01:02:22,439 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-02-10 01:02:22,439 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-02-10 01:02:22,451 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (16)] Waiting until timeout for monitored process [2024-02-10 01:02:22,451 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-02-10 01:02:22,462 INFO L443 ModelExtractionUtils]: Simplification made 5 calls to the SMT solver. [2024-02-10 01:02:22,462 INFO L444 ModelExtractionUtils]: 40 out of 46 variables were initially zero. Simplification set additionally 2 variables to zero. [2024-02-10 01:02:22,463 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-02-10 01:02:22,463 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-02-10 01:02:22,476 INFO L229 MonitoredProcess]: Starting monitored process 17 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) [2024-02-10 01:02:22,515 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (17)] Waiting until timeout for monitored process [2024-02-10 01:02:22,515 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-02-10 01:02:22,537 INFO L438 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2024-02-10 01:02:22,537 INFO L513 LassoAnalysis]: Proved termination. [2024-02-10 01:02:22,537 INFO L515 LassoAnalysis]: Termination argument consisting of: Ranking function f(readerThread1of1ForFork0_i, N) = -2*readerThread1of1ForFork0_i + 2*N + 1 Supporting invariants [] [2024-02-10 01:02:22,551 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (16)] Ended with exit code 0 [2024-02-10 01:02:22,556 INFO L156 tatePredicateManager]: 2 out of 2 supporting invariants were superfluous and have been removed [2024-02-10 01:02:22,562 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2024-02-10 01:02:22,576 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-02-10 01:02:22,577 INFO L262 TraceCheckSpWp]: Trace formula consists of 73 conjuncts, 2 conjunts are in the unsatisfiable core [2024-02-10 01:02:22,578 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-02-10 01:02:22,624 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-02-10 01:02:22,625 INFO L262 TraceCheckSpWp]: Trace formula consists of 9 conjuncts, 4 conjunts are in the unsatisfiable core [2024-02-10 01:02:22,626 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-02-10 01:02:22,641 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-02-10 01:02:22,642 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 2 loop predicates [2024-02-10 01:02:22,643 INFO L162 BuchiComplementFKV]: Start buchiComplementFKV with optimization HEIMAT2. Operand has 4 states, 4 states have (on average 7.25) internal successors, (29), 4 states have internal predecessors, (29), 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) [2024-02-10 01:02:22,704 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (17)] Forceful destruction successful, exit code 0 [2024-02-10 01:02:22,741 INFO L171 BuchiComplementFKV]: Finished buchiComplementFKV with optimization HEIMAT2. Operand has 4 states, 4 states have (on average 7.25) internal successors, (29), 4 states have internal predecessors, (29), 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) Result 8 states and 502 transitions.5 powerset states3 rank states. The highest rank that occured is 1 [2024-02-10 01:02:22,741 INFO L89 BuchiIntersect]: Starting Intersection [2024-02-10 01:02:22,741 INFO L112 BuchiIntersect]: use intersection optimizations [2024-02-10 01:02:22,741 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states and 502 transitions. [2024-02-10 01:02:22,742 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 502 transitions. [2024-02-10 01:02:22,743 INFO L79 tersectStemOptimized]: Starting StemOptimized Intersection [2024-02-10 01:02:22,743 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states and 502 transitions. [2024-02-10 01:02:22,744 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 502 transitions. [2024-02-10 01:02:23,477 INFO L90 tersectStemOptimized]: Exiting StemOptimized Intersection [2024-02-10 01:02:23,477 INFO L99 BuchiIntersect]: Exiting Intersection [2024-02-10 01:02:23,478 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 4 states 1 stem states 2 non-accepting loop states 1 accepting loop states [2024-02-10 01:02:23,479 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 7.25) internal successors, (29), 4 states have internal predecessors, (29), 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) [2024-02-10 01:02:23,479 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 166 transitions. [2024-02-10 01:02:23,479 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 166 transitions. Stem has 29 letters. Loop has 4 letters. [2024-02-10 01:02:23,479 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-02-10 01:02:23,479 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 166 transitions. Stem has 33 letters. Loop has 4 letters. [2024-02-10 01:02:23,480 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-02-10 01:02:23,480 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 166 transitions. Stem has 29 letters. Loop has 8 letters. [2024-02-10 01:02:23,480 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-02-10 01:02:23,480 INFO L428 stractBuchiCegarLoop]: Abstraction has has 151 places, 18292 transitions, 175754 flow [2024-02-10 01:02:23,480 INFO L335 stractBuchiCegarLoop]: ======== Iteration 6 ============ [2024-02-10 01:02:23,480 INFO L84 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 151 places, 18292 transitions, 175754 flow [2024-02-10 01:02:37,025 INFO L124 PetriNetUnfolderBase]: 10298/12911 cut-off events. [2024-02-10 01:02:37,026 INFO L125 PetriNetUnfolderBase]: For 2514/2514 co-relation queries the response was YES. [2024-02-10 01:02:37,026 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty language is empty [2024-02-10 01:02:37,032 INFO L201 PluginConnector]: Adding new model optimistic-concurrency2.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer CFG 10.02 01:02:37 BoogieIcfgContainer [2024-02-10 01:02:37,032 INFO L131 PluginConnector]: ------------------------ END BuchiAutomizer---------------------------- [2024-02-10 01:02:37,032 INFO L158 Benchmark]: Toolchain (without parser) took 29478.22ms. Allocated memory was 152.0MB in the beginning and 1.5GB in the end (delta: 1.4GB). Free memory was 122.1MB in the beginning and 1.0GB in the end (delta: -894.5MB). Peak memory consumption was 745.0MB. Max. memory is 8.0GB. [2024-02-10 01:02:37,033 INFO L158 Benchmark]: Boogie PL CUP Parser took 0.21ms. Allocated memory is still 152.0MB. Free memory is still 123.1MB. There was no memory consumed. Max. memory is 8.0GB. [2024-02-10 01:02:37,038 INFO L158 Benchmark]: Boogie Procedure Inliner took 121.55ms. Allocated memory was 152.0MB in the beginning and 227.5MB in the end (delta: 75.5MB). Free memory was 122.1MB in the beginning and 205.6MB in the end (delta: -83.5MB). Peak memory consumption was 3.1MB. Max. memory is 8.0GB. [2024-02-10 01:02:37,039 INFO L158 Benchmark]: Boogie Preprocessor took 59.12ms. Allocated memory is still 227.5MB. Free memory was 205.6MB in the beginning and 204.5MB in the end (delta: 1.0MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2024-02-10 01:02:37,039 INFO L158 Benchmark]: RCFGBuilder took 548.26ms. Allocated memory is still 227.5MB. Free memory was 204.5MB in the beginning and 194.6MB in the end (delta: 9.9MB). Peak memory consumption was 9.4MB. Max. memory is 8.0GB. [2024-02-10 01:02:37,039 INFO L158 Benchmark]: BuchiAutomizer took 28725.76ms. Allocated memory was 227.5MB in the beginning and 1.5GB in the end (delta: 1.3GB). Free memory was 194.5MB in the beginning and 1.0GB in the end (delta: -822.1MB). Peak memory consumption was 743.4MB. Max. memory is 8.0GB. [2024-02-10 01:02:37,042 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.21ms. Allocated memory is still 152.0MB. Free memory is still 123.1MB. There was no memory consumed. Max. memory is 8.0GB. * Boogie Procedure Inliner took 121.55ms. Allocated memory was 152.0MB in the beginning and 227.5MB in the end (delta: 75.5MB). Free memory was 122.1MB in the beginning and 205.6MB in the end (delta: -83.5MB). Peak memory consumption was 3.1MB. Max. memory is 8.0GB. * Boogie Preprocessor took 59.12ms. Allocated memory is still 227.5MB. Free memory was 205.6MB in the beginning and 204.5MB in the end (delta: 1.0MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 548.26ms. Allocated memory is still 227.5MB. Free memory was 204.5MB in the beginning and 194.6MB in the end (delta: 9.9MB). Peak memory consumption was 9.4MB. Max. memory is 8.0GB. * BuchiAutomizer took 28725.76ms. Allocated memory was 227.5MB in the beginning and 1.5GB in the end (delta: 1.3GB). Free memory was 194.5MB in the beginning and 1.0GB in the end (delta: -822.1MB). Peak memory consumption was 743.4MB. 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 5 terminating modules (2 trivial, 3 deterministic, 0 nondeterministic). One deterministic module has affine ranking function end + -1 * j and consists of 5 locations. One deterministic module has affine ranking function 2 * N + -2 * i + 1 and consists of 4 locations. One deterministic module has affine ranking function 2 * N + -2 * i + 1 and consists of 4 locations. 2 modules have a trivial ranking function, the largest among these consists of 15 locations. - StatisticsResult: Timing statistics BüchiAutomizer plugin needed 28.4s and 6 iterations. TraceHistogramMax:0. Analysis of lassos took 4.8s. Construction of modules took 1.9s. Büchi inclusion checks took 4.2s. Highest rank in rank-based complementation 1. 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 [3, 0, 0, 0, 0]. InterpolantCoveringCapabilityFinite: 0/0 InterpolantCoveringCapabilityBuchi: 0/0 HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 1154 SdHoareTripleChecker+Valid, 2.4s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 1151 mSDsluCounter, 5828 SdHoareTripleChecker+Invalid, 1.9s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 4606 mSDsCounter, 24 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 4486 IncrementalHoareTripleChecker+Invalid, 4510 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 24 mSolverCounterUnsat, 1222 mSDtfsCounter, 4486 mSolverCounterSat, 0.1s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown LassoAnalysisResults: nont0 unkn0 SFLI0 SFLT0 conc1 concLT0 SILN0 SILU1 SILI0 SILT0 lasso3 LassoPreprocessingBenchmarks: Lassos: inital77 mio100 ax100 hnf100 lsp84 ukn92 mio100 lsp84 div100 bol100 ite100 ukn100 eq159 hnf91 smp100 dnf100 smp100 tf100 neg100 sie100 LassoTerminationAnalysisBenchmarks: ConstraintsSatisfiability: unsat Degree: 0 Time: 94ms VariablesStem: 1 VariablesLoop: 0 DisjunctsStem: 1 DisjunctsLoop: 1 SupportingInvariants: 2 MotzkinApplications: 6 LassoTerminationAnalysisBenchmarks: LassoNonterminationAnalysisSatFixpoint: 0 LassoNonterminationAnalysisSatUnbounded: 0 LassoNonterminationAnalysisUnsat: 0 LassoNonterminationAnalysisUnknown: 0 LassoNonterminationAnalysisTime: 0.0s InitialAbstractionConstructionTime: 0.1s - TerminationAnalysisResult: Termination proven Buchi Automizer proved that your program is terminating RESULT: Ultimate proved your program to be correct! [2024-02-10 01:02:37,076 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2024-02-10 01:02:37,282 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (1)] Ended with exit code 0 Received shutdown request...