/usr/bin/java -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data -tc ../../../trunk/examples/toolchains/BuchiAutomizerBplInline.xml -s ../../../trunk/examples/settings/default/automizer/svcomp-Termination-32bit-Automizer_Default.epf --buchiautomizer.automaton.type.for.concurrent.programs RABIN_PETRI_NET -i ../../../trunk/examples/concurrent/bpl/regression/single_assertion_test.bpl -------------------------------------------------------------------------------- This is Ultimate 0.2.3-wip.fs.rabin-petrinet-4c29625-m [2023-10-12 17:36:37,707 INFO L172 SettingsManager]: Resetting all preferences to default values... [2023-10-12 17:36:37,781 INFO L100 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/default/automizer/svcomp-Termination-32bit-Automizer_Default.epf [2023-10-12 17:36:37,811 INFO L114 SettingsManager]: Preferences different from defaults after loading the file: [2023-10-12 17:36:37,812 INFO L135 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2023-10-12 17:36:37,812 INFO L137 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2023-10-12 17:36:37,813 INFO L135 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2023-10-12 17:36:37,814 INFO L137 SettingsManager]: * Create parallel compositions if possible=false [2023-10-12 17:36:37,814 INFO L137 SettingsManager]: * Use SBE=true [2023-10-12 17:36:37,821 INFO L135 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2023-10-12 17:36:37,821 INFO L137 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2023-10-12 17:36:37,821 INFO L137 SettingsManager]: * Use old map elimination=false [2023-10-12 17:36:37,822 INFO L137 SettingsManager]: * Use external solver (rank synthesis)=false [2023-10-12 17:36:37,823 INFO L137 SettingsManager]: * Use only trivial implications for array writes=true [2023-10-12 17:36:37,823 INFO L137 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2023-10-12 17:36:37,824 INFO L135 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2023-10-12 17:36:37,824 INFO L137 SettingsManager]: * sizeof long=4 [2023-10-12 17:36:37,824 INFO L137 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2023-10-12 17:36:37,824 INFO L137 SettingsManager]: * Overapproximate operations on floating types=true [2023-10-12 17:36:37,824 INFO L137 SettingsManager]: * sizeof POINTER=4 [2023-10-12 17:36:37,825 INFO L137 SettingsManager]: * Check division by zero=IGNORE [2023-10-12 17:36:37,826 INFO L137 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2023-10-12 17:36:37,826 INFO L137 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2023-10-12 17:36:37,826 INFO L137 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2023-10-12 17:36:37,827 INFO L137 SettingsManager]: * sizeof long double=12 [2023-10-12 17:36:37,827 INFO L137 SettingsManager]: * Check if freed pointer was valid=false [2023-10-12 17:36:37,827 INFO L137 SettingsManager]: * Assume nondeterminstic values are in range=false [2023-10-12 17:36:37,827 INFO L137 SettingsManager]: * Use constant arrays=true [2023-10-12 17:36:37,828 INFO L137 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2023-10-12 17:36:37,828 INFO L135 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2023-10-12 17:36:37,829 INFO L137 SettingsManager]: * Size of a code block=SequenceOfStatements [2023-10-12 17:36:37,829 INFO L135 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2023-10-12 17:36:37,829 INFO L137 SettingsManager]: * Trace refinement strategy=CAMEL [2023-10-12 17:36:37,831 INFO L135 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2023-10-12 17:36:37,831 INFO L137 SettingsManager]: * TransformationType=MODULO_NEIGHBOR WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer: Automaton type for concurrent programs -> RABIN_PETRI_NET [2023-10-12 17:36:38,074 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2023-10-12 17:36:38,091 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2023-10-12 17:36:38,093 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2023-10-12 17:36:38,094 INFO L270 PluginConnector]: Initializing Boogie PL CUP Parser... [2023-10-12 17:36:38,095 INFO L274 PluginConnector]: Boogie PL CUP Parser initialized [2023-10-12 17:36:38,096 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/concurrent/bpl/regression/single_assertion_test.bpl [2023-10-12 17:36:38,096 INFO L110 BoogieParser]: Parsing: '/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/concurrent/bpl/regression/single_assertion_test.bpl' [2023-10-12 17:36:38,118 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2023-10-12 17:36:38,120 INFO L133 ToolchainWalker]: Walking toolchain with 4 elements. [2023-10-12 17:36:38,122 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2023-10-12 17:36:38,122 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2023-10-12 17:36:38,122 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2023-10-12 17:36:38,132 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "single_assertion_test.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 12.10 05:36:38" (1/1) ... [2023-10-12 17:36:38,139 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "single_assertion_test.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 12.10 05:36:38" (1/1) ... [2023-10-12 17:36:38,146 INFO L138 Inliner]: procedures = 2, calls = 1, calls flagged for inlining = 0, calls inlined = 0, statements flattened = 0 [2023-10-12 17:36:38,147 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2023-10-12 17:36:38,148 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2023-10-12 17:36:38,150 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2023-10-12 17:36:38,150 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2023-10-12 17:36:38,157 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "single_assertion_test.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 12.10 05:36:38" (1/1) ... [2023-10-12 17:36:38,157 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "single_assertion_test.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 12.10 05:36:38" (1/1) ... [2023-10-12 17:36:38,158 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "single_assertion_test.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 12.10 05:36:38" (1/1) ... [2023-10-12 17:36:38,158 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "single_assertion_test.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 12.10 05:36:38" (1/1) ... [2023-10-12 17:36:38,160 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "single_assertion_test.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 12.10 05:36:38" (1/1) ... [2023-10-12 17:36:38,163 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "single_assertion_test.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 12.10 05:36:38" (1/1) ... [2023-10-12 17:36:38,163 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "single_assertion_test.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 12.10 05:36:38" (1/1) ... [2023-10-12 17:36:38,164 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "single_assertion_test.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 12.10 05:36:38" (1/1) ... [2023-10-12 17:36:38,165 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2023-10-12 17:36:38,166 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2023-10-12 17:36:38,167 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2023-10-12 17:36:38,167 INFO L274 PluginConnector]: RCFGBuilder initialized [2023-10-12 17:36:38,167 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "single_assertion_test.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 12.10 05:36:38" (1/1) ... [2023-10-12 17:36:38,173 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-10-12 17:36:38,179 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-10-12 17:36:38,198 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2023-10-12 17:36:38,201 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (1)] Waiting until timeout for monitored process [2023-10-12 17:36:38,229 INFO L124 BoogieDeclarations]: Specification and implementation of procedure ULTIMATE.start given in one single declaration [2023-10-12 17:36:38,230 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2023-10-12 17:36:38,230 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2023-10-12 17:36:38,230 INFO L124 BoogieDeclarations]: Specification and implementation of procedure thread given in one single declaration [2023-10-12 17:36:38,230 INFO L130 BoogieDeclarations]: Found specification of procedure thread [2023-10-12 17:36:38,230 INFO L138 BoogieDeclarations]: Found implementation of procedure thread [2023-10-12 17:36:38,231 WARN L210 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement [2023-10-12 17:36:38,267 INFO L236 CfgBuilder]: Building ICFG [2023-10-12 17:36:38,269 INFO L262 CfgBuilder]: Building CFG for each procedure with an implementation [2023-10-12 17:36:38,341 INFO L277 CfgBuilder]: Performing block encoding [2023-10-12 17:36:38,347 INFO L297 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2023-10-12 17:36:38,347 INFO L302 CfgBuilder]: Removed 0 assume(true) statements. [2023-10-12 17:36:38,349 INFO L201 PluginConnector]: Adding new model single_assertion_test.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 12.10 05:36:38 BoogieIcfgContainer [2023-10-12 17:36:38,349 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2023-10-12 17:36:38,350 INFO L112 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2023-10-12 17:36:38,350 INFO L270 PluginConnector]: Initializing BuchiAutomizer... [2023-10-12 17:36:38,357 INFO L274 PluginConnector]: BuchiAutomizer initialized [2023-10-12 17:36:38,358 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2023-10-12 17:36:38,358 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "single_assertion_test.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 12.10 05:36:38" (1/2) ... [2023-10-12 17:36:38,361 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@3ce5c24e and model type single_assertion_test.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 12.10 05:36:38, skipping insertion in model container [2023-10-12 17:36:38,361 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2023-10-12 17:36:38,361 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "single_assertion_test.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 12.10 05:36:38" (2/2) ... [2023-10-12 17:36:38,364 INFO L332 chiAutomizerObserver]: Analyzing ICFG single_assertion_test.bpl [2023-10-12 17:36:38,421 INFO L144 ThreadInstanceAdder]: Constructed 2 joinOtherThreadTransitions. [2023-10-12 17:36:38,441 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 19 places, 17 transitions, 45 flow [2023-10-12 17:36:38,458 INFO L124 PetriNetUnfolderBase]: 1/15 cut-off events. [2023-10-12 17:36:38,458 INFO L125 PetriNetUnfolderBase]: For 1/2 co-relation queries the response was YES. [2023-10-12 17:36:38,462 INFO L83 FinitePrefix]: Finished finitePrefix Result has 21 conditions, 15 events. 1/15 cut-off events. For 1/2 co-relation queries the response was YES. Maximal size of possible extension queue 4. Compared 15 event pairs, 0 based on Foata normal form. 0/12 useless extension candidates. Maximal degree in co-relation 6. Up to 2 conditions per place. [2023-10-12 17:36:38,462 INFO L82 GeneralOperation]: Start removeDead. Operand has 19 places, 17 transitions, 45 flow [2023-10-12 17:36:38,477 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 15 places, 13 transitions, 34 flow [2023-10-12 17:36:38,480 INFO L115 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2023-10-12 17:36:38,494 INFO L131 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 15 places, 13 transitions, 34 flow [2023-10-12 17:36:38,497 INFO L113 LiptonReduction]: Starting Lipton reduction on Petri net that has 15 places, 13 transitions, 34 flow [2023-10-12 17:36:38,497 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 15 places, 13 transitions, 34 flow [2023-10-12 17:36:38,502 INFO L124 PetriNetUnfolderBase]: 1/15 cut-off events. [2023-10-12 17:36:38,502 INFO L125 PetriNetUnfolderBase]: For 1/2 co-relation queries the response was YES. [2023-10-12 17:36:38,502 INFO L83 FinitePrefix]: Finished finitePrefix Result has 21 conditions, 15 events. 1/15 cut-off events. For 1/2 co-relation queries the response was YES. Maximal size of possible extension queue 4. Compared 15 event pairs, 0 based on Foata normal form. 0/12 useless extension candidates. Maximal degree in co-relation 6. Up to 2 conditions per place. [2023-10-12 17:36:38,503 INFO L119 LiptonReduction]: Number of co-enabled transitions 40 [2023-10-12 17:36:38,640 INFO L134 LiptonReduction]: Checked pairs total: 75 [2023-10-12 17:36:38,640 INFO L136 LiptonReduction]: Total number of compositions: 4 [2023-10-12 17:36:38,651 INFO L305 stractBuchiCegarLoop]: Interprodecural is true [2023-10-12 17:36:38,651 INFO L306 stractBuchiCegarLoop]: Hoare is false [2023-10-12 17:36:38,651 INFO L307 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2023-10-12 17:36:38,651 INFO L308 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2023-10-12 17:36:38,651 INFO L309 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2023-10-12 17:36:38,651 INFO L310 stractBuchiCegarLoop]: Difference is false [2023-10-12 17:36:38,651 INFO L311 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2023-10-12 17:36:38,652 INFO L315 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == RabinPetriNetCegarLoop ======== [2023-10-12 17:36:38,652 INFO L67 RabinIsEmpty]: Start rabinIsEmpty. Operand has 12 places, 10 transitions, 28 flow [2023-10-12 17:36:38,668 ERROR L47 etriNetUnfolderRabin]: [1:1A:[45] $Ultimate##0-->L22-1: Formula: (and (= v_x_14 0) (= 0 v_ULTIMATE.start_i_9)) InVars {} OutVars{ULTIMATE.start_i=v_ULTIMATE.start_i_9, x=v_x_14} AuxVars[] AssignedVars[ULTIMATE.start_i, x][7], 3:2A:[20] L22-1-->L24: Formula: (< v_ULTIMATE.start_i_2 2) InVars {ULTIMATE.start_i=v_ULTIMATE.start_i_2} OutVars{ULTIMATE.start_i=v_ULTIMATE.start_i_2} AuxVars[] AssignedVars[][2], 4:3A:[40] L24-->$Ultimate##0: Formula: (and (= v_threadThread1of1ForFork0_i_6 v_ULTIMATE.start_i_8) (= v_threadThread1of1ForFork0_thidvar0_2 v_ULTIMATE.start_i_8)) InVars {ULTIMATE.start_i=v_ULTIMATE.start_i_8} OutVars{threadThread1of1ForFork0_i=v_threadThread1of1ForFork0_i_6, ULTIMATE.start_i=v_ULTIMATE.start_i_8, threadThread1of1ForFork0_thidvar0=v_threadThread1of1ForFork0_thidvar0_2} AuxVars[] AssignedVars[threadThread1of1ForFork0_i, threadThread1of1ForFork0_thidvar0][6], 5:4A:[25] L24-1-->L22-1: Formula: (= (+ 1 v_ULTIMATE.start_i_4) v_ULTIMATE.start_i_3) InVars {ULTIMATE.start_i=v_ULTIMATE.start_i_4} OutVars{ULTIMATE.start_i=v_ULTIMATE.start_i_3} AuxVars[] AssignedVars[ULTIMATE.start_i][4], 9:5A:[20] L22-1-->L24: Formula: (< v_ULTIMATE.start_i_2 2) InVars {ULTIMATE.start_i=v_ULTIMATE.start_i_2} OutVars{ULTIMATE.start_i=v_ULTIMATE.start_i_2} AuxVars[] AssignedVars[][2], 10:6A:[38] L24-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[][5]][11:7A:[39] ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[][3]] [2023-10-12 17:36:38,670 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2023-10-12 17:36:38,670 INFO L124 PetriNetUnfolderBase]: 0/10 cut-off events. [2023-10-12 17:36:38,670 INFO L125 PetriNetUnfolderBase]: For 1/1 co-relation queries the response was YES. [2023-10-12 17:36:38,670 INFO L72 RabinIsEmpty]: Finished rabinIsEmpty language is not empty [2023-10-12 17:36:38,673 INFO L337 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2023-10-12 17:36:38,673 INFO L67 RabinIsEmpty]: Start rabinIsEmpty. Operand has 12 places, 10 transitions, 28 flow [2023-10-12 17:36:38,687 ERROR L47 etriNetUnfolderRabin]: [1:1A:[45] $Ultimate##0-->L22-1: Formula: (and (= v_x_14 0) (= 0 v_ULTIMATE.start_i_9)) InVars {} OutVars{ULTIMATE.start_i=v_ULTIMATE.start_i_9, x=v_x_14} AuxVars[] AssignedVars[ULTIMATE.start_i, x][7], 3:2A:[20] L22-1-->L24: Formula: (< v_ULTIMATE.start_i_2 2) InVars {ULTIMATE.start_i=v_ULTIMATE.start_i_2} OutVars{ULTIMATE.start_i=v_ULTIMATE.start_i_2} AuxVars[] AssignedVars[][2], 4:3A:[40] L24-->$Ultimate##0: Formula: (and (= v_threadThread1of1ForFork0_i_6 v_ULTIMATE.start_i_8) (= v_threadThread1of1ForFork0_thidvar0_2 v_ULTIMATE.start_i_8)) InVars {ULTIMATE.start_i=v_ULTIMATE.start_i_8} OutVars{threadThread1of1ForFork0_i=v_threadThread1of1ForFork0_i_6, ULTIMATE.start_i=v_ULTIMATE.start_i_8, threadThread1of1ForFork0_thidvar0=v_threadThread1of1ForFork0_thidvar0_2} AuxVars[] AssignedVars[threadThread1of1ForFork0_i, threadThread1of1ForFork0_thidvar0][6], 5:4A:[25] L24-1-->L22-1: Formula: (= (+ 1 v_ULTIMATE.start_i_4) v_ULTIMATE.start_i_3) InVars {ULTIMATE.start_i=v_ULTIMATE.start_i_4} OutVars{ULTIMATE.start_i=v_ULTIMATE.start_i_3} AuxVars[] AssignedVars[ULTIMATE.start_i][4], 9:5A:[20] L22-1-->L24: Formula: (< v_ULTIMATE.start_i_2 2) InVars {ULTIMATE.start_i=v_ULTIMATE.start_i_2} OutVars{ULTIMATE.start_i=v_ULTIMATE.start_i_2} AuxVars[] AssignedVars[][2], 10:6A:[38] L24-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[][5]][11:7A:[39] ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[][3]] [2023-10-12 17:36:38,689 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2023-10-12 17:36:38,690 INFO L124 PetriNetUnfolderBase]: 0/10 cut-off events. [2023-10-12 17:36:38,690 INFO L125 PetriNetUnfolderBase]: For 1/1 co-relation queries the response was YES. [2023-10-12 17:36:38,690 INFO L72 RabinIsEmpty]: Finished rabinIsEmpty language is not empty [2023-10-12 17:36:38,699 INFO L748 eck$LassoCheckResult]: Stem: 23#[$Ultimate##0]true [45] $Ultimate##0-->L22-1: Formula: (and (= v_x_14 0) (= 0 v_ULTIMATE.start_i_9)) InVars {} OutVars{ULTIMATE.start_i=v_ULTIMATE.start_i_9, x=v_x_14} AuxVars[] AssignedVars[ULTIMATE.start_i, x] 25#[L22-1]true [20] L22-1-->L24: Formula: (< v_ULTIMATE.start_i_2 2) InVars {ULTIMATE.start_i=v_ULTIMATE.start_i_2} OutVars{ULTIMATE.start_i=v_ULTIMATE.start_i_2} AuxVars[] AssignedVars[] 27#[L24]true [40] L24-->$Ultimate##0: Formula: (and (= v_threadThread1of1ForFork0_i_6 v_ULTIMATE.start_i_8) (= v_threadThread1of1ForFork0_thidvar0_2 v_ULTIMATE.start_i_8)) InVars {ULTIMATE.start_i=v_ULTIMATE.start_i_8} OutVars{threadThread1of1ForFork0_i=v_threadThread1of1ForFork0_i_6, ULTIMATE.start_i=v_ULTIMATE.start_i_8, threadThread1of1ForFork0_thidvar0=v_threadThread1of1ForFork0_thidvar0_2} AuxVars[] AssignedVars[threadThread1of1ForFork0_i, threadThread1of1ForFork0_thidvar0] 29#[$Ultimate##0, L24-1]true [25] L24-1-->L22-1: Formula: (= (+ 1 v_ULTIMATE.start_i_4) v_ULTIMATE.start_i_3) InVars {ULTIMATE.start_i=v_ULTIMATE.start_i_4} OutVars{ULTIMATE.start_i=v_ULTIMATE.start_i_3} AuxVars[] AssignedVars[ULTIMATE.start_i] 31#[L22-1, $Ultimate##0]true [20] L22-1-->L24: Formula: (< v_ULTIMATE.start_i_2 2) InVars {ULTIMATE.start_i=v_ULTIMATE.start_i_2} OutVars{ULTIMATE.start_i=v_ULTIMATE.start_i_2} AuxVars[] AssignedVars[] 33#[$Ultimate##0, L24]true [38] L24-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 35#[ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, $Ultimate##0]true [2023-10-12 17:36:38,699 INFO L750 eck$LassoCheckResult]: Loop: 35#[ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, $Ultimate##0]true [39] ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 35#[ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, $Ultimate##0]true [2023-10-12 17:36:38,705 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-10-12 17:36:38,705 INFO L85 PathProgramCache]: Analyzing trace with hash -2099465077, now seen corresponding path program 1 times [2023-10-12 17:36:38,712 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-10-12 17:36:38,714 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1831694751] [2023-10-12 17:36:38,714 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-10-12 17:36:38,715 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-10-12 17:36:38,789 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-10-12 17:36:38,790 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-10-12 17:36:38,800 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-10-12 17:36:38,812 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-10-12 17:36:38,814 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-10-12 17:36:38,814 INFO L85 PathProgramCache]: Analyzing trace with hash 70, now seen corresponding path program 1 times [2023-10-12 17:36:38,814 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-10-12 17:36:38,815 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1019201363] [2023-10-12 17:36:38,815 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-10-12 17:36:38,815 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-10-12 17:36:38,818 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-10-12 17:36:38,818 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-10-12 17:36:38,819 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-10-12 17:36:38,820 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-10-12 17:36:38,821 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-10-12 17:36:38,821 INFO L85 PathProgramCache]: Analyzing trace with hash -658907908, now seen corresponding path program 1 times [2023-10-12 17:36:38,821 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-10-12 17:36:38,821 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [879964438] [2023-10-12 17:36:38,821 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-10-12 17:36:38,822 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-10-12 17:36:38,827 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-10-12 17:36:38,828 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-10-12 17:36:38,831 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-10-12 17:36:38,833 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-10-12 17:36:38,974 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-10-12 17:36:38,974 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-10-12 17:36:38,977 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-10-12 17:36:38,982 WARN L148 chiAutomizerObserver]: 1 thread instances were not sufficient, I will increase this number and restart the analysis [2023-10-12 17:36:38,990 INFO L144 ThreadInstanceAdder]: Constructed 4 joinOtherThreadTransitions. [2023-10-12 17:36:38,993 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 26 places, 24 transitions, 72 flow [2023-10-12 17:36:38,999 INFO L124 PetriNetUnfolderBase]: 2/30 cut-off events. [2023-10-12 17:36:38,999 INFO L125 PetriNetUnfolderBase]: For 7/9 co-relation queries the response was YES. [2023-10-12 17:36:39,000 INFO L83 FinitePrefix]: Finished finitePrefix Result has 45 conditions, 30 events. 2/30 cut-off events. For 7/9 co-relation queries the response was YES. Maximal size of possible extension queue 5. Compared 47 event pairs, 0 based on Foata normal form. 0/24 useless extension candidates. Maximal degree in co-relation 20. Up to 4 conditions per place. [2023-10-12 17:36:39,000 INFO L82 GeneralOperation]: Start removeDead. Operand has 26 places, 24 transitions, 72 flow [2023-10-12 17:36:39,001 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 26 places, 24 transitions, 72 flow [2023-10-12 17:36:39,001 INFO L115 etLargeBlockEncoding]: Petri net LBE is using semantic-based independence relation. [2023-10-12 17:36:39,001 INFO L131 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 26 places, 24 transitions, 72 flow [2023-10-12 17:36:39,001 INFO L113 LiptonReduction]: Starting Lipton reduction on Petri net that has 26 places, 24 transitions, 72 flow [2023-10-12 17:36:39,002 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 26 places, 24 transitions, 72 flow [2023-10-12 17:36:39,006 INFO L124 PetriNetUnfolderBase]: 2/30 cut-off events. [2023-10-12 17:36:39,007 INFO L125 PetriNetUnfolderBase]: For 7/9 co-relation queries the response was YES. [2023-10-12 17:36:39,007 INFO L83 FinitePrefix]: Finished finitePrefix Result has 45 conditions, 30 events. 2/30 cut-off events. For 7/9 co-relation queries the response was YES. Maximal size of possible extension queue 5. Compared 47 event pairs, 0 based on Foata normal form. 0/24 useless extension candidates. Maximal degree in co-relation 20. Up to 4 conditions per place. [2023-10-12 17:36:39,007 INFO L119 LiptonReduction]: Number of co-enabled transitions 136 [2023-10-12 17:36:39,158 INFO L134 LiptonReduction]: Checked pairs total: 252 [2023-10-12 17:36:39,158 INFO L136 LiptonReduction]: Total number of compositions: 8 [2023-10-12 17:36:39,160 INFO L305 stractBuchiCegarLoop]: Interprodecural is true [2023-10-12 17:36:39,160 INFO L306 stractBuchiCegarLoop]: Hoare is false [2023-10-12 17:36:39,161 INFO L307 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2023-10-12 17:36:39,161 INFO L308 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2023-10-12 17:36:39,161 INFO L309 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2023-10-12 17:36:39,161 INFO L310 stractBuchiCegarLoop]: Difference is false [2023-10-12 17:36:39,161 INFO L311 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2023-10-12 17:36:39,162 INFO L315 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == RabinPetriNetCegarLoop ======== [2023-10-12 17:36:39,162 INFO L67 RabinIsEmpty]: Start rabinIsEmpty. Operand has 20 places, 18 transitions, 60 flow [2023-10-12 17:36:39,172 ERROR L47 etriNetUnfolderRabin]: [1:1A:[83] $Ultimate##0-->L22-1: Formula: (and (= v_ULTIMATE.start_i_19 0) (= v_x_43 0)) InVars {} OutVars{ULTIMATE.start_i=v_ULTIMATE.start_i_19, x=v_x_43} AuxVars[] AssignedVars[ULTIMATE.start_i, x][13], 3:2A:[48] L22-1-->L24: Formula: (< v_ULTIMATE.start_i_2 2) InVars {ULTIMATE.start_i=v_ULTIMATE.start_i_2} OutVars{ULTIMATE.start_i=v_ULTIMATE.start_i_2} AuxVars[] AssignedVars[][1], 4:3A:[72] L24-->$Ultimate##0: Formula: (and (= v_threadThread1of2ForFork0_i_6 v_ULTIMATE.start_i_15) (= v_threadThread1of2ForFork0_thidvar0_2 v_ULTIMATE.start_i_15)) InVars {ULTIMATE.start_i=v_ULTIMATE.start_i_15} OutVars{threadThread1of2ForFork0_thidvar0=v_threadThread1of2ForFork0_thidvar0_2, ULTIMATE.start_i=v_ULTIMATE.start_i_15, threadThread1of2ForFork0_i=v_threadThread1of2ForFork0_i_6} AuxVars[] AssignedVars[threadThread1of2ForFork0_thidvar0, threadThread1of2ForFork0_i][10], 5:4A:[53] L24-1-->L22-1: Formula: (= (+ 1 v_ULTIMATE.start_i_4) v_ULTIMATE.start_i_3) InVars {ULTIMATE.start_i=v_ULTIMATE.start_i_4} OutVars{ULTIMATE.start_i=v_ULTIMATE.start_i_3} AuxVars[] AssignedVars[ULTIMATE.start_i][6], 9:5A:[48] L22-1-->L24: Formula: (< v_ULTIMATE.start_i_2 2) InVars {ULTIMATE.start_i=v_ULTIMATE.start_i_2} OutVars{ULTIMATE.start_i=v_ULTIMATE.start_i_2} AuxVars[] AssignedVars[][1], 10:6A:[73] L24-->$Ultimate##0: Formula: (and (= v_threadThread2of2ForFork0_thidvar0_2 v_ULTIMATE.start_i_18) (= v_threadThread2of2ForFork0_i_6 v_ULTIMATE.start_i_18)) InVars {ULTIMATE.start_i=v_ULTIMATE.start_i_18} OutVars{ULTIMATE.start_i=v_ULTIMATE.start_i_18, threadThread2of2ForFork0_thidvar0=v_threadThread2of2ForFork0_thidvar0_2, threadThread2of2ForFork0_i=v_threadThread2of2ForFork0_i_6} AuxVars[] AssignedVars[threadThread2of2ForFork0_thidvar0, threadThread2of2ForFork0_i][11], 12:7A:[53] L24-1-->L22-1: Formula: (= (+ 1 v_ULTIMATE.start_i_4) v_ULTIMATE.start_i_3) InVars {ULTIMATE.start_i=v_ULTIMATE.start_i_4} OutVars{ULTIMATE.start_i=v_ULTIMATE.start_i_3} AuxVars[] AssignedVars[ULTIMATE.start_i][6], 16:8A:[48] L22-1-->L24: Formula: (< v_ULTIMATE.start_i_2 2) InVars {ULTIMATE.start_i=v_ULTIMATE.start_i_2} OutVars{ULTIMATE.start_i=v_ULTIMATE.start_i_2} AuxVars[] AssignedVars[][1], 17:9A:[70] L24-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[][9]][18:10A:[71] ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[][2]] [2023-10-12 17:36:39,173 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2023-10-12 17:36:39,173 INFO L124 PetriNetUnfolderBase]: 0/17 cut-off events. [2023-10-12 17:36:39,173 INFO L125 PetriNetUnfolderBase]: For 5/5 co-relation queries the response was YES. [2023-10-12 17:36:39,173 INFO L72 RabinIsEmpty]: Finished rabinIsEmpty language is not empty [2023-10-12 17:36:39,175 INFO L337 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2023-10-12 17:36:39,175 INFO L67 RabinIsEmpty]: Start rabinIsEmpty. Operand has 20 places, 18 transitions, 60 flow [2023-10-12 17:36:39,178 ERROR L47 etriNetUnfolderRabin]: [1:1A:[83] $Ultimate##0-->L22-1: Formula: (and (= v_ULTIMATE.start_i_19 0) (= v_x_43 0)) InVars {} OutVars{ULTIMATE.start_i=v_ULTIMATE.start_i_19, x=v_x_43} AuxVars[] AssignedVars[ULTIMATE.start_i, x][13], 3:2A:[48] L22-1-->L24: Formula: (< v_ULTIMATE.start_i_2 2) InVars {ULTIMATE.start_i=v_ULTIMATE.start_i_2} OutVars{ULTIMATE.start_i=v_ULTIMATE.start_i_2} AuxVars[] AssignedVars[][1], 4:3A:[72] L24-->$Ultimate##0: Formula: (and (= v_threadThread1of2ForFork0_i_6 v_ULTIMATE.start_i_15) (= v_threadThread1of2ForFork0_thidvar0_2 v_ULTIMATE.start_i_15)) InVars {ULTIMATE.start_i=v_ULTIMATE.start_i_15} OutVars{threadThread1of2ForFork0_thidvar0=v_threadThread1of2ForFork0_thidvar0_2, ULTIMATE.start_i=v_ULTIMATE.start_i_15, threadThread1of2ForFork0_i=v_threadThread1of2ForFork0_i_6} AuxVars[] AssignedVars[threadThread1of2ForFork0_thidvar0, threadThread1of2ForFork0_i][10], 5:4A:[53] L24-1-->L22-1: Formula: (= (+ 1 v_ULTIMATE.start_i_4) v_ULTIMATE.start_i_3) InVars {ULTIMATE.start_i=v_ULTIMATE.start_i_4} OutVars{ULTIMATE.start_i=v_ULTIMATE.start_i_3} AuxVars[] AssignedVars[ULTIMATE.start_i][6], 9:5A:[48] L22-1-->L24: Formula: (< v_ULTIMATE.start_i_2 2) InVars {ULTIMATE.start_i=v_ULTIMATE.start_i_2} OutVars{ULTIMATE.start_i=v_ULTIMATE.start_i_2} AuxVars[] AssignedVars[][1], 10:6A:[73] L24-->$Ultimate##0: Formula: (and (= v_threadThread2of2ForFork0_thidvar0_2 v_ULTIMATE.start_i_18) (= v_threadThread2of2ForFork0_i_6 v_ULTIMATE.start_i_18)) InVars {ULTIMATE.start_i=v_ULTIMATE.start_i_18} OutVars{ULTIMATE.start_i=v_ULTIMATE.start_i_18, threadThread2of2ForFork0_thidvar0=v_threadThread2of2ForFork0_thidvar0_2, threadThread2of2ForFork0_i=v_threadThread2of2ForFork0_i_6} AuxVars[] AssignedVars[threadThread2of2ForFork0_thidvar0, threadThread2of2ForFork0_i][11], 12:7A:[53] L24-1-->L22-1: Formula: (= (+ 1 v_ULTIMATE.start_i_4) v_ULTIMATE.start_i_3) InVars {ULTIMATE.start_i=v_ULTIMATE.start_i_4} OutVars{ULTIMATE.start_i=v_ULTIMATE.start_i_3} AuxVars[] AssignedVars[ULTIMATE.start_i][6], 16:8A:[48] L22-1-->L24: Formula: (< v_ULTIMATE.start_i_2 2) InVars {ULTIMATE.start_i=v_ULTIMATE.start_i_2} OutVars{ULTIMATE.start_i=v_ULTIMATE.start_i_2} AuxVars[] AssignedVars[][1], 17:9A:[70] L24-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[][9]][18:10A:[71] ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[][2]] [2023-10-12 17:36:39,178 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2023-10-12 17:36:39,178 INFO L124 PetriNetUnfolderBase]: 0/17 cut-off events. [2023-10-12 17:36:39,178 INFO L125 PetriNetUnfolderBase]: For 5/5 co-relation queries the response was YES. [2023-10-12 17:36:39,178 INFO L72 RabinIsEmpty]: Finished rabinIsEmpty language is not empty [2023-10-12 17:36:39,179 INFO L748 eck$LassoCheckResult]: Stem: 30#[$Ultimate##0]true [83] $Ultimate##0-->L22-1: Formula: (and (= v_ULTIMATE.start_i_19 0) (= v_x_43 0)) InVars {} OutVars{ULTIMATE.start_i=v_ULTIMATE.start_i_19, x=v_x_43} AuxVars[] AssignedVars[ULTIMATE.start_i, x] 32#[L22-1]true [48] L22-1-->L24: Formula: (< v_ULTIMATE.start_i_2 2) InVars {ULTIMATE.start_i=v_ULTIMATE.start_i_2} OutVars{ULTIMATE.start_i=v_ULTIMATE.start_i_2} AuxVars[] AssignedVars[] 34#[L24]true [72] L24-->$Ultimate##0: Formula: (and (= v_threadThread1of2ForFork0_i_6 v_ULTIMATE.start_i_15) (= v_threadThread1of2ForFork0_thidvar0_2 v_ULTIMATE.start_i_15)) InVars {ULTIMATE.start_i=v_ULTIMATE.start_i_15} OutVars{threadThread1of2ForFork0_thidvar0=v_threadThread1of2ForFork0_thidvar0_2, ULTIMATE.start_i=v_ULTIMATE.start_i_15, threadThread1of2ForFork0_i=v_threadThread1of2ForFork0_i_6} AuxVars[] AssignedVars[threadThread1of2ForFork0_thidvar0, threadThread1of2ForFork0_i] 36#[$Ultimate##0, L24-1]true [53] L24-1-->L22-1: Formula: (= (+ 1 v_ULTIMATE.start_i_4) v_ULTIMATE.start_i_3) InVars {ULTIMATE.start_i=v_ULTIMATE.start_i_4} OutVars{ULTIMATE.start_i=v_ULTIMATE.start_i_3} AuxVars[] AssignedVars[ULTIMATE.start_i] 38#[L22-1, $Ultimate##0]true [48] L22-1-->L24: Formula: (< v_ULTIMATE.start_i_2 2) InVars {ULTIMATE.start_i=v_ULTIMATE.start_i_2} OutVars{ULTIMATE.start_i=v_ULTIMATE.start_i_2} AuxVars[] AssignedVars[] 40#[$Ultimate##0, L24]true [73] L24-->$Ultimate##0: Formula: (and (= v_threadThread2of2ForFork0_thidvar0_2 v_ULTIMATE.start_i_18) (= v_threadThread2of2ForFork0_i_6 v_ULTIMATE.start_i_18)) InVars {ULTIMATE.start_i=v_ULTIMATE.start_i_18} OutVars{ULTIMATE.start_i=v_ULTIMATE.start_i_18, threadThread2of2ForFork0_thidvar0=v_threadThread2of2ForFork0_thidvar0_2, threadThread2of2ForFork0_i=v_threadThread2of2ForFork0_i_6} AuxVars[] AssignedVars[threadThread2of2ForFork0_thidvar0, threadThread2of2ForFork0_i] 42#[$Ultimate##0, $Ultimate##0, L24-1]true [53] L24-1-->L22-1: Formula: (= (+ 1 v_ULTIMATE.start_i_4) v_ULTIMATE.start_i_3) InVars {ULTIMATE.start_i=v_ULTIMATE.start_i_4} OutVars{ULTIMATE.start_i=v_ULTIMATE.start_i_3} AuxVars[] AssignedVars[ULTIMATE.start_i] 44#[L22-1, $Ultimate##0, $Ultimate##0]true [48] L22-1-->L24: Formula: (< v_ULTIMATE.start_i_2 2) InVars {ULTIMATE.start_i=v_ULTIMATE.start_i_2} OutVars{ULTIMATE.start_i=v_ULTIMATE.start_i_2} AuxVars[] AssignedVars[] 46#[$Ultimate##0, $Ultimate##0, L24]true [70] L24-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 48#[$Ultimate##0, $Ultimate##0, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES]true [2023-10-12 17:36:39,179 INFO L750 eck$LassoCheckResult]: Loop: 48#[$Ultimate##0, $Ultimate##0, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES]true [71] ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES-->ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] 48#[$Ultimate##0, $Ultimate##0, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES]true [2023-10-12 17:36:39,179 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-10-12 17:36:39,179 INFO L85 PathProgramCache]: Analyzing trace with hash -1096171577, now seen corresponding path program 1 times [2023-10-12 17:36:39,180 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-10-12 17:36:39,180 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1156616458] [2023-10-12 17:36:39,180 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-10-12 17:36:39,180 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-10-12 17:36:39,188 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-10-12 17:36:39,249 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 7 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-10-12 17:36:39,249 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-10-12 17:36:39,249 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1156616458] [2023-10-12 17:36:39,250 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1156616458] provided 1 perfect and 0 imperfect interpolant sequences [2023-10-12 17:36:39,250 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-10-12 17:36:39,250 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2023-10-12 17:36:39,250 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [778750586] [2023-10-12 17:36:39,251 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-10-12 17:36:39,258 INFO L753 eck$LassoCheckResult]: stem already infeasible [2023-10-12 17:36:39,258 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-10-12 17:36:39,259 INFO L85 PathProgramCache]: Analyzing trace with hash 102, now seen corresponding path program 1 times [2023-10-12 17:36:39,259 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-10-12 17:36:39,259 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [544239702] [2023-10-12 17:36:39,259 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-10-12 17:36:39,259 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-10-12 17:36:39,262 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-10-12 17:36:39,262 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-10-12 17:36:39,263 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-10-12 17:36:39,264 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-10-12 17:36:39,266 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-10-12 17:36:39,287 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2023-10-12 17:36:39,289 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=10, Unknown=0, NotChecked=0, Total=20 [2023-10-12 17:36:39,291 INFO L103 encePairwiseOnDemand]: Start rabinDifferencePairwiseOnDemand. First operand has 20 places, 18 transitions, 60 flow. Second operand has 5 states, 5 states have (on average 1.8) internal successors, (9), 4 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2023-10-12 17:36:39,291 INFO L124 encePairwiseOnDemand]: Subtrahend is not yet constructed. Will not use universal subtrahend loopers optimization. [2023-10-12 17:36:39,292 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2023-10-12 17:36:39,381 INFO L124 PetriNetUnfolderBase]: 41/93 cut-off events. [2023-10-12 17:36:39,381 INFO L125 PetriNetUnfolderBase]: For 12/12 co-relation queries the response was YES. [2023-10-12 17:36:39,383 INFO L83 FinitePrefix]: Finished finitePrefix Result has 210 conditions, 93 events. 41/93 cut-off events. For 12/12 co-relation queries the response was YES. Maximal size of possible extension queue 9. Compared 235 event pairs, 0 based on Foata normal form. 0/64 useless extension candidates. Maximal degree in co-relation 67. Up to 63 conditions per place. [2023-10-12 17:36:39,386 INFO L140 encePairwiseOnDemand]: 28/32 looper letters, 21 selfloop transitions, 5 changer transitions 0/26 dead transitions. [2023-10-12 17:36:39,386 INFO L145 encePairwiseOnDemand]: Finished rabinDifferencePairwiseOnDemand. Result has 23 places, 26 transitions, 124 flow [2023-10-12 17:36:39,388 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2023-10-12 17:36:39,393 INFO L430 stractBuchiCegarLoop]: Abstraction has has 23 places, 26 transitions, 124 flow [2023-10-12 17:36:39,394 INFO L337 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2023-10-12 17:36:39,394 INFO L67 RabinIsEmpty]: Start rabinIsEmpty. Operand has 23 places, 26 transitions, 124 flow [2023-10-12 17:36:39,419 INFO L124 PetriNetUnfolderBase]: 41/93 cut-off events. [2023-10-12 17:36:39,420 INFO L125 PetriNetUnfolderBase]: For 12/12 co-relation queries the response was YES. [2023-10-12 17:36:39,420 INFO L72 RabinIsEmpty]: Finished rabinIsEmpty language is empty [2023-10-12 17:36:39,425 INFO L201 PluginConnector]: Adding new model single_assertion_test.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer CFG 12.10 05:36:39 BoogieIcfgContainer [2023-10-12 17:36:39,426 INFO L131 PluginConnector]: ------------------------ END BuchiAutomizer---------------------------- [2023-10-12 17:36:39,432 INFO L158 Benchmark]: Toolchain (without parser) took 1307.81ms. Allocated memory was 203.4MB in the beginning and 321.9MB in the end (delta: 118.5MB). Free memory was 156.2MB in the beginning and 266.1MB in the end (delta: -110.0MB). Peak memory consumption was 8.4MB. Max. memory is 8.0GB. [2023-10-12 17:36:39,435 INFO L158 Benchmark]: Boogie PL CUP Parser took 0.26ms. Allocated memory is still 203.4MB. Free memory is still 157.2MB. There was no memory consumed. Max. memory is 8.0GB. [2023-10-12 17:36:39,436 INFO L158 Benchmark]: Boogie Procedure Inliner took 25.50ms. Allocated memory is still 203.4MB. Free memory was 156.2MB in the beginning and 154.5MB in the end (delta: 1.6MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2023-10-12 17:36:39,440 INFO L158 Benchmark]: Boogie Preprocessor took 16.31ms. Allocated memory is still 203.4MB. Free memory was 154.5MB in the beginning and 153.6MB in the end (delta: 943.2kB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2023-10-12 17:36:39,441 INFO L158 Benchmark]: RCFGBuilder took 182.52ms. Allocated memory is still 203.4MB. Free memory was 153.4MB in the beginning and 144.8MB in the end (delta: 8.7MB). Peak memory consumption was 9.4MB. Max. memory is 8.0GB. [2023-10-12 17:36:39,441 INFO L158 Benchmark]: BuchiAutomizer took 1076.82ms. Allocated memory was 203.4MB in the beginning and 321.9MB in the end (delta: 118.5MB). Free memory was 144.6MB in the beginning and 266.1MB in the end (delta: -121.5MB). There was no memory consumed. Max. memory is 8.0GB. [2023-10-12 17:36:39,442 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * Boogie PL CUP Parser took 0.26ms. Allocated memory is still 203.4MB. Free memory is still 157.2MB. There was no memory consumed. Max. memory is 8.0GB. * Boogie Procedure Inliner took 25.50ms. Allocated memory is still 203.4MB. Free memory was 156.2MB in the beginning and 154.5MB in the end (delta: 1.6MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * Boogie Preprocessor took 16.31ms. Allocated memory is still 203.4MB. Free memory was 154.5MB in the beginning and 153.6MB in the end (delta: 943.2kB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 182.52ms. Allocated memory is still 203.4MB. Free memory was 153.4MB in the beginning and 144.8MB in the end (delta: 8.7MB). Peak memory consumption was 9.4MB. Max. memory is 8.0GB. * BuchiAutomizer took 1076.82ms. Allocated memory was 203.4MB in the beginning and 321.9MB in the end (delta: 118.5MB). Free memory was 144.6MB in the beginning and 266.1MB in the end (delta: -121.5MB). There was no memory consumed. 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 1 terminating modules (1 trivial, 0 deterministic, 0 nondeterministic). 1 modules have a trivial ranking function, the largest among these consists of 5 locations. - StatisticsResult: Timing statistics BüchiAutomizer plugin needed 0.6s and 3 iterations. TraceHistogramMax:0. Analysis of lassos took 0.3s. Construction of modules took 0.0s. Büchi inclusion checks took 0.0s. Highest rank in rank-based complementation 0. Minimization of det autom 0. Minimization of nondet autom 0. Automata minimization No data available. Non-live state removal took 0.0s Buchi closure took 0.0s. Biggest automaton had -1 states and ocurred in iteration -1. Nontrivial modules had stage [0, 0, 0, 0, 0]. InterpolantCoveringCapabilityFinite: 0/0 InterpolantCoveringCapabilityBuchi: 0/0 HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 23 SdHoareTripleChecker+Valid, 0.1s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 23 mSDsluCounter, 1 SdHoareTripleChecker+Invalid, 0.0s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 0 mSDsCounter, 3 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 37 IncrementalHoareTripleChecker+Invalid, 40 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 3 mSolverCounterUnsat, 1 mSDtfsCounter, 37 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown LassoAnalysisResults: nont1 unkn0 SFLI0 SFLT0 conc0 concLT0 SILN1 SILU0 SILI0 SILT0 lasso0 LassoPreprocessingBenchmarks: LassoTerminationAnalysisBenchmarks: not availableLassoTerminationAnalysisBenchmarks: LassoNonterminationAnalysisSatFixpoint: 0 LassoNonterminationAnalysisSatUnbounded: 0 LassoNonterminationAnalysisUnsat: 0 LassoNonterminationAnalysisUnknown: 0 LassoNonterminationAnalysisTime: 0.0s InitialAbstractionConstructionTime: 0.3s - TerminationAnalysisResult: Termination proven Buchi Automizer proved that your program is terminating * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer: - StatisticsResult: PetriNetLargeBlockEncoding benchmarks Lipton Reduction Statistics: ReductionTime: 0.1s, 15 PlacesBefore, 12 PlacesAfterwards, 13 TransitionsBefore, 10 TransitionsAfterwards, 40 CoEnabledTransitionPairs, 2 FixpointIterations, 1 TrivialSequentialCompositions, 3 ConcurrentSequentialCompositions, 0 TrivialYvCompositions, 0 ConcurrentYvCompositions, 0 ChoiceCompositions, 4 TotalNumberOfCompositions, 75 MoverChecksTotal, Independence Relation Statistics: CachedIndependenceRelation.Independence Queries: [ total: 75, independent: 75, independent conditional: 0, independent unconditional: 75, dependent: 0, dependent conditional: 0, dependent unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , CachedIndependenceRelation.Statistics on underlying relation: UnionIndependenceRelation.Independence Queries: [ total: 31, independent: 31, independent conditional: 0, independent unconditional: 31, dependent: 0, dependent conditional: 0, dependent unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , UnionIndependenceRelation.Statistics on underlying relations: [ SyntacticIndependenceRelation.Independence Queries: [ total: 31, independent: 31, independent conditional: 0, independent unconditional: 31, dependent: 0, dependent conditional: 0, dependent unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticIndependenceRelation.Independence Queries: [ total: 0, independent: 0, independent conditional: 0, independent unconditional: 0, dependent: 0, dependent conditional: 0, dependent unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticIndependenceRelation.Query Time [ms]: [ total: 0, independent: 0, independent conditional: 0, independent unconditional: 0, dependent: 0, dependent conditional: 0, dependent unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] ], Cache Queries: [ total: 75, independent: 44, independent conditional: 0, independent unconditional: 44, dependent: 0, dependent conditional: 0, dependent unconditional: 0, unknown: 31, unknown conditional: 0, unknown unconditional: 31] , Statistics on independence cache: Total cache size (in pairs): 13, Positive cache size: 13, Positive conditional cache size: 0, Positive unconditional cache size: 13, Negative cache size: 0, Negative conditional cache size: 0, Negative unconditional cache size: 0, Unknown cache size: 0, Unknown conditional cache size: 0, Unknown unconditional cache size: 0 - StatisticsResult: PetriNetLargeBlockEncoding benchmarks Lipton Reduction Statistics: ReductionTime: 0.2s, 26 PlacesBefore, 20 PlacesAfterwards, 24 TransitionsBefore, 18 TransitionsAfterwards, 136 CoEnabledTransitionPairs, 2 FixpointIterations, 2 TrivialSequentialCompositions, 6 ConcurrentSequentialCompositions, 0 TrivialYvCompositions, 0 ConcurrentYvCompositions, 0 ChoiceCompositions, 8 TotalNumberOfCompositions, 252 MoverChecksTotal, Independence Relation Statistics: CachedIndependenceRelation.Independence Queries: [ total: 252, independent: 252, independent conditional: 0, independent unconditional: 252, dependent: 0, dependent conditional: 0, dependent unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , CachedIndependenceRelation.Statistics on underlying relation: UnionIndependenceRelation.Independence Queries: [ total: 97, independent: 97, independent conditional: 0, independent unconditional: 97, dependent: 0, dependent conditional: 0, dependent unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , UnionIndependenceRelation.Statistics on underlying relations: [ SyntacticIndependenceRelation.Independence Queries: [ total: 97, independent: 93, independent conditional: 0, independent unconditional: 93, dependent: 4, dependent conditional: 0, dependent unconditional: 4, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticIndependenceRelation.Independence Queries: [ total: 4, independent: 4, independent conditional: 0, independent unconditional: 4, dependent: 0, dependent conditional: 0, dependent unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticIndependenceRelation.Query Time [ms]: [ total: 23, independent: 23, independent conditional: 0, independent unconditional: 23, dependent: 0, dependent conditional: 0, dependent unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] ], Cache Queries: [ total: 252, independent: 155, independent conditional: 0, independent unconditional: 155, dependent: 0, dependent conditional: 0, dependent unconditional: 0, unknown: 97, unknown conditional: 0, unknown unconditional: 97] , Statistics on independence cache: Total cache size (in pairs): 35, Positive cache size: 35, Positive conditional cache size: 0, Positive unconditional cache size: 35, Negative cache size: 0, Negative conditional cache size: 0, Negative unconditional cache size: 0, Unknown cache size: 0, Unknown conditional cache size: 0, Unknown unconditional cache size: 0 RESULT: Ultimate proved your program to be correct! [2023-10-12 17:36:39,466 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...