/root/.sdkman/candidates/java/21.0.5-tem/bin/java -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata ./data -s ../../../trunk/examples/settings/gemcutter/Termination.epf -tc ../../../trunk/examples/toolchains/BuchiAutomizerCInline.xml -i ../../../trunk/examples/svcomp/weaver/popl20-proofs-counter-add-4-semi-Q67.wvr.c -------------------------------------------------------------------------------- This is Ultimate 0.3.0-wip.dk.ample-buchi-a4216cd-m [2025-04-26 18:32:03,637 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-04-26 18:32:03,693 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/settings/gemcutter/Termination.epf [2025-04-26 18:32:03,698 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-04-26 18:32:03,698 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-04-26 18:32:03,698 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.Check unreachability of error function in SV-COMP mode [2025-04-26 18:32:03,698 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.Translation Mode: [2025-04-26 18:32:03,718 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-04-26 18:32:03,719 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-04-26 18:32:03,719 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-04-26 18:32:03,720 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-04-26 18:32:03,720 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-04-26 18:32:03,720 INFO L153 SettingsManager]: * Use SBE=true [2025-04-26 18:32:03,720 INFO L151 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2025-04-26 18:32:03,720 INFO L153 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2025-04-26 18:32:03,720 INFO L153 SettingsManager]: * Use old map elimination=false [2025-04-26 18:32:03,720 INFO L153 SettingsManager]: * Use external solver (rank synthesis)=false [2025-04-26 18:32:03,720 INFO L153 SettingsManager]: * Use only trivial implications for array writes=true [2025-04-26 18:32:03,720 INFO L153 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2025-04-26 18:32:03,720 INFO L153 SettingsManager]: * Automaton type for concurrent programs=PARTIAL_ORDER_BA [2025-04-26 18:32:03,720 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-04-26 18:32:03,720 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2025-04-26 18:32:03,721 INFO L153 SettingsManager]: * sizeof long=4 [2025-04-26 18:32:03,721 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-04-26 18:32:03,721 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-04-26 18:32:03,721 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-04-26 18:32:03,721 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2025-04-26 18:32:03,721 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2025-04-26 18:32:03,721 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2025-04-26 18:32:03,721 INFO L153 SettingsManager]: * sizeof long double=12 [2025-04-26 18:32:03,721 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-04-26 18:32:03,721 INFO L153 SettingsManager]: * Assume nondeterminstic values are in range=false [2025-04-26 18:32:03,721 INFO L153 SettingsManager]: * Use constant arrays=true [2025-04-26 18:32:03,721 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2025-04-26 18:32:03,721 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-04-26 18:32:03,721 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -smt2 -in -t:4000 [2025-04-26 18:32:03,722 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-04-26 18:32:03,722 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-04-26 18:32:03,722 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-04-26 18:32:03,722 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-04-26 18:32:03,722 INFO L153 SettingsManager]: * Use conditional POR in concurrent analysis=false [2025-04-26 18:32:03,722 INFO L151 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2025-04-26 18:32:03,722 INFO L153 SettingsManager]: * TransformationType=MODULO_NEIGHBOR [2025-04-26 18:32:03,943 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-04-26 18:32:03,948 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-04-26 18:32:03,951 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-04-26 18:32:03,952 INFO L270 PluginConnector]: Initializing CDTParser... [2025-04-26 18:32:03,952 INFO L274 PluginConnector]: CDTParser initialized [2025-04-26 18:32:03,953 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/svcomp/weaver/popl20-proofs-counter-add-4-semi-Q67.wvr.c [2025-04-26 18:32:05,264 INFO L538 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/3cb856d93/ebfc94fdf93542d7aecf4ccf04c0612e/FLAGf044aa8ab [2025-04-26 18:32:05,470 INFO L389 CDTParser]: Found 1 translation units. [2025-04-26 18:32:05,476 INFO L178 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/weaver/popl20-proofs-counter-add-4-semi-Q67.wvr.c [2025-04-26 18:32:05,486 INFO L432 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/3cb856d93/ebfc94fdf93542d7aecf4ccf04c0612e/FLAGf044aa8ab [2025-04-26 18:32:06,314 INFO L440 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/3cb856d93/ebfc94fdf93542d7aecf4ccf04c0612e [2025-04-26 18:32:06,316 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-04-26 18:32:06,317 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2025-04-26 18:32:06,319 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-04-26 18:32:06,319 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-04-26 18:32:06,323 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-04-26 18:32:06,323 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 26.04 06:32:06" (1/1) ... [2025-04-26 18:32:06,324 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@3b1f0049 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.04 06:32:06, skipping insertion in model container [2025-04-26 18:32:06,324 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 26.04 06:32:06" (1/1) ... [2025-04-26 18:32:06,341 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-04-26 18:32:06,528 WARN L116 LibraryModelHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/weaver/popl20-proofs-counter-add-4-semi-Q67.wvr.c[2663,2676] [2025-04-26 18:32:06,536 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-04-26 18:32:06,545 INFO L200 MainTranslator]: Completed pre-run [2025-04-26 18:32:06,580 WARN L116 LibraryModelHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/weaver/popl20-proofs-counter-add-4-semi-Q67.wvr.c[2663,2676] [2025-04-26 18:32:06,581 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-04-26 18:32:06,597 INFO L204 MainTranslator]: Completed translation [2025-04-26 18:32:06,598 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.04 06:32:06 WrapperNode [2025-04-26 18:32:06,598 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-04-26 18:32:06,599 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-04-26 18:32:06,599 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-04-26 18:32:06,599 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-04-26 18:32:06,605 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.04 06:32:06" (1/1) ... [2025-04-26 18:32:06,619 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.04 06:32:06" (1/1) ... [2025-04-26 18:32:06,637 INFO L138 Inliner]: procedures = 21, calls = 22, calls flagged for inlining = 6, calls inlined = 6, statements flattened = 104 [2025-04-26 18:32:06,638 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-04-26 18:32:06,638 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-04-26 18:32:06,638 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-04-26 18:32:06,638 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-04-26 18:32:06,646 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.04 06:32:06" (1/1) ... [2025-04-26 18:32:06,646 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.04 06:32:06" (1/1) ... [2025-04-26 18:32:06,648 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.04 06:32:06" (1/1) ... [2025-04-26 18:32:06,648 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.04 06:32:06" (1/1) ... [2025-04-26 18:32:06,653 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.04 06:32:06" (1/1) ... [2025-04-26 18:32:06,654 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.04 06:32:06" (1/1) ... [2025-04-26 18:32:06,661 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.04 06:32:06" (1/1) ... [2025-04-26 18:32:06,665 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.04 06:32:06" (1/1) ... [2025-04-26 18:32:06,666 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.04 06:32:06" (1/1) ... [2025-04-26 18:32:06,669 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-04-26 18:32:06,670 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2025-04-26 18:32:06,670 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2025-04-26 18:32:06,670 INFO L274 PluginConnector]: RCFGBuilder initialized [2025-04-26 18:32:06,670 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.04 06:32:06" (1/1) ... [2025-04-26 18:32:06,674 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -smt2 -in -t:4000 [2025-04-26 18:32:06,687 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:06,703 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:06,715 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2025-04-26 18:32:06,738 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-04-26 18:32:06,738 INFO L130 BoogieDeclarations]: Found specification of procedure thread1 [2025-04-26 18:32:06,738 INFO L138 BoogieDeclarations]: Found implementation of procedure thread1 [2025-04-26 18:32:06,738 INFO L130 BoogieDeclarations]: Found specification of procedure thread2 [2025-04-26 18:32:06,738 INFO L138 BoogieDeclarations]: Found implementation of procedure thread2 [2025-04-26 18:32:06,738 INFO L130 BoogieDeclarations]: Found specification of procedure thread3 [2025-04-26 18:32:06,738 INFO L138 BoogieDeclarations]: Found implementation of procedure thread3 [2025-04-26 18:32:06,738 INFO L130 BoogieDeclarations]: Found specification of procedure thread4 [2025-04-26 18:32:06,738 INFO L138 BoogieDeclarations]: Found implementation of procedure thread4 [2025-04-26 18:32:06,739 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2025-04-26 18:32:06,739 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2025-04-26 18:32:06,739 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2025-04-26 18:32:06,739 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-04-26 18:32:06,739 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-04-26 18:32:06,740 WARN L203 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement. [2025-04-26 18:32:06,826 INFO L234 CfgBuilder]: Building ICFG [2025-04-26 18:32:06,827 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2025-04-26 18:32:07,038 INFO L279 CfgBuilder]: Omitted future-live optimization because the input is a concurrent program. [2025-04-26 18:32:07,038 INFO L283 CfgBuilder]: Performing block encoding [2025-04-26 18:32:07,083 INFO L307 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-04-26 18:32:07,083 INFO L312 CfgBuilder]: Removed 0 assume(true) statements. [2025-04-26 18:32:07,084 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 26.04 06:32:07 BoogieIcfgContainer [2025-04-26 18:32:07,084 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2025-04-26 18:32:07,086 INFO L112 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2025-04-26 18:32:07,086 INFO L270 PluginConnector]: Initializing BuchiAutomizer... [2025-04-26 18:32:07,090 INFO L274 PluginConnector]: BuchiAutomizer initialized [2025-04-26 18:32:07,091 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2025-04-26 18:32:07,091 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "CDTParser AST 26.04 06:32:06" (1/3) ... [2025-04-26 18:32:07,092 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@3bad2145 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 26.04 06:32:07, skipping insertion in model container [2025-04-26 18:32:07,092 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2025-04-26 18:32:07,092 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.04 06:32:06" (2/3) ... [2025-04-26 18:32:07,092 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@3bad2145 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 26.04 06:32:07, skipping insertion in model container [2025-04-26 18:32:07,092 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2025-04-26 18:32:07,092 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 26.04 06:32:07" (3/3) ... [2025-04-26 18:32:07,093 INFO L376 chiAutomizerObserver]: Analyzing ICFG popl20-proofs-counter-add-4-semi-Q67.wvr.c [2025-04-26 18:32:07,168 INFO L143 ThreadInstanceAdder]: Constructed 4 joinOtherThreadTransitions. [2025-04-26 18:32:07,203 INFO L125 denceProviderFactory]: Independence Relation #1: [IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-04-26 18:32:07,203 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 [2025-04-26 18:32:07,203 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:07,205 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:07,206 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 (2)] Waiting until timeout for monitored process [2025-04-26 18:32:07,281 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 118 places, 115 transitions, 258 flow [2025-04-26 18:32:07,308 INFO L116 PetriNetUnfolderBase]: 6/107 cut-off events. [2025-04-26 18:32:07,309 INFO L117 PetriNetUnfolderBase]: For 4/4 co-relation queries the response was YES. [2025-04-26 18:32:07,312 INFO L83 FinitePrefix]: Finished finitePrefix Result has 124 conditions, 107 events. 6/107 cut-off events. For 4/4 co-relation queries the response was YES. Maximal size of possible extension queue 3. Compared 52 event pairs, 0 based on Foata normal form. 0/100 useless extension candidates. Maximal degree in co-relation 86. Up to 2 conditions per place. [2025-04-26 18:32:07,313 INFO L82 GeneralOperation]: Start removeDead. Operand has 118 places, 115 transitions, 258 flow [2025-04-26 18:32:07,319 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 114 places, 107 transitions, 238 flow [2025-04-26 18:32:07,320 INFO L84 lAbstractionProvider]: Constructed initial Petri net abstraction that has has 114 places, 107 transitions, 238 flow [2025-04-26 18:32:07,320 INFO L113 iNet2FiniteAutomaton]: Start petriNet2FiniteAutomaton. Operand has 114 places, 107 transitions, 238 flow [2025-04-26 18:32:07,538 INFO L135 iNet2FiniteAutomaton]: Finished petriNet2FiniteAutomaton. Result has 5752 states, 5750 states have (on average 4.3638260869565215) internal successors, (in total 25092), 5751 states have internal predecessors, (25092), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:07,561 INFO L171 actionProvider$Eager]: Constructed initial Büchi automaton abstraction (from Petri net) that has 5752 states, 5750 states have (on average 4.3638260869565215) internal successors, (in total 25092), 5751 states have internal predecessors, (25092), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:07,563 INFO L135 AmpleReduction]: Starting ample reduction [2025-04-26 18:32:08,070 WARN L140 AmpleReduction]: Number of pruned transitions: 6201 [2025-04-26 18:32:08,071 WARN L141 AmpleReduction]: Loop nodes with "changing loop node status": 0 [2025-04-26 18:32:08,071 WARN L142 AmpleReduction]: Number of trivial sets caused by loops: 879 [2025-04-26 18:32:08,071 WARN L143 AmpleReduction]: Number of not loop caused trivial ample sets:102 [2025-04-26 18:32:08,071 WARN L144 AmpleReduction]: Number of initially assigned non-trivial ample sets:2032 [2025-04-26 18:32:08,071 WARN L145 AmpleReduction]: Times succ was already a loop node:1603 [2025-04-26 18:32:08,072 WARN L146 AmpleReduction]: Times some other node on the cycle already had a trivial ample set:108 [2025-04-26 18:32:08,072 INFO L149 AmpleReduction]: Finished ample reduction [2025-04-26 18:32:08,079 INFO L136 dAbstractionProvider]: Constructed initial ample set-reduced NBA abstraction that has 3014 states, 3012 states have (on average 2.2234395750332006) internal successors, (in total 6697), 3013 states have internal predecessors, (6697), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:08,093 INFO L306 stractBuchiCegarLoop]: Interprodecural is true [2025-04-26 18:32:08,093 INFO L307 stractBuchiCegarLoop]: Hoare is None [2025-04-26 18:32:08,093 INFO L308 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2025-04-26 18:32:08,094 INFO L309 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2025-04-26 18:32:08,094 INFO L310 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2025-04-26 18:32:08,094 INFO L311 stractBuchiCegarLoop]: Difference is false [2025-04-26 18:32:08,094 INFO L312 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2025-04-26 18:32:08,094 INFO L316 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2025-04-26 18:32:08,106 INFO L73 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 3014 states, 3012 states have (on average 2.2234395750332006) internal successors, (in total 6697), 3013 states have internal predecessors, (6697), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:08,179 INFO L131 ngComponentsAnalysis]: Automaton has 602 accepting balls. 1823 [2025-04-26 18:32:08,179 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-04-26 18:32:08,179 INFO L120 BuchiIsEmpty]: Starting construction of run [2025-04-26 18:32:08,188 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-04-26 18:32:08,188 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1] [2025-04-26 18:32:08,188 INFO L340 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2025-04-26 18:32:08,193 INFO L73 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 3014 states, 3012 states have (on average 2.2234395750332006) internal successors, (in total 6697), 3013 states have internal predecessors, (6697), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:08,222 INFO L131 ngComponentsAnalysis]: Automaton has 602 accepting balls. 1823 [2025-04-26 18:32:08,222 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-04-26 18:32:08,222 INFO L120 BuchiIsEmpty]: Starting construction of run [2025-04-26 18:32:08,223 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-04-26 18:32:08,224 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1] [2025-04-26 18:32:08,231 INFO L752 eck$LassoCheckResult]: Stem: "[237] $Ultimate##0-->L-1: Formula: (= (select |v_#valid_1| 0) 0) InVars {#valid=|v_#valid_1|} OutVars{#valid=|v_#valid_1|} AuxVars[] AssignedVars[]" "[241] L-1-->L21: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[]" "[283] L21-->L21-1: Formula: (and (= (select |v_#valid_2| 1) 1) (= 2 (select |v_#length_1| 1))) InVars {#length=|v_#length_1|, #valid=|v_#valid_2|} OutVars{#length=|v_#length_1|, #valid=|v_#valid_2|} AuxVars[] AssignedVars[]" "[303] L21-1-->L21-2: Formula: (= 48 (select (select |v_#memory_int_1| 1) 0)) InVars {#memory_int=|v_#memory_int_1|} OutVars{#memory_int=|v_#memory_int_1|} AuxVars[] AssignedVars[]" "[247] L21-2-->L21-3: Formula: (= (select (select |v_#memory_int_2| 1) 1) 0) InVars {#memory_int=|v_#memory_int_2|} OutVars{#memory_int=|v_#memory_int_2|} AuxVars[] AssignedVars[]" "[277] L21-3-->L21-4: Formula: (and (= 43 (select |v_#length_2| 2)) (= (select |v_#valid_3| 2) 1)) InVars {#length=|v_#length_2|, #valid=|v_#valid_3|} OutVars{#length=|v_#length_2|, #valid=|v_#valid_3|} AuxVars[] AssignedVars[]" "[261] L21-4-->L37: Formula: (= v_~i1~0_5 0) InVars {} OutVars{~i1~0=v_~i1~0_5} AuxVars[] AssignedVars[~i1~0]" "[255] L37-->L37-1: Formula: (= v_~i2~0_5 0) InVars {} OutVars{~i2~0=v_~i2~0_5} AuxVars[] AssignedVars[~i2~0]" "[256] L37-1-->L37-2: Formula: (= 0 v_~N1~0_3) InVars {} OutVars{~N1~0=v_~N1~0_3} AuxVars[] AssignedVars[~N1~0]" "[221] L37-2-->L37-3: Formula: (= 0 v_~N2~0_3) InVars {} OutVars{~N2~0=v_~N2~0_3} AuxVars[] AssignedVars[~N2~0]" "[238] L37-3-->L37-4: Formula: (= v_~counter~0_9 0) InVars {} OutVars{~counter~0=v_~counter~0_9} AuxVars[] AssignedVars[~counter~0]" "[297] L37-4-->L37-5: Formula: (= v_~j1~0_5 0) InVars {} OutVars{~j1~0=v_~j1~0_5} AuxVars[] AssignedVars[~j1~0]" "[271] L37-5-->L37-6: Formula: (= v_~j2~0_1 0) InVars {} OutVars{~j2~0=v_~j2~0_1} AuxVars[] AssignedVars[~j2~0]" "[264] L37-6-->L37-7: Formula: (= 0 v_~M1~0_3) InVars {} OutVars{~M1~0=v_~M1~0_3} AuxVars[] AssignedVars[~M1~0]" "[278] L37-7-->L-1-1: Formula: (= 0 v_~M2~0_1) InVars {} OutVars{~M2~0=v_~M2~0_1} AuxVars[] AssignedVars[~M2~0]" "[309] L-1-1-->L-1-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1]" "[310] L-1-2-->L86: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t4~0#1=|v_ULTIMATE.start_main_~t4~0#1_2|, ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_2|, ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_2|, ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_2|, ULTIMATE.start_main_~t3~0#1=|v_ULTIMATE.start_main_~t3~0#1_2|, ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_2|, ULTIMATE.start_main_#t~nondet18#1=|v_ULTIMATE.start_main_#t~nondet18#1_2|, ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_2|, ULTIMATE.start_main_#t~pre17#1=|v_ULTIMATE.start_main_#t~pre17#1_2|, ULTIMATE.start_main_#t~nondet14#1=|v_ULTIMATE.start_main_#t~nondet14#1_2|, ULTIMATE.start_main_#t~pre19#1=|v_ULTIMATE.start_main_#t~pre19#1_2|, ULTIMATE.start_main_~t1~0#1=|v_ULTIMATE.start_main_~t1~0#1_2|, ULTIMATE.start_main_#t~nondet16#1=|v_ULTIMATE.start_main_#t~nondet16#1_2|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_2|, ULTIMATE.start_main_#t~nondet20#1=|v_ULTIMATE.start_main_#t~nondet20#1_2|, ULTIMATE.start_main_~t2~0#1=|v_ULTIMATE.start_main_~t2~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t4~0#1, ULTIMATE.start_main_#t~pre13#1, ULTIMATE.start_main_#t~nondet10#1, ULTIMATE.start_main_#t~nondet9#1, ULTIMATE.start_main_~t3~0#1, ULTIMATE.start_main_#t~pre15#1, ULTIMATE.start_main_#t~nondet18#1, ULTIMATE.start_main_#t~nondet12#1, ULTIMATE.start_main_#t~pre17#1, ULTIMATE.start_main_#t~nondet14#1, ULTIMATE.start_main_#t~pre19#1, ULTIMATE.start_main_~t1~0#1, ULTIMATE.start_main_#t~nondet16#1, ULTIMATE.start_main_#t~nondet11#1, ULTIMATE.start_main_#t~nondet20#1, ULTIMATE.start_main_~t2~0#1]" "[214] L86-->L86-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t1~0#1=|v_ULTIMATE.start_main_~t1~0#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t1~0#1]" "[269] L86-1-->L86-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t2~0#1=|v_ULTIMATE.start_main_~t2~0#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t2~0#1]" "[319] L86-2-->L86-3: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t3~0#1=|v_ULTIMATE.start_main_~t3~0#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t3~0#1]" "[250] L86-3-->L88: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t4~0#1=|v_ULTIMATE.start_main_~t4~0#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t4~0#1]" "[282] L88-->L88-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet9#1]" "[302] L88-1-->L88-2: Formula: (= |v_ULTIMATE.start_main_#t~nondet9#1_4| v_~N1~0_4) InVars {ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_4|} OutVars{ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_4|, ~N1~0=v_~N1~0_4} AuxVars[] AssignedVars[~N1~0]" "[218] L88-2-->L89: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet9#1]" "[267] L89-->L89-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet10#1]" "[249] L89-1-->L89-2: Formula: (= |v_ULTIMATE.start_main_#t~nondet10#1_4| v_~N2~0_4) InVars {ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_4|} OutVars{ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_4|, ~N2~0=v_~N2~0_4} AuxVars[] AssignedVars[~N2~0]" "[273] L89-2-->L90: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet10#1]" "[306] L90-->L90-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet11#1]" "[228] L90-1-->L90-2: Formula: (= |v_ULTIMATE.start_main_#t~nondet11#1_4| v_~M1~0_4) InVars {ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_4|} OutVars{ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_4|, ~M1~0=v_~M1~0_4} AuxVars[] AssignedVars[~M1~0]" "[239] L90-2-->L91: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet11#1]" "[229] L91-->L91-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet12#1]" "[240] L91-1-->L91-2: Formula: (= |v_ULTIMATE.start_main_#t~nondet12#1_4| v_~M2~0_2) InVars {ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_4|} OutVars{~M2~0=v_~M2~0_2, ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_4|} AuxVars[] AssignedVars[~M2~0]" "[265] L91-2-->L92: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet12#1]" "[298] L92-->L92-1: Formula: (= (ite (and (= v_~M1~0_5 v_~N1~0_5) (= v_~N1~0_5 v_~N2~0_5) (= v_~M2~0_3 v_~N1~0_5)) 1 0) |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_4|) InVars {~M1~0=v_~M1~0_5, ~N1~0=v_~N1~0_5, ~N2~0=v_~N2~0_5, ~M2~0=v_~M2~0_3} OutVars{~M1~0=v_~M1~0_5, ~N1~0=v_~N1~0_5, ~N2~0=v_~N2~0_5, ~M2~0=v_~M2~0_3, ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_#in~cond#1]" "[292] L92-1-->L33: Formula: true InVars {} OutVars{ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_~cond#1]" "[226] L33-->L34: Formula: (= |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_5| |v_ULTIMATE.start_assume_abort_if_not_~cond#1_7|) InVars {ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_5|} OutVars{ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_7|, ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_~cond#1]" "[235] L34-->L33-1: Formula: (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_9| 0)) InVars {ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_9|} OutVars{ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_9|} AuxVars[] AssignedVars[]" "[251] L33-1-->L92-2: Formula: true InVars {} OutVars{ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_10|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_~cond#1]" "[259] L92-2-->L95: Formula: true InVars {} OutVars{ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_#in~cond#1]" "[279] L95-->L95-1: Formula: (= |v_ULTIMATE.start_main_#t~pre13#1_3| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre13#1]" "[289] L95-1-->L95-2: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks]" "[290] L95-2-->L95-3: Formula: (= |v_ULTIMATE.start_main_~t1~0#1_4| |v_ULTIMATE.start_main_#t~pre13#1_4|) InVars {ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_4|} OutVars{ULTIMATE.start_main_~t1~0#1=|v_ULTIMATE.start_main_~t1~0#1_4|, ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t1~0#1]" "[352] L95-3-->$Ultimate##0: Formula: (and (= |v_thread1Thread1of1ForFork2_#in~_argptr.offset_4| 0) (= |v_ULTIMATE.start_main_#t~pre13#1_7| v_thread1Thread1of1ForFork2_thidvar0_2) (= 0 v_thread1Thread1of1ForFork2_thidvar1_2) (= |v_thread1Thread1of1ForFork2_#in~_argptr.base_4| 0)) InVars {ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_7|} OutVars{thread1Thread1of1ForFork2_thidvar1=v_thread1Thread1of1ForFork2_thidvar1_2, thread1Thread1of1ForFork2_thidvar0=v_thread1Thread1of1ForFork2_thidvar0_2, thread1Thread1of1ForFork2_#res.base=|v_thread1Thread1of1ForFork2_#res.base_4|, ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_7|, thread1Thread1of1ForFork2_#t~post1=|v_thread1Thread1of1ForFork2_#t~post1_4|, thread1Thread1of1ForFork2_#t~post2=|v_thread1Thread1of1ForFork2_#t~post2_4|, thread1Thread1of1ForFork2_~_argptr.base=v_thread1Thread1of1ForFork2_~_argptr.base_4, thread1Thread1of1ForFork2_#res.offset=|v_thread1Thread1of1ForFork2_#res.offset_4|, thread1Thread1of1ForFork2_#in~_argptr.offset=|v_thread1Thread1of1ForFork2_#in~_argptr.offset_4|, thread1Thread1of1ForFork2_~_argptr.offset=v_thread1Thread1of1ForFork2_~_argptr.offset_4, thread1Thread1of1ForFork2_#in~_argptr.base=|v_thread1Thread1of1ForFork2_#in~_argptr.base_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_thidvar1, thread1Thread1of1ForFork2_thidvar0, thread1Thread1of1ForFork2_#res.base, thread1Thread1of1ForFork2_#t~post1, thread1Thread1of1ForFork2_#t~post2, thread1Thread1of1ForFork2_~_argptr.base, thread1Thread1of1ForFork2_#res.offset, thread1Thread1of1ForFork2_#in~_argptr.offset, thread1Thread1of1ForFork2_~_argptr.offset, thread1Thread1of1ForFork2_#in~_argptr.base]" "[320] $Ultimate##0-->L44: Formula: (and (= |v_thread1Thread1of1ForFork2_#in~_argptr.offset_1| v_thread1Thread1of1ForFork2_~_argptr.offset_1) (= v_thread1Thread1of1ForFork2_~_argptr.base_1 |v_thread1Thread1of1ForFork2_#in~_argptr.base_1|)) InVars {thread1Thread1of1ForFork2_#in~_argptr.offset=|v_thread1Thread1of1ForFork2_#in~_argptr.offset_1|, thread1Thread1of1ForFork2_#in~_argptr.base=|v_thread1Thread1of1ForFork2_#in~_argptr.base_1|} OutVars{thread1Thread1of1ForFork2_~_argptr.base=v_thread1Thread1of1ForFork2_~_argptr.base_1, thread1Thread1of1ForFork2_#in~_argptr.offset=|v_thread1Thread1of1ForFork2_#in~_argptr.offset_1|, thread1Thread1of1ForFork2_~_argptr.offset=v_thread1Thread1of1ForFork2_~_argptr.offset_1, thread1Thread1of1ForFork2_#in~_argptr.base=|v_thread1Thread1of1ForFork2_#in~_argptr.base_1|} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_~_argptr.base, thread1Thread1of1ForFork2_~_argptr.offset]" [2025-04-26 18:32:08,231 INFO L754 eck$LassoCheckResult]: Loop: "[322] L44-->L41: Formula: (< v_~i1~0_1 v_~N1~0_1) InVars {~i1~0=v_~i1~0_1, ~N1~0=v_~N1~0_1} OutVars{~i1~0=v_~i1~0_1, ~N1~0=v_~N1~0_1} AuxVars[] AssignedVars[]" "[324] L41-->L44: Formula: (and (= (+ v_~counter~0_22 1) v_~counter~0_21) (= v_~i1~0_16 (+ v_~i1~0_17 1))) InVars {~counter~0=v_~counter~0_22, ~i1~0=v_~i1~0_17} OutVars{thread1Thread1of1ForFork2_#t~post2=|v_thread1Thread1of1ForFork2_#t~post2_1|, ~counter~0=v_~counter~0_21, ~i1~0=v_~i1~0_16, thread1Thread1of1ForFork2_#t~post1=|v_thread1Thread1of1ForFork2_#t~post1_1|} AuxVars[] AssignedVars[~counter~0, thread1Thread1of1ForFork2_#t~post1, thread1Thread1of1ForFork2_#t~post2, ~i1~0]" [2025-04-26 18:32:08,235 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 18:32:08,235 INFO L85 PathProgramCache]: Analyzing trace with hash 1768587816, now seen corresponding path program 1 times [2025-04-26 18:32:08,241 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 18:32:08,241 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1358307646] [2025-04-26 18:32:08,242 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 18:32:08,242 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 18:32:08,299 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 44 statements into 1 equivalence classes. [2025-04-26 18:32:08,316 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 44 of 44 statements. [2025-04-26 18:32:08,317 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:08,317 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 18:32:08,317 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 18:32:08,324 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 44 statements into 1 equivalence classes. [2025-04-26 18:32:08,340 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 44 of 44 statements. [2025-04-26 18:32:08,340 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:08,340 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 18:32:08,364 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 18:32:08,366 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 18:32:08,366 INFO L85 PathProgramCache]: Analyzing trace with hash 11267, now seen corresponding path program 1 times [2025-04-26 18:32:08,366 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 18:32:08,366 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1319726955] [2025-04-26 18:32:08,366 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 18:32:08,366 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 18:32:08,371 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 18:32:08,375 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 18:32:08,375 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:08,375 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 18:32:08,375 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 18:32:08,376 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 18:32:08,382 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 18:32:08,382 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:08,382 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 18:32:08,384 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 18:32:08,385 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 18:32:08,385 INFO L85 PathProgramCache]: Analyzing trace with hash -1194147734, now seen corresponding path program 1 times [2025-04-26 18:32:08,385 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 18:32:08,385 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [531971074] [2025-04-26 18:32:08,385 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 18:32:08,385 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 18:32:08,400 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 46 statements into 1 equivalence classes. [2025-04-26 18:32:08,413 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 46 of 46 statements. [2025-04-26 18:32:08,413 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:08,413 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 18:32:08,413 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 18:32:08,416 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 46 statements into 1 equivalence classes. [2025-04-26 18:32:08,429 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 46 of 46 statements. [2025-04-26 18:32:08,430 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:08,430 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 18:32:08,442 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 18:32:08,483 INFO L206 LassoAnalysis]: Preferences: [2025-04-26 18:32:08,484 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-04-26 18:32:08,484 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-04-26 18:32:08,484 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-04-26 18:32:08,484 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2025-04-26 18:32:08,484 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:08,484 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-04-26 18:32:08,484 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-04-26 18:32:08,484 INFO L132 ssoRankerPreferences]: Filename of dumped script: popl20-proofs-counter-add-4-semi-Q67.wvr.c_petrified1_Iteration1_Loop [2025-04-26 18:32:08,484 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-04-26 18:32:08,484 INFO L243 LassoAnalysis]: Starting lasso preprocessing... [2025-04-26 18:32:08,498 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:08,505 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:08,508 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:08,511 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:08,514 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:08,518 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:08,521 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:08,538 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:08,540 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:08,546 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:08,548 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:08,551 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:08,653 INFO L261 LassoAnalysis]: Preprocessing complete. [2025-04-26 18:32:08,655 INFO L367 LassoAnalysis]: Checking for nontermination... [2025-04-26 18:32:08,658 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:08,658 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:08,661 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:08,662 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (3)] Waiting until timeout for monitored process [2025-04-26 18:32:08,663 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 18:32:08,663 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:08,687 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 18:32:08,687 INFO L403 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {v_rep#funAddr~thread4.offset_1=3} Honda state: {v_rep#funAddr~thread4.offset_1=3} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-04-26 18:32:08,693 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (3)] Ended with exit code 0 [2025-04-26 18:32:08,693 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:08,693 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:08,695 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:08,696 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (4)] Waiting until timeout for monitored process [2025-04-26 18:32:08,697 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 18:32:08,697 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:08,717 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 18:32:08,717 INFO L403 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {v_rep#funAddr~thread1.base_1=-1} Honda state: {v_rep#funAddr~thread1.base_1=-1} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-04-26 18:32:08,724 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (4)] Ended with exit code 0 [2025-04-26 18:32:08,724 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:08,724 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:08,726 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:08,727 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (5)] Waiting until timeout for monitored process [2025-04-26 18:32:08,728 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 18:32:08,728 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:08,746 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 18:32:08,747 INFO L403 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {v_rep#funAddr~thread1.offset_1=0} Honda state: {v_rep#funAddr~thread1.offset_1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-04-26 18:32:08,752 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (5)] Ended with exit code 0 [2025-04-26 18:32:08,753 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:08,753 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:08,754 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:08,755 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (6)] Waiting until timeout for monitored process [2025-04-26 18:32:08,756 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 18:32:08,756 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:08,775 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 18:32:08,775 INFO L403 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {v_rep#funAddr~thread3.base_1=-1} Honda state: {v_rep#funAddr~thread3.base_1=-1} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-04-26 18:32:08,781 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (6)] Ended with exit code 0 [2025-04-26 18:32:08,782 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:08,782 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:08,783 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:08,785 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (7)] Waiting until timeout for monitored process [2025-04-26 18:32:08,786 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 18:32:08,786 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:08,804 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 18:32:08,805 INFO L403 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {v_rep#funAddr~thread2.base_1=-1} Honda state: {v_rep#funAddr~thread2.base_1=-1} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-04-26 18:32:08,811 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (7)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:08,811 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:08,811 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:08,814 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:08,814 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (8)] Waiting until timeout for monitored process [2025-04-26 18:32:08,817 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 18:32:08,817 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:08,837 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (8)] Ended with exit code 0 [2025-04-26 18:32:08,837 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:08,838 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:08,872 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:08,873 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (9)] Waiting until timeout for monitored process [2025-04-26 18:32:08,874 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2025-04-26 18:32:08,874 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:08,907 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 18:32:08,907 INFO L403 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {~counter~0=0} Honda state: {~counter~0=0} Generalized eigenvectors: [{~counter~0=3}, {~counter~0=-2}, {~counter~0=0}] Lambdas: [1, 1, 1] Nus: [0, 1] [2025-04-26 18:32:08,913 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (9)] Ended with exit code 0 [2025-04-26 18:32:08,914 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:08,914 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:08,915 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:08,916 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (10)] Waiting until timeout for monitored process [2025-04-26 18:32:08,919 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 18:32:08,919 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:08,937 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 18:32:08,937 INFO L403 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {v_rep#funAddr~thread4.base_1=-1} Honda state: {v_rep#funAddr~thread4.base_1=-1} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-04-26 18:32:08,943 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (10)] Ended with exit code 0 [2025-04-26 18:32:08,943 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:08,943 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:08,945 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:08,947 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (11)] Waiting until timeout for monitored process [2025-04-26 18:32:08,947 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 18:32:08,947 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:08,965 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 18:32:08,965 INFO L403 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {v_rep#funAddr~thread2.offset_1=1} Honda state: {v_rep#funAddr~thread2.offset_1=1} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-04-26 18:32:08,971 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (11)] Ended with exit code 0 [2025-04-26 18:32:08,972 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:08,972 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:08,974 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:08,976 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (12)] Waiting until timeout for monitored process [2025-04-26 18:32:08,977 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 18:32:08,977 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:08,994 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (12)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:08,995 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:08,995 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:08,998 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:08,999 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (13)] Waiting until timeout for monitored process [2025-04-26 18:32:09,000 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2025-04-26 18:32:09,000 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:09,068 INFO L407 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2025-04-26 18:32:09,073 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (13)] Ended with exit code 0 [2025-04-26 18:32:09,073 INFO L206 LassoAnalysis]: Preferences: [2025-04-26 18:32:09,073 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-04-26 18:32:09,073 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-04-26 18:32:09,073 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-04-26 18:32:09,073 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-04-26 18:32:09,073 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:09,073 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-04-26 18:32:09,073 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-04-26 18:32:09,073 INFO L132 ssoRankerPreferences]: Filename of dumped script: popl20-proofs-counter-add-4-semi-Q67.wvr.c_petrified1_Iteration1_Loop [2025-04-26 18:32:09,073 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-04-26 18:32:09,073 INFO L243 LassoAnalysis]: Starting lasso preprocessing... [2025-04-26 18:32:09,075 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:09,080 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:09,084 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:09,087 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:09,090 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:09,094 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:09,098 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:09,101 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:09,106 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:09,109 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:09,110 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:09,113 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:09,197 INFO L261 LassoAnalysis]: Preprocessing complete. [2025-04-26 18:32:09,199 INFO L453 LassoAnalysis]: Using template 'affine'. [2025-04-26 18:32:09,200 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:09,200 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:09,202 INFO L229 MonitoredProcess]: Starting monitored process 14 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:09,204 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (14)] Waiting until timeout for monitored process [2025-04-26 18:32:09,205 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 [2025-04-26 18:32:09,216 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 18:32:09,216 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 18:32:09,216 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 18:32:09,216 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 18:32:09,225 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 18:32:09,225 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 18:32:09,231 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 18:32:09,237 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (14)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:09,237 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:09,237 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:09,239 INFO L229 MonitoredProcess]: Starting monitored process 15 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:09,241 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (15)] Waiting until timeout for monitored process [2025-04-26 18:32:09,243 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 [2025-04-26 18:32:09,253 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 18:32:09,254 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 18:32:09,254 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 18:32:09,254 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 18:32:09,256 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 18:32:09,256 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 18:32:09,259 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 18:32:09,264 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (15)] Ended with exit code 0 [2025-04-26 18:32:09,265 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:09,265 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:09,267 INFO L229 MonitoredProcess]: Starting monitored process 16 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:09,268 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (16)] Waiting until timeout for monitored process [2025-04-26 18:32:09,270 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 [2025-04-26 18:32:09,280 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 18:32:09,280 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 18:32:09,280 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 18:32:09,280 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 18:32:09,282 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 18:32:09,282 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 18:32:09,288 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 18:32:09,294 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (16)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:09,294 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:09,294 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:09,299 INFO L229 MonitoredProcess]: Starting monitored process 17 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:09,300 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (17)] Waiting until timeout for monitored process [2025-04-26 18:32:09,301 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 [2025-04-26 18:32:09,311 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 18:32:09,312 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 18:32:09,312 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 18:32:09,312 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 18:32:09,314 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 18:32:09,314 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 18:32:09,317 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 18:32:09,324 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (17)] Ended with exit code 0 [2025-04-26 18:32:09,324 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:09,324 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:09,326 INFO L229 MonitoredProcess]: Starting monitored process 18 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:09,329 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (18)] Waiting until timeout for monitored process [2025-04-26 18:32:09,329 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 [2025-04-26 18:32:09,339 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 18:32:09,339 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 18:32:09,339 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 18:32:09,339 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 18:32:09,340 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 18:32:09,341 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 18:32:09,346 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 18:32:09,352 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (18)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:09,353 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:09,353 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:09,354 INFO L229 MonitoredProcess]: Starting monitored process 19 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:09,358 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (19)] Waiting until timeout for monitored process [2025-04-26 18:32:09,359 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 [2025-04-26 18:32:09,370 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 18:32:09,370 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-04-26 18:32:09,370 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 18:32:09,370 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 18:32:09,370 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 18:32:09,371 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-04-26 18:32:09,371 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-04-26 18:32:09,376 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 18:32:09,382 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (19)] Ended with exit code 0 [2025-04-26 18:32:09,382 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:09,382 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:09,384 INFO L229 MonitoredProcess]: Starting monitored process 20 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:09,387 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (20)] Waiting until timeout for monitored process [2025-04-26 18:32:09,387 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 [2025-04-26 18:32:09,398 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 18:32:09,398 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 18:32:09,398 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 18:32:09,398 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 18:32:09,399 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 18:32:09,399 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 18:32:09,402 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 18:32:09,408 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (20)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:09,408 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:09,408 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:09,410 INFO L229 MonitoredProcess]: Starting monitored process 21 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:09,411 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (21)] Waiting until timeout for monitored process [2025-04-26 18:32:09,411 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 [2025-04-26 18:32:09,422 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 18:32:09,422 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-04-26 18:32:09,422 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 18:32:09,422 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 18:32:09,422 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 18:32:09,423 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-04-26 18:32:09,423 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-04-26 18:32:09,426 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-04-26 18:32:09,429 INFO L436 ModelExtractionUtils]: Simplification made 4 calls to the SMT solver. [2025-04-26 18:32:09,430 INFO L437 ModelExtractionUtils]: 0 out of 4 variables were initially zero. Simplification set additionally 1 variables to zero. [2025-04-26 18:32:09,431 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:09,431 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:09,435 INFO L229 MonitoredProcess]: Starting monitored process 22 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:09,437 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (22)] Waiting until timeout for monitored process [2025-04-26 18:32:09,438 INFO L436 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-04-26 18:32:09,441 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (22)] Ended with exit code 0 [2025-04-26 18:32:09,441 INFO L439 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2025-04-26 18:32:09,441 INFO L476 LassoAnalysis]: Proved termination. [2025-04-26 18:32:09,442 INFO L478 LassoAnalysis]: Termination argument consisting of: Ranking function f(~i1~0, ~N1~0) = -1*~i1~0 + 1*~N1~0 Supporting invariants [] [2025-04-26 18:32:09,447 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (21)] Ended with exit code 0 [2025-04-26 18:32:09,449 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2025-04-26 18:32:09,473 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 18:32:09,488 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 44 statements into 1 equivalence classes. [2025-04-26 18:32:09,500 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 44 of 44 statements. [2025-04-26 18:32:09,500 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:09,501 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 18:32:09,502 INFO L256 TraceCheckSpWp]: Trace formula consists of 83 conjuncts, 2 conjuncts are in the unsatisfiable core [2025-04-26 18:32:09,504 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 18:32:09,569 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 18:32:09,570 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 18:32:09,570 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:09,570 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 18:32:09,570 WARN L254 TraceCheckSpWp]: Trace formula consists of 7 conjuncts, 4 conjuncts are in the unsatisfiable core [2025-04-26 18:32:09,570 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 18:32:09,587 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-04-26 18:32:09,603 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 [2025-04-26 18:32:09,608 INFO L70 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand has 3014 states, 3012 states have (on average 2.2234395750332006) internal successors, (in total 6697), 3013 states have internal predecessors, (6697), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) Second operand has 3 states, 3 states have (on average 15.333333333333334) internal successors, (in total 46), 3 states have internal predecessors, (46), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:09,888 INFO L74 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand has 3014 states, 3012 states have (on average 2.2234395750332006) internal successors, (in total 6697), 3013 states have internal predecessors, (6697), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0). Second operand has 3 states, 3 states have (on average 15.333333333333334) internal successors, (in total 46), 3 states have internal predecessors, (46), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) Result 9802 states and 21812 transitions. Complement of second has 7 states. [2025-04-26 18:32:09,890 INFO L140 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 5 states 1 stem states 2 non-accepting loop states 1 accepting loop states [2025-04-26 18:32:09,893 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 15.333333333333334) internal successors, (in total 46), 3 states have internal predecessors, (46), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:09,897 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 239 transitions. [2025-04-26 18:32:09,901 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 5 states and 239 transitions. Stem has 44 letters. Loop has 2 letters. [2025-04-26 18:32:09,902 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 18:32:09,902 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 5 states and 239 transitions. Stem has 46 letters. Loop has 2 letters. [2025-04-26 18:32:09,902 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 18:32:09,902 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 5 states and 239 transitions. Stem has 44 letters. Loop has 4 letters. [2025-04-26 18:32:09,902 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 18:32:09,903 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 9802 states and 21812 transitions. [2025-04-26 18:32:10,002 INFO L131 ngComponentsAnalysis]: Automaton has 284 accepting balls. 701 [2025-04-26 18:32:10,050 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 9802 states to 3305 states and 7268 transitions. [2025-04-26 18:32:10,052 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1340 [2025-04-26 18:32:10,061 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 2075 [2025-04-26 18:32:10,061 INFO L74 IsDeterministic]: Start isDeterministic. Operand 3305 states and 7268 transitions. [2025-04-26 18:32:10,062 INFO L81 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-04-26 18:32:10,062 INFO L218 hiAutomatonCegarLoop]: Abstraction has 3305 states and 7268 transitions. [2025-04-26 18:32:10,081 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3305 states and 7268 transitions. [2025-04-26 18:32:10,170 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3305 to 3050. [2025-04-26 18:32:10,175 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3050 states, 3050 states have (on average 2.299344262295082) internal successors, (in total 7013), 3049 states have internal predecessors, (7013), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:10,188 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3050 states to 3050 states and 7013 transitions. [2025-04-26 18:32:10,189 INFO L240 hiAutomatonCegarLoop]: Abstraction has 3050 states and 7013 transitions. [2025-04-26 18:32:10,189 INFO L438 stractBuchiCegarLoop]: Abstraction has 3050 states and 7013 transitions. [2025-04-26 18:32:10,189 INFO L340 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2025-04-26 18:32:10,189 INFO L73 BuchiIsEmpty]: Start buchiIsEmpty. Operand 3050 states and 7013 transitions. [2025-04-26 18:32:10,208 INFO L131 ngComponentsAnalysis]: Automaton has 284 accepting balls. 701 [2025-04-26 18:32:10,208 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-04-26 18:32:10,208 INFO L120 BuchiIsEmpty]: Starting construction of run [2025-04-26 18:32:10,209 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-04-26 18:32:10,209 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1] [2025-04-26 18:32:10,210 INFO L752 eck$LassoCheckResult]: Stem: "[237] $Ultimate##0-->L-1: Formula: (= (select |v_#valid_1| 0) 0) InVars {#valid=|v_#valid_1|} OutVars{#valid=|v_#valid_1|} AuxVars[] AssignedVars[]" "[241] L-1-->L21: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[]" "[283] L21-->L21-1: Formula: (and (= (select |v_#valid_2| 1) 1) (= 2 (select |v_#length_1| 1))) InVars {#length=|v_#length_1|, #valid=|v_#valid_2|} OutVars{#length=|v_#length_1|, #valid=|v_#valid_2|} AuxVars[] AssignedVars[]" "[303] L21-1-->L21-2: Formula: (= 48 (select (select |v_#memory_int_1| 1) 0)) InVars {#memory_int=|v_#memory_int_1|} OutVars{#memory_int=|v_#memory_int_1|} AuxVars[] AssignedVars[]" "[247] L21-2-->L21-3: Formula: (= (select (select |v_#memory_int_2| 1) 1) 0) InVars {#memory_int=|v_#memory_int_2|} OutVars{#memory_int=|v_#memory_int_2|} AuxVars[] AssignedVars[]" "[277] L21-3-->L21-4: Formula: (and (= 43 (select |v_#length_2| 2)) (= (select |v_#valid_3| 2) 1)) InVars {#length=|v_#length_2|, #valid=|v_#valid_3|} OutVars{#length=|v_#length_2|, #valid=|v_#valid_3|} AuxVars[] AssignedVars[]" "[261] L21-4-->L37: Formula: (= v_~i1~0_5 0) InVars {} OutVars{~i1~0=v_~i1~0_5} AuxVars[] AssignedVars[~i1~0]" "[255] L37-->L37-1: Formula: (= v_~i2~0_5 0) InVars {} OutVars{~i2~0=v_~i2~0_5} AuxVars[] AssignedVars[~i2~0]" "[256] L37-1-->L37-2: Formula: (= 0 v_~N1~0_3) InVars {} OutVars{~N1~0=v_~N1~0_3} AuxVars[] AssignedVars[~N1~0]" "[221] L37-2-->L37-3: Formula: (= 0 v_~N2~0_3) InVars {} OutVars{~N2~0=v_~N2~0_3} AuxVars[] AssignedVars[~N2~0]" "[238] L37-3-->L37-4: Formula: (= v_~counter~0_9 0) InVars {} OutVars{~counter~0=v_~counter~0_9} AuxVars[] AssignedVars[~counter~0]" "[297] L37-4-->L37-5: Formula: (= v_~j1~0_5 0) InVars {} OutVars{~j1~0=v_~j1~0_5} AuxVars[] AssignedVars[~j1~0]" "[271] L37-5-->L37-6: Formula: (= v_~j2~0_1 0) InVars {} OutVars{~j2~0=v_~j2~0_1} AuxVars[] AssignedVars[~j2~0]" "[264] L37-6-->L37-7: Formula: (= 0 v_~M1~0_3) InVars {} OutVars{~M1~0=v_~M1~0_3} AuxVars[] AssignedVars[~M1~0]" "[278] L37-7-->L-1-1: Formula: (= 0 v_~M2~0_1) InVars {} OutVars{~M2~0=v_~M2~0_1} AuxVars[] AssignedVars[~M2~0]" "[309] L-1-1-->L-1-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1]" "[310] L-1-2-->L86: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t4~0#1=|v_ULTIMATE.start_main_~t4~0#1_2|, ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_2|, ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_2|, ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_2|, ULTIMATE.start_main_~t3~0#1=|v_ULTIMATE.start_main_~t3~0#1_2|, ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_2|, ULTIMATE.start_main_#t~nondet18#1=|v_ULTIMATE.start_main_#t~nondet18#1_2|, ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_2|, ULTIMATE.start_main_#t~pre17#1=|v_ULTIMATE.start_main_#t~pre17#1_2|, ULTIMATE.start_main_#t~nondet14#1=|v_ULTIMATE.start_main_#t~nondet14#1_2|, ULTIMATE.start_main_#t~pre19#1=|v_ULTIMATE.start_main_#t~pre19#1_2|, ULTIMATE.start_main_~t1~0#1=|v_ULTIMATE.start_main_~t1~0#1_2|, ULTIMATE.start_main_#t~nondet16#1=|v_ULTIMATE.start_main_#t~nondet16#1_2|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_2|, ULTIMATE.start_main_#t~nondet20#1=|v_ULTIMATE.start_main_#t~nondet20#1_2|, ULTIMATE.start_main_~t2~0#1=|v_ULTIMATE.start_main_~t2~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t4~0#1, ULTIMATE.start_main_#t~pre13#1, ULTIMATE.start_main_#t~nondet10#1, ULTIMATE.start_main_#t~nondet9#1, ULTIMATE.start_main_~t3~0#1, ULTIMATE.start_main_#t~pre15#1, ULTIMATE.start_main_#t~nondet18#1, ULTIMATE.start_main_#t~nondet12#1, ULTIMATE.start_main_#t~pre17#1, ULTIMATE.start_main_#t~nondet14#1, ULTIMATE.start_main_#t~pre19#1, ULTIMATE.start_main_~t1~0#1, ULTIMATE.start_main_#t~nondet16#1, ULTIMATE.start_main_#t~nondet11#1, ULTIMATE.start_main_#t~nondet20#1, ULTIMATE.start_main_~t2~0#1]" "[214] L86-->L86-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t1~0#1=|v_ULTIMATE.start_main_~t1~0#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t1~0#1]" "[269] L86-1-->L86-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t2~0#1=|v_ULTIMATE.start_main_~t2~0#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t2~0#1]" "[319] L86-2-->L86-3: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t3~0#1=|v_ULTIMATE.start_main_~t3~0#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t3~0#1]" "[250] L86-3-->L88: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t4~0#1=|v_ULTIMATE.start_main_~t4~0#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t4~0#1]" "[282] L88-->L88-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet9#1]" "[302] L88-1-->L88-2: Formula: (= |v_ULTIMATE.start_main_#t~nondet9#1_4| v_~N1~0_4) InVars {ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_4|} OutVars{ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_4|, ~N1~0=v_~N1~0_4} AuxVars[] AssignedVars[~N1~0]" "[218] L88-2-->L89: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet9#1]" "[267] L89-->L89-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet10#1]" "[249] L89-1-->L89-2: Formula: (= |v_ULTIMATE.start_main_#t~nondet10#1_4| v_~N2~0_4) InVars {ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_4|} OutVars{ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_4|, ~N2~0=v_~N2~0_4} AuxVars[] AssignedVars[~N2~0]" "[273] L89-2-->L90: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet10#1]" "[306] L90-->L90-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet11#1]" "[228] L90-1-->L90-2: Formula: (= |v_ULTIMATE.start_main_#t~nondet11#1_4| v_~M1~0_4) InVars {ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_4|} OutVars{ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_4|, ~M1~0=v_~M1~0_4} AuxVars[] AssignedVars[~M1~0]" "[239] L90-2-->L91: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet11#1]" "[229] L91-->L91-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet12#1]" "[240] L91-1-->L91-2: Formula: (= |v_ULTIMATE.start_main_#t~nondet12#1_4| v_~M2~0_2) InVars {ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_4|} OutVars{~M2~0=v_~M2~0_2, ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_4|} AuxVars[] AssignedVars[~M2~0]" "[265] L91-2-->L92: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet12#1]" "[298] L92-->L92-1: Formula: (= (ite (and (= v_~M1~0_5 v_~N1~0_5) (= v_~N1~0_5 v_~N2~0_5) (= v_~M2~0_3 v_~N1~0_5)) 1 0) |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_4|) InVars {~M1~0=v_~M1~0_5, ~N1~0=v_~N1~0_5, ~N2~0=v_~N2~0_5, ~M2~0=v_~M2~0_3} OutVars{~M1~0=v_~M1~0_5, ~N1~0=v_~N1~0_5, ~N2~0=v_~N2~0_5, ~M2~0=v_~M2~0_3, ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_#in~cond#1]" "[292] L92-1-->L33: Formula: true InVars {} OutVars{ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_~cond#1]" "[226] L33-->L34: Formula: (= |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_5| |v_ULTIMATE.start_assume_abort_if_not_~cond#1_7|) InVars {ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_5|} OutVars{ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_7|, ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_~cond#1]" "[235] L34-->L33-1: Formula: (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_9| 0)) InVars {ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_9|} OutVars{ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_9|} AuxVars[] AssignedVars[]" "[251] L33-1-->L92-2: Formula: true InVars {} OutVars{ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_10|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_~cond#1]" "[259] L92-2-->L95: Formula: true InVars {} OutVars{ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_#in~cond#1]" "[279] L95-->L95-1: Formula: (= |v_ULTIMATE.start_main_#t~pre13#1_3| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre13#1]" "[289] L95-1-->L95-2: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks]" "[290] L95-2-->L95-3: Formula: (= |v_ULTIMATE.start_main_~t1~0#1_4| |v_ULTIMATE.start_main_#t~pre13#1_4|) InVars {ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_4|} OutVars{ULTIMATE.start_main_~t1~0#1=|v_ULTIMATE.start_main_~t1~0#1_4|, ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t1~0#1]" "[352] L95-3-->$Ultimate##0: Formula: (and (= |v_thread1Thread1of1ForFork2_#in~_argptr.offset_4| 0) (= |v_ULTIMATE.start_main_#t~pre13#1_7| v_thread1Thread1of1ForFork2_thidvar0_2) (= 0 v_thread1Thread1of1ForFork2_thidvar1_2) (= |v_thread1Thread1of1ForFork2_#in~_argptr.base_4| 0)) InVars {ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_7|} OutVars{thread1Thread1of1ForFork2_thidvar1=v_thread1Thread1of1ForFork2_thidvar1_2, thread1Thread1of1ForFork2_thidvar0=v_thread1Thread1of1ForFork2_thidvar0_2, thread1Thread1of1ForFork2_#res.base=|v_thread1Thread1of1ForFork2_#res.base_4|, ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_7|, thread1Thread1of1ForFork2_#t~post1=|v_thread1Thread1of1ForFork2_#t~post1_4|, thread1Thread1of1ForFork2_#t~post2=|v_thread1Thread1of1ForFork2_#t~post2_4|, thread1Thread1of1ForFork2_~_argptr.base=v_thread1Thread1of1ForFork2_~_argptr.base_4, thread1Thread1of1ForFork2_#res.offset=|v_thread1Thread1of1ForFork2_#res.offset_4|, thread1Thread1of1ForFork2_#in~_argptr.offset=|v_thread1Thread1of1ForFork2_#in~_argptr.offset_4|, thread1Thread1of1ForFork2_~_argptr.offset=v_thread1Thread1of1ForFork2_~_argptr.offset_4, thread1Thread1of1ForFork2_#in~_argptr.base=|v_thread1Thread1of1ForFork2_#in~_argptr.base_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_thidvar1, thread1Thread1of1ForFork2_thidvar0, thread1Thread1of1ForFork2_#res.base, thread1Thread1of1ForFork2_#t~post1, thread1Thread1of1ForFork2_#t~post2, thread1Thread1of1ForFork2_~_argptr.base, thread1Thread1of1ForFork2_#res.offset, thread1Thread1of1ForFork2_#in~_argptr.offset, thread1Thread1of1ForFork2_~_argptr.offset, thread1Thread1of1ForFork2_#in~_argptr.base]" "[320] $Ultimate##0-->L44: Formula: (and (= |v_thread1Thread1of1ForFork2_#in~_argptr.offset_1| v_thread1Thread1of1ForFork2_~_argptr.offset_1) (= v_thread1Thread1of1ForFork2_~_argptr.base_1 |v_thread1Thread1of1ForFork2_#in~_argptr.base_1|)) InVars {thread1Thread1of1ForFork2_#in~_argptr.offset=|v_thread1Thread1of1ForFork2_#in~_argptr.offset_1|, thread1Thread1of1ForFork2_#in~_argptr.base=|v_thread1Thread1of1ForFork2_#in~_argptr.base_1|} OutVars{thread1Thread1of1ForFork2_~_argptr.base=v_thread1Thread1of1ForFork2_~_argptr.base_1, thread1Thread1of1ForFork2_#in~_argptr.offset=|v_thread1Thread1of1ForFork2_#in~_argptr.offset_1|, thread1Thread1of1ForFork2_~_argptr.offset=v_thread1Thread1of1ForFork2_~_argptr.offset_1, thread1Thread1of1ForFork2_#in~_argptr.base=|v_thread1Thread1of1ForFork2_#in~_argptr.base_1|} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_~_argptr.base, thread1Thread1of1ForFork2_~_argptr.offset]" "[321] L44-->L47: Formula: (<= v_~N1~0_2 v_~i1~0_4) InVars {~i1~0=v_~i1~0_4, ~N1~0=v_~N1~0_2} OutVars{~i1~0=v_~i1~0_4, ~N1~0=v_~N1~0_2} AuxVars[] AssignedVars[]" "[323] L47-->thread1FINAL: Formula: (and (= |v_thread1Thread1of1ForFork2_#res.offset_1| 0) (= |v_thread1Thread1of1ForFork2_#res.base_1| 0)) InVars {} OutVars{thread1Thread1of1ForFork2_#res.base=|v_thread1Thread1of1ForFork2_#res.base_1|, thread1Thread1of1ForFork2_#res.offset=|v_thread1Thread1of1ForFork2_#res.offset_1|} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_#res.base, thread1Thread1of1ForFork2_#res.offset]" "[325] thread1FINAL-->thread1EXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[]" "[243] L95-4-->L95-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre13#1]" "[213] L95-5-->L96: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet14#1=|v_ULTIMATE.start_main_#t~nondet14#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet14#1]" "[299] L96-->L96-1: Formula: (= |v_ULTIMATE.start_main_#t~pre15#1_3| |v_#pthreadsForks_4|) InVars {#pthreadsForks=|v_#pthreadsForks_4|} OutVars{#pthreadsForks=|v_#pthreadsForks_4|, ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre15#1]" "[266] L96-1-->L96-2: Formula: (= (+ 1 |v_#pthreadsForks_6|) |v_#pthreadsForks_5|) InVars {#pthreadsForks=|v_#pthreadsForks_6|} OutVars{#pthreadsForks=|v_#pthreadsForks_5|} AuxVars[] AssignedVars[#pthreadsForks]" "[227] L96-2-->L96-3: Formula: (= |v_ULTIMATE.start_main_~t2~0#1_4| |v_ULTIMATE.start_main_#t~pre15#1_4|) InVars {ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_4|} OutVars{ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_4|, ULTIMATE.start_main_~t2~0#1=|v_ULTIMATE.start_main_~t2~0#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t2~0#1]" "[346] L96-3-->$Ultimate##0: Formula: (and (= |v_thread2Thread1of1ForFork0_#in~_argptr#1.offset_4| 0) (= v_thread2Thread1of1ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre15#1_7|) (= |v_thread2Thread1of1ForFork0_#in~_argptr#1.base_4| 0) (= v_thread2Thread1of1ForFork0_thidvar2_2 0) (= v_thread2Thread1of1ForFork0_thidvar1_2 0)) InVars {ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_7|} OutVars{thread2Thread1of1ForFork0_#res#1.offset=|v_thread2Thread1of1ForFork0_#res#1.offset_4|, thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1_4|, thread2Thread1of1ForFork0_#t~post3#1=|v_thread2Thread1of1ForFork0_#t~post3#1_4|, ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_7|, thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1_4|, thread2Thread1of1ForFork0_#in~_argptr#1.offset=|v_thread2Thread1of1ForFork0_#in~_argptr#1.offset_4|, thread2Thread1of1ForFork0_#res#1.base=|v_thread2Thread1of1ForFork0_#res#1.base_4|, thread2Thread1of1ForFork0_#in~_argptr#1.base=|v_thread2Thread1of1ForFork0_#in~_argptr#1.base_4|, thread2Thread1of1ForFork0_thidvar2=v_thread2Thread1of1ForFork0_thidvar2_2, thread2Thread1of1ForFork0_thidvar1=v_thread2Thread1of1ForFork0_thidvar1_2, thread2Thread1of1ForFork0_~_argptr#1.base=|v_thread2Thread1of1ForFork0_~_argptr#1.base_4|, thread2Thread1of1ForFork0_thidvar0=v_thread2Thread1of1ForFork0_thidvar0_2, thread2Thread1of1ForFork0_~_argptr#1.offset=|v_thread2Thread1of1ForFork0_~_argptr#1.offset_4|, thread2Thread1of1ForFork0_#t~post4#1=|v_thread2Thread1of1ForFork0_#t~post4#1_4|} AuxVars[] AssignedVars[thread2Thread1of1ForFork0_#res#1.offset, thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1, thread2Thread1of1ForFork0_#t~post3#1, thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1, thread2Thread1of1ForFork0_#in~_argptr#1.offset, thread2Thread1of1ForFork0_#res#1.base, thread2Thread1of1ForFork0_#in~_argptr#1.base, thread2Thread1of1ForFork0_thidvar2, thread2Thread1of1ForFork0_thidvar1, thread2Thread1of1ForFork0_~_argptr#1.base, thread2Thread1of1ForFork0_thidvar0, thread2Thread1of1ForFork0_~_argptr#1.offset, thread2Thread1of1ForFork0_#t~post4#1]" "[326] $Ultimate##0-->L56: Formula: (and (= |v_thread2Thread1of1ForFork0_~_argptr#1.base_1| |v_thread2Thread1of1ForFork0_#in~_argptr#1.base_1|) (= |v_thread2Thread1of1ForFork0_#in~_argptr#1.offset_1| |v_thread2Thread1of1ForFork0_~_argptr#1.offset_1|)) InVars {thread2Thread1of1ForFork0_#in~_argptr#1.offset=|v_thread2Thread1of1ForFork0_#in~_argptr#1.offset_1|, thread2Thread1of1ForFork0_#in~_argptr#1.base=|v_thread2Thread1of1ForFork0_#in~_argptr#1.base_1|} OutVars{thread2Thread1of1ForFork0_#in~_argptr#1.offset=|v_thread2Thread1of1ForFork0_#in~_argptr#1.offset_1|, thread2Thread1of1ForFork0_~_argptr#1.base=|v_thread2Thread1of1ForFork0_~_argptr#1.base_1|, thread2Thread1of1ForFork0_#in~_argptr#1.base=|v_thread2Thread1of1ForFork0_#in~_argptr#1.base_1|, thread2Thread1of1ForFork0_~_argptr#1.offset=|v_thread2Thread1of1ForFork0_~_argptr#1.offset_1|} AuxVars[] AssignedVars[thread2Thread1of1ForFork0_~_argptr#1.base, thread2Thread1of1ForFork0_~_argptr#1.offset]" [2025-04-26 18:32:10,210 INFO L754 eck$LassoCheckResult]: Loop: "[328] L56-->L52: Formula: (< v_~i2~0_4 v_~N2~0_2) InVars {~i2~0=v_~i2~0_4, ~N2~0=v_~N2~0_2} OutVars{~i2~0=v_~i2~0_4, ~N2~0=v_~N2~0_2} AuxVars[] AssignedVars[]" "[330] L52-->L56: Formula: (and (not (= (ite (< 0 v_~counter~0_96) 1 0) 0)) (= (+ v_~counter~0_95 1) v_~counter~0_96) (= v_~i2~0_20 (+ v_~i2~0_21 1))) InVars {~counter~0=v_~counter~0_96, ~i2~0=v_~i2~0_21} OutVars{thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1_1|, ~counter~0=v_~counter~0_95, thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1_1|, ~i2~0=v_~i2~0_20, thread2Thread1of1ForFork0_#t~post3#1=|v_thread2Thread1of1ForFork0_#t~post3#1_1|, thread2Thread1of1ForFork0_#t~post4#1=|v_thread2Thread1of1ForFork0_#t~post4#1_1|} AuxVars[] AssignedVars[~counter~0, thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1, thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1, ~i2~0, thread2Thread1of1ForFork0_#t~post3#1, thread2Thread1of1ForFork0_#t~post4#1]" [2025-04-26 18:32:10,210 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 18:32:10,211 INFO L85 PathProgramCache]: Analyzing trace with hash -1985141229, now seen corresponding path program 1 times [2025-04-26 18:32:10,211 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 18:32:10,211 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1040944778] [2025-04-26 18:32:10,211 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 18:32:10,211 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 18:32:10,219 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 54 statements into 1 equivalence classes. [2025-04-26 18:32:10,229 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 54 of 54 statements. [2025-04-26 18:32:10,229 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:10,229 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 18:32:10,229 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 18:32:10,233 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 54 statements into 1 equivalence classes. [2025-04-26 18:32:10,246 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 54 of 54 statements. [2025-04-26 18:32:10,246 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:10,246 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 18:32:10,255 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 18:32:10,255 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 18:32:10,255 INFO L85 PathProgramCache]: Analyzing trace with hash 11459, now seen corresponding path program 1 times [2025-04-26 18:32:10,255 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 18:32:10,255 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1717768549] [2025-04-26 18:32:10,255 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 18:32:10,255 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 18:32:10,258 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 18:32:10,259 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 18:32:10,260 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:10,260 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 18:32:10,260 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 18:32:10,261 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 18:32:10,262 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 18:32:10,262 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:10,262 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 18:32:10,263 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 18:32:10,264 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 18:32:10,264 INFO L85 PathProgramCache]: Analyzing trace with hash -755231147, now seen corresponding path program 1 times [2025-04-26 18:32:10,264 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 18:32:10,264 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [808207226] [2025-04-26 18:32:10,264 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 18:32:10,264 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 18:32:10,270 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 56 statements into 1 equivalence classes. [2025-04-26 18:32:10,276 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 56 of 56 statements. [2025-04-26 18:32:10,276 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:10,276 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 18:32:10,401 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-04-26 18:32:10,401 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-04-26 18:32:10,402 INFO L324 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [808207226] [2025-04-26 18:32:10,402 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [808207226] provided 1 perfect and 0 imperfect interpolant sequences [2025-04-26 18:32:10,402 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-04-26 18:32:10,402 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2025-04-26 18:32:10,402 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1812324091] [2025-04-26 18:32:10,403 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-04-26 18:32:10,430 INFO L206 LassoAnalysis]: Preferences: [2025-04-26 18:32:10,431 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-04-26 18:32:10,431 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-04-26 18:32:10,431 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-04-26 18:32:10,431 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2025-04-26 18:32:10,431 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:10,431 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-04-26 18:32:10,431 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-04-26 18:32:10,431 INFO L132 ssoRankerPreferences]: Filename of dumped script: popl20-proofs-counter-add-4-semi-Q67.wvr.c_petrified1_Iteration2_Loop [2025-04-26 18:32:10,431 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-04-26 18:32:10,431 INFO L243 LassoAnalysis]: Starting lasso preprocessing... [2025-04-26 18:32:10,434 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:10,439 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:10,442 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:10,444 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:10,447 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:10,450 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:10,453 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:10,455 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:10,457 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:10,460 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:10,462 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:10,465 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:10,467 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:10,469 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:10,580 INFO L261 LassoAnalysis]: Preprocessing complete. [2025-04-26 18:32:10,580 INFO L367 LassoAnalysis]: Checking for nontermination... [2025-04-26 18:32:10,581 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:10,581 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:10,583 INFO L229 MonitoredProcess]: Starting monitored process 23 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:10,584 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (23)] Waiting until timeout for monitored process [2025-04-26 18:32:10,586 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 18:32:10,586 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:10,606 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (23)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:10,607 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:10,607 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:10,611 INFO L229 MonitoredProcess]: Starting monitored process 24 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:10,612 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (24)] Waiting until timeout for monitored process [2025-04-26 18:32:10,614 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2025-04-26 18:32:10,614 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:10,637 INFO L407 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2025-04-26 18:32:10,644 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (24)] Ended with exit code 0 [2025-04-26 18:32:10,644 INFO L206 LassoAnalysis]: Preferences: [2025-04-26 18:32:10,644 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-04-26 18:32:10,644 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-04-26 18:32:10,644 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-04-26 18:32:10,644 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-04-26 18:32:10,644 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:10,645 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-04-26 18:32:10,645 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-04-26 18:32:10,645 INFO L132 ssoRankerPreferences]: Filename of dumped script: popl20-proofs-counter-add-4-semi-Q67.wvr.c_petrified1_Iteration2_Loop [2025-04-26 18:32:10,645 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-04-26 18:32:10,645 INFO L243 LassoAnalysis]: Starting lasso preprocessing... [2025-04-26 18:32:10,646 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:10,655 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:10,662 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:10,664 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:10,667 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:10,670 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:10,673 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:10,675 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:10,679 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:10,682 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:10,684 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:10,688 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:10,690 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:10,693 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:10,806 INFO L261 LassoAnalysis]: Preprocessing complete. [2025-04-26 18:32:10,806 INFO L453 LassoAnalysis]: Using template 'affine'. [2025-04-26 18:32:10,807 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:10,807 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:10,808 INFO L229 MonitoredProcess]: Starting monitored process 25 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:10,810 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (25)] Waiting until timeout for monitored process [2025-04-26 18:32:10,811 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 [2025-04-26 18:32:10,821 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 18:32:10,822 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-04-26 18:32:10,822 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 18:32:10,822 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 18:32:10,822 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 18:32:10,822 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-04-26 18:32:10,822 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-04-26 18:32:10,824 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-04-26 18:32:10,827 INFO L436 ModelExtractionUtils]: Simplification made 2 calls to the SMT solver. [2025-04-26 18:32:10,827 INFO L437 ModelExtractionUtils]: 1 out of 3 variables were initially zero. Simplification set additionally 0 variables to zero. [2025-04-26 18:32:10,827 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:10,827 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:10,830 INFO L229 MonitoredProcess]: Starting monitored process 26 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:10,831 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (26)] Waiting until timeout for monitored process [2025-04-26 18:32:10,832 INFO L436 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-04-26 18:32:10,838 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (26)] Ended with exit code 0 [2025-04-26 18:32:10,838 INFO L439 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2025-04-26 18:32:10,838 INFO L476 LassoAnalysis]: Proved termination. [2025-04-26 18:32:10,838 INFO L478 LassoAnalysis]: Termination argument consisting of: Ranking function f(~counter~0) = 1*~counter~0 Supporting invariants [] [2025-04-26 18:32:10,844 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (25)] Ended with exit code 0 [2025-04-26 18:32:10,845 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2025-04-26 18:32:10,856 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 18:32:10,870 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 54 statements into 1 equivalence classes. [2025-04-26 18:32:10,884 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 54 of 54 statements. [2025-04-26 18:32:10,884 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:10,884 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 18:32:10,885 INFO L256 TraceCheckSpWp]: Trace formula consists of 111 conjuncts, 2 conjuncts are in the unsatisfiable core [2025-04-26 18:32:10,886 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 18:32:10,954 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 18:32:10,955 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 18:32:10,955 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:10,955 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 18:32:10,955 WARN L254 TraceCheckSpWp]: Trace formula consists of 8 conjuncts, 4 conjuncts are in the unsatisfiable core [2025-04-26 18:32:10,956 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 18:32:10,957 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-04-26 18:32:10,958 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 1 loop predicates [2025-04-26 18:32:10,958 INFO L70 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 3050 states and 7013 transitions. cyclomatic complexity: 4484 Second operand has 3 states, 3 states have (on average 18.666666666666668) internal successors, (in total 56), 3 states have internal predecessors, (56), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:11,038 INFO L74 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 3050 states and 7013 transitions. cyclomatic complexity: 4484. Second operand has 3 states, 3 states have (on average 18.666666666666668) internal successors, (in total 56), 3 states have internal predecessors, (56), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) Result 3867 states and 8443 transitions. Complement of second has 5 states. [2025-04-26 18:32:11,039 INFO L140 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 3 states 1 stem states 1 non-accepting loop states 1 accepting loop states [2025-04-26 18:32:11,039 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 18.666666666666668) internal successors, (in total 56), 3 states have internal predecessors, (56), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:11,040 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 114 transitions. [2025-04-26 18:32:11,040 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 3 states and 114 transitions. Stem has 54 letters. Loop has 2 letters. [2025-04-26 18:32:11,040 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 18:32:11,040 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 3 states and 114 transitions. Stem has 56 letters. Loop has 2 letters. [2025-04-26 18:32:11,040 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 18:32:11,040 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 3 states and 114 transitions. Stem has 54 letters. Loop has 4 letters. [2025-04-26 18:32:11,041 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 18:32:11,041 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 3867 states and 8443 transitions. [2025-04-26 18:32:11,079 INFO L131 ngComponentsAnalysis]: Automaton has 284 accepting balls. 701 [2025-04-26 18:32:11,105 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 3867 states to 3127 states and 7126 transitions. [2025-04-26 18:32:11,105 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1854 [2025-04-26 18:32:11,110 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 1871 [2025-04-26 18:32:11,110 INFO L74 IsDeterministic]: Start isDeterministic. Operand 3127 states and 7126 transitions. [2025-04-26 18:32:11,110 INFO L81 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-04-26 18:32:11,110 INFO L218 hiAutomatonCegarLoop]: Abstraction has 3127 states and 7126 transitions. [2025-04-26 18:32:11,116 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3127 states and 7126 transitions. [2025-04-26 18:32:11,200 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3127 to 3108. [2025-04-26 18:32:11,208 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3108 states, 3108 states have (on average 2.284749034749035) internal successors, (in total 7101), 3107 states have internal predecessors, (7101), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:11,220 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3108 states to 3108 states and 7101 transitions. [2025-04-26 18:32:11,220 INFO L240 hiAutomatonCegarLoop]: Abstraction has 3108 states and 7101 transitions. [2025-04-26 18:32:11,220 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-04-26 18:32:11,222 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2025-04-26 18:32:11,223 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2025-04-26 18:32:11,223 INFO L87 Difference]: Start difference. First operand 3108 states and 7101 transitions. Second operand has 3 states, 2 states have (on average 28.0) internal successors, (in total 56), 3 states have internal predecessors, (56), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:11,271 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-04-26 18:32:11,271 INFO L93 Difference]: Finished difference Result 3151 states and 7148 transitions. [2025-04-26 18:32:11,271 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 3151 states and 7148 transitions. [2025-04-26 18:32:11,289 INFO L131 ngComponentsAnalysis]: Automaton has 284 accepting balls. 701 [2025-04-26 18:32:11,309 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 3151 states to 3142 states and 7139 transitions. [2025-04-26 18:32:11,309 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1889 [2025-04-26 18:32:11,313 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 1889 [2025-04-26 18:32:11,313 INFO L74 IsDeterministic]: Start isDeterministic. Operand 3142 states and 7139 transitions. [2025-04-26 18:32:11,313 INFO L81 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-04-26 18:32:11,313 INFO L218 hiAutomatonCegarLoop]: Abstraction has 3142 states and 7139 transitions. [2025-04-26 18:32:11,317 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3142 states and 7139 transitions. [2025-04-26 18:32:11,358 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3142 to 3118. [2025-04-26 18:32:11,365 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3118 states, 3118 states have (on average 2.2809493264913407) internal successors, (in total 7112), 3117 states have internal predecessors, (7112), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:11,373 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3118 states to 3118 states and 7112 transitions. [2025-04-26 18:32:11,373 INFO L240 hiAutomatonCegarLoop]: Abstraction has 3118 states and 7112 transitions. [2025-04-26 18:32:11,378 INFO L140 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2025-04-26 18:32:11,378 INFO L438 stractBuchiCegarLoop]: Abstraction has 3118 states and 7112 transitions. [2025-04-26 18:32:11,378 INFO L340 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2025-04-26 18:32:11,378 INFO L73 BuchiIsEmpty]: Start buchiIsEmpty. Operand 3118 states and 7112 transitions. [2025-04-26 18:32:11,391 INFO L131 ngComponentsAnalysis]: Automaton has 284 accepting balls. 701 [2025-04-26 18:32:11,392 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-04-26 18:32:11,392 INFO L120 BuchiIsEmpty]: Starting construction of run [2025-04-26 18:32:11,393 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-04-26 18:32:11,393 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1] [2025-04-26 18:32:11,395 INFO L752 eck$LassoCheckResult]: Stem: "[237] $Ultimate##0-->L-1: Formula: (= (select |v_#valid_1| 0) 0) InVars {#valid=|v_#valid_1|} OutVars{#valid=|v_#valid_1|} AuxVars[] AssignedVars[]" "[241] L-1-->L21: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[]" "[283] L21-->L21-1: Formula: (and (= (select |v_#valid_2| 1) 1) (= 2 (select |v_#length_1| 1))) InVars {#length=|v_#length_1|, #valid=|v_#valid_2|} OutVars{#length=|v_#length_1|, #valid=|v_#valid_2|} AuxVars[] AssignedVars[]" "[303] L21-1-->L21-2: Formula: (= 48 (select (select |v_#memory_int_1| 1) 0)) InVars {#memory_int=|v_#memory_int_1|} OutVars{#memory_int=|v_#memory_int_1|} AuxVars[] AssignedVars[]" "[247] L21-2-->L21-3: Formula: (= (select (select |v_#memory_int_2| 1) 1) 0) InVars {#memory_int=|v_#memory_int_2|} OutVars{#memory_int=|v_#memory_int_2|} AuxVars[] AssignedVars[]" "[277] L21-3-->L21-4: Formula: (and (= 43 (select |v_#length_2| 2)) (= (select |v_#valid_3| 2) 1)) InVars {#length=|v_#length_2|, #valid=|v_#valid_3|} OutVars{#length=|v_#length_2|, #valid=|v_#valid_3|} AuxVars[] AssignedVars[]" "[261] L21-4-->L37: Formula: (= v_~i1~0_5 0) InVars {} OutVars{~i1~0=v_~i1~0_5} AuxVars[] AssignedVars[~i1~0]" "[255] L37-->L37-1: Formula: (= v_~i2~0_5 0) InVars {} OutVars{~i2~0=v_~i2~0_5} AuxVars[] AssignedVars[~i2~0]" "[256] L37-1-->L37-2: Formula: (= 0 v_~N1~0_3) InVars {} OutVars{~N1~0=v_~N1~0_3} AuxVars[] AssignedVars[~N1~0]" "[221] L37-2-->L37-3: Formula: (= 0 v_~N2~0_3) InVars {} OutVars{~N2~0=v_~N2~0_3} AuxVars[] AssignedVars[~N2~0]" "[238] L37-3-->L37-4: Formula: (= v_~counter~0_9 0) InVars {} OutVars{~counter~0=v_~counter~0_9} AuxVars[] AssignedVars[~counter~0]" "[297] L37-4-->L37-5: Formula: (= v_~j1~0_5 0) InVars {} OutVars{~j1~0=v_~j1~0_5} AuxVars[] AssignedVars[~j1~0]" "[271] L37-5-->L37-6: Formula: (= v_~j2~0_1 0) InVars {} OutVars{~j2~0=v_~j2~0_1} AuxVars[] AssignedVars[~j2~0]" "[264] L37-6-->L37-7: Formula: (= 0 v_~M1~0_3) InVars {} OutVars{~M1~0=v_~M1~0_3} AuxVars[] AssignedVars[~M1~0]" "[278] L37-7-->L-1-1: Formula: (= 0 v_~M2~0_1) InVars {} OutVars{~M2~0=v_~M2~0_1} AuxVars[] AssignedVars[~M2~0]" "[309] L-1-1-->L-1-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1]" "[310] L-1-2-->L86: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t4~0#1=|v_ULTIMATE.start_main_~t4~0#1_2|, ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_2|, ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_2|, ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_2|, ULTIMATE.start_main_~t3~0#1=|v_ULTIMATE.start_main_~t3~0#1_2|, ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_2|, ULTIMATE.start_main_#t~nondet18#1=|v_ULTIMATE.start_main_#t~nondet18#1_2|, ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_2|, ULTIMATE.start_main_#t~pre17#1=|v_ULTIMATE.start_main_#t~pre17#1_2|, ULTIMATE.start_main_#t~nondet14#1=|v_ULTIMATE.start_main_#t~nondet14#1_2|, ULTIMATE.start_main_#t~pre19#1=|v_ULTIMATE.start_main_#t~pre19#1_2|, ULTIMATE.start_main_~t1~0#1=|v_ULTIMATE.start_main_~t1~0#1_2|, ULTIMATE.start_main_#t~nondet16#1=|v_ULTIMATE.start_main_#t~nondet16#1_2|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_2|, ULTIMATE.start_main_#t~nondet20#1=|v_ULTIMATE.start_main_#t~nondet20#1_2|, ULTIMATE.start_main_~t2~0#1=|v_ULTIMATE.start_main_~t2~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t4~0#1, ULTIMATE.start_main_#t~pre13#1, ULTIMATE.start_main_#t~nondet10#1, ULTIMATE.start_main_#t~nondet9#1, ULTIMATE.start_main_~t3~0#1, ULTIMATE.start_main_#t~pre15#1, ULTIMATE.start_main_#t~nondet18#1, ULTIMATE.start_main_#t~nondet12#1, ULTIMATE.start_main_#t~pre17#1, ULTIMATE.start_main_#t~nondet14#1, ULTIMATE.start_main_#t~pre19#1, ULTIMATE.start_main_~t1~0#1, ULTIMATE.start_main_#t~nondet16#1, ULTIMATE.start_main_#t~nondet11#1, ULTIMATE.start_main_#t~nondet20#1, ULTIMATE.start_main_~t2~0#1]" "[214] L86-->L86-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t1~0#1=|v_ULTIMATE.start_main_~t1~0#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t1~0#1]" "[269] L86-1-->L86-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t2~0#1=|v_ULTIMATE.start_main_~t2~0#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t2~0#1]" "[319] L86-2-->L86-3: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t3~0#1=|v_ULTIMATE.start_main_~t3~0#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t3~0#1]" "[250] L86-3-->L88: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t4~0#1=|v_ULTIMATE.start_main_~t4~0#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t4~0#1]" "[282] L88-->L88-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet9#1]" "[302] L88-1-->L88-2: Formula: (= |v_ULTIMATE.start_main_#t~nondet9#1_4| v_~N1~0_4) InVars {ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_4|} OutVars{ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_4|, ~N1~0=v_~N1~0_4} AuxVars[] AssignedVars[~N1~0]" "[218] L88-2-->L89: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet9#1]" "[267] L89-->L89-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet10#1]" "[249] L89-1-->L89-2: Formula: (= |v_ULTIMATE.start_main_#t~nondet10#1_4| v_~N2~0_4) InVars {ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_4|} OutVars{ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_4|, ~N2~0=v_~N2~0_4} AuxVars[] AssignedVars[~N2~0]" "[273] L89-2-->L90: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet10#1]" "[306] L90-->L90-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet11#1]" "[228] L90-1-->L90-2: Formula: (= |v_ULTIMATE.start_main_#t~nondet11#1_4| v_~M1~0_4) InVars {ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_4|} OutVars{ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_4|, ~M1~0=v_~M1~0_4} AuxVars[] AssignedVars[~M1~0]" "[239] L90-2-->L91: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet11#1]" "[229] L91-->L91-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet12#1]" "[240] L91-1-->L91-2: Formula: (= |v_ULTIMATE.start_main_#t~nondet12#1_4| v_~M2~0_2) InVars {ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_4|} OutVars{~M2~0=v_~M2~0_2, ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_4|} AuxVars[] AssignedVars[~M2~0]" "[265] L91-2-->L92: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet12#1]" "[298] L92-->L92-1: Formula: (= (ite (and (= v_~M1~0_5 v_~N1~0_5) (= v_~N1~0_5 v_~N2~0_5) (= v_~M2~0_3 v_~N1~0_5)) 1 0) |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_4|) InVars {~M1~0=v_~M1~0_5, ~N1~0=v_~N1~0_5, ~N2~0=v_~N2~0_5, ~M2~0=v_~M2~0_3} OutVars{~M1~0=v_~M1~0_5, ~N1~0=v_~N1~0_5, ~N2~0=v_~N2~0_5, ~M2~0=v_~M2~0_3, ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_#in~cond#1]" "[292] L92-1-->L33: Formula: true InVars {} OutVars{ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_~cond#1]" "[226] L33-->L34: Formula: (= |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_5| |v_ULTIMATE.start_assume_abort_if_not_~cond#1_7|) InVars {ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_5|} OutVars{ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_7|, ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_~cond#1]" "[235] L34-->L33-1: Formula: (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_9| 0)) InVars {ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_9|} OutVars{ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_9|} AuxVars[] AssignedVars[]" "[251] L33-1-->L92-2: Formula: true InVars {} OutVars{ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_10|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_~cond#1]" "[259] L92-2-->L95: Formula: true InVars {} OutVars{ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_#in~cond#1]" "[279] L95-->L95-1: Formula: (= |v_ULTIMATE.start_main_#t~pre13#1_3| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre13#1]" "[289] L95-1-->L95-2: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks]" "[290] L95-2-->L95-3: Formula: (= |v_ULTIMATE.start_main_~t1~0#1_4| |v_ULTIMATE.start_main_#t~pre13#1_4|) InVars {ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_4|} OutVars{ULTIMATE.start_main_~t1~0#1=|v_ULTIMATE.start_main_~t1~0#1_4|, ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t1~0#1]" "[352] L95-3-->$Ultimate##0: Formula: (and (= |v_thread1Thread1of1ForFork2_#in~_argptr.offset_4| 0) (= |v_ULTIMATE.start_main_#t~pre13#1_7| v_thread1Thread1of1ForFork2_thidvar0_2) (= 0 v_thread1Thread1of1ForFork2_thidvar1_2) (= |v_thread1Thread1of1ForFork2_#in~_argptr.base_4| 0)) InVars {ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_7|} OutVars{thread1Thread1of1ForFork2_thidvar1=v_thread1Thread1of1ForFork2_thidvar1_2, thread1Thread1of1ForFork2_thidvar0=v_thread1Thread1of1ForFork2_thidvar0_2, thread1Thread1of1ForFork2_#res.base=|v_thread1Thread1of1ForFork2_#res.base_4|, ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_7|, thread1Thread1of1ForFork2_#t~post1=|v_thread1Thread1of1ForFork2_#t~post1_4|, thread1Thread1of1ForFork2_#t~post2=|v_thread1Thread1of1ForFork2_#t~post2_4|, thread1Thread1of1ForFork2_~_argptr.base=v_thread1Thread1of1ForFork2_~_argptr.base_4, thread1Thread1of1ForFork2_#res.offset=|v_thread1Thread1of1ForFork2_#res.offset_4|, thread1Thread1of1ForFork2_#in~_argptr.offset=|v_thread1Thread1of1ForFork2_#in~_argptr.offset_4|, thread1Thread1of1ForFork2_~_argptr.offset=v_thread1Thread1of1ForFork2_~_argptr.offset_4, thread1Thread1of1ForFork2_#in~_argptr.base=|v_thread1Thread1of1ForFork2_#in~_argptr.base_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_thidvar1, thread1Thread1of1ForFork2_thidvar0, thread1Thread1of1ForFork2_#res.base, thread1Thread1of1ForFork2_#t~post1, thread1Thread1of1ForFork2_#t~post2, thread1Thread1of1ForFork2_~_argptr.base, thread1Thread1of1ForFork2_#res.offset, thread1Thread1of1ForFork2_#in~_argptr.offset, thread1Thread1of1ForFork2_~_argptr.offset, thread1Thread1of1ForFork2_#in~_argptr.base]" "[320] $Ultimate##0-->L44: Formula: (and (= |v_thread1Thread1of1ForFork2_#in~_argptr.offset_1| v_thread1Thread1of1ForFork2_~_argptr.offset_1) (= v_thread1Thread1of1ForFork2_~_argptr.base_1 |v_thread1Thread1of1ForFork2_#in~_argptr.base_1|)) InVars {thread1Thread1of1ForFork2_#in~_argptr.offset=|v_thread1Thread1of1ForFork2_#in~_argptr.offset_1|, thread1Thread1of1ForFork2_#in~_argptr.base=|v_thread1Thread1of1ForFork2_#in~_argptr.base_1|} OutVars{thread1Thread1of1ForFork2_~_argptr.base=v_thread1Thread1of1ForFork2_~_argptr.base_1, thread1Thread1of1ForFork2_#in~_argptr.offset=|v_thread1Thread1of1ForFork2_#in~_argptr.offset_1|, thread1Thread1of1ForFork2_~_argptr.offset=v_thread1Thread1of1ForFork2_~_argptr.offset_1, thread1Thread1of1ForFork2_#in~_argptr.base=|v_thread1Thread1of1ForFork2_#in~_argptr.base_1|} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_~_argptr.base, thread1Thread1of1ForFork2_~_argptr.offset]" "[322] L44-->L41: Formula: (< v_~i1~0_1 v_~N1~0_1) InVars {~i1~0=v_~i1~0_1, ~N1~0=v_~N1~0_1} OutVars{~i1~0=v_~i1~0_1, ~N1~0=v_~N1~0_1} AuxVars[] AssignedVars[]" "[243] L95-4-->L95-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre13#1]" "[324] L41-->L44: Formula: (and (= (+ v_~counter~0_22 1) v_~counter~0_21) (= v_~i1~0_16 (+ v_~i1~0_17 1))) InVars {~counter~0=v_~counter~0_22, ~i1~0=v_~i1~0_17} OutVars{thread1Thread1of1ForFork2_#t~post2=|v_thread1Thread1of1ForFork2_#t~post2_1|, ~counter~0=v_~counter~0_21, ~i1~0=v_~i1~0_16, thread1Thread1of1ForFork2_#t~post1=|v_thread1Thread1of1ForFork2_#t~post1_1|} AuxVars[] AssignedVars[~counter~0, thread1Thread1of1ForFork2_#t~post1, thread1Thread1of1ForFork2_#t~post2, ~i1~0]" "[213] L95-5-->L96: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet14#1=|v_ULTIMATE.start_main_#t~nondet14#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet14#1]" "[322] L44-->L41: Formula: (< v_~i1~0_1 v_~N1~0_1) InVars {~i1~0=v_~i1~0_1, ~N1~0=v_~N1~0_1} OutVars{~i1~0=v_~i1~0_1, ~N1~0=v_~N1~0_1} AuxVars[] AssignedVars[]" "[299] L96-->L96-1: Formula: (= |v_ULTIMATE.start_main_#t~pre15#1_3| |v_#pthreadsForks_4|) InVars {#pthreadsForks=|v_#pthreadsForks_4|} OutVars{#pthreadsForks=|v_#pthreadsForks_4|, ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre15#1]" "[324] L41-->L44: Formula: (and (= (+ v_~counter~0_22 1) v_~counter~0_21) (= v_~i1~0_16 (+ v_~i1~0_17 1))) InVars {~counter~0=v_~counter~0_22, ~i1~0=v_~i1~0_17} OutVars{thread1Thread1of1ForFork2_#t~post2=|v_thread1Thread1of1ForFork2_#t~post2_1|, ~counter~0=v_~counter~0_21, ~i1~0=v_~i1~0_16, thread1Thread1of1ForFork2_#t~post1=|v_thread1Thread1of1ForFork2_#t~post1_1|} AuxVars[] AssignedVars[~counter~0, thread1Thread1of1ForFork2_#t~post1, thread1Thread1of1ForFork2_#t~post2, ~i1~0]" "[266] L96-1-->L96-2: Formula: (= (+ 1 |v_#pthreadsForks_6|) |v_#pthreadsForks_5|) InVars {#pthreadsForks=|v_#pthreadsForks_6|} OutVars{#pthreadsForks=|v_#pthreadsForks_5|} AuxVars[] AssignedVars[#pthreadsForks]" "[322] L44-->L41: Formula: (< v_~i1~0_1 v_~N1~0_1) InVars {~i1~0=v_~i1~0_1, ~N1~0=v_~N1~0_1} OutVars{~i1~0=v_~i1~0_1, ~N1~0=v_~N1~0_1} AuxVars[] AssignedVars[]" "[227] L96-2-->L96-3: Formula: (= |v_ULTIMATE.start_main_~t2~0#1_4| |v_ULTIMATE.start_main_#t~pre15#1_4|) InVars {ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_4|} OutVars{ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_4|, ULTIMATE.start_main_~t2~0#1=|v_ULTIMATE.start_main_~t2~0#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t2~0#1]" "[324] L41-->L44: Formula: (and (= (+ v_~counter~0_22 1) v_~counter~0_21) (= v_~i1~0_16 (+ v_~i1~0_17 1))) InVars {~counter~0=v_~counter~0_22, ~i1~0=v_~i1~0_17} OutVars{thread1Thread1of1ForFork2_#t~post2=|v_thread1Thread1of1ForFork2_#t~post2_1|, ~counter~0=v_~counter~0_21, ~i1~0=v_~i1~0_16, thread1Thread1of1ForFork2_#t~post1=|v_thread1Thread1of1ForFork2_#t~post1_1|} AuxVars[] AssignedVars[~counter~0, thread1Thread1of1ForFork2_#t~post1, thread1Thread1of1ForFork2_#t~post2, ~i1~0]" "[346] L96-3-->$Ultimate##0: Formula: (and (= |v_thread2Thread1of1ForFork0_#in~_argptr#1.offset_4| 0) (= v_thread2Thread1of1ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre15#1_7|) (= |v_thread2Thread1of1ForFork0_#in~_argptr#1.base_4| 0) (= v_thread2Thread1of1ForFork0_thidvar2_2 0) (= v_thread2Thread1of1ForFork0_thidvar1_2 0)) InVars {ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_7|} OutVars{thread2Thread1of1ForFork0_#res#1.offset=|v_thread2Thread1of1ForFork0_#res#1.offset_4|, thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1_4|, thread2Thread1of1ForFork0_#t~post3#1=|v_thread2Thread1of1ForFork0_#t~post3#1_4|, ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_7|, thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1_4|, thread2Thread1of1ForFork0_#in~_argptr#1.offset=|v_thread2Thread1of1ForFork0_#in~_argptr#1.offset_4|, thread2Thread1of1ForFork0_#res#1.base=|v_thread2Thread1of1ForFork0_#res#1.base_4|, thread2Thread1of1ForFork0_#in~_argptr#1.base=|v_thread2Thread1of1ForFork0_#in~_argptr#1.base_4|, thread2Thread1of1ForFork0_thidvar2=v_thread2Thread1of1ForFork0_thidvar2_2, thread2Thread1of1ForFork0_thidvar1=v_thread2Thread1of1ForFork0_thidvar1_2, thread2Thread1of1ForFork0_~_argptr#1.base=|v_thread2Thread1of1ForFork0_~_argptr#1.base_4|, thread2Thread1of1ForFork0_thidvar0=v_thread2Thread1of1ForFork0_thidvar0_2, thread2Thread1of1ForFork0_~_argptr#1.offset=|v_thread2Thread1of1ForFork0_~_argptr#1.offset_4|, thread2Thread1of1ForFork0_#t~post4#1=|v_thread2Thread1of1ForFork0_#t~post4#1_4|} AuxVars[] AssignedVars[thread2Thread1of1ForFork0_#res#1.offset, thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1, thread2Thread1of1ForFork0_#t~post3#1, thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1, thread2Thread1of1ForFork0_#in~_argptr#1.offset, thread2Thread1of1ForFork0_#res#1.base, thread2Thread1of1ForFork0_#in~_argptr#1.base, thread2Thread1of1ForFork0_thidvar2, thread2Thread1of1ForFork0_thidvar1, thread2Thread1of1ForFork0_~_argptr#1.base, thread2Thread1of1ForFork0_thidvar0, thread2Thread1of1ForFork0_~_argptr#1.offset, thread2Thread1of1ForFork0_#t~post4#1]" "[326] $Ultimate##0-->L56: Formula: (and (= |v_thread2Thread1of1ForFork0_~_argptr#1.base_1| |v_thread2Thread1of1ForFork0_#in~_argptr#1.base_1|) (= |v_thread2Thread1of1ForFork0_#in~_argptr#1.offset_1| |v_thread2Thread1of1ForFork0_~_argptr#1.offset_1|)) InVars {thread2Thread1of1ForFork0_#in~_argptr#1.offset=|v_thread2Thread1of1ForFork0_#in~_argptr#1.offset_1|, thread2Thread1of1ForFork0_#in~_argptr#1.base=|v_thread2Thread1of1ForFork0_#in~_argptr#1.base_1|} OutVars{thread2Thread1of1ForFork0_#in~_argptr#1.offset=|v_thread2Thread1of1ForFork0_#in~_argptr#1.offset_1|, thread2Thread1of1ForFork0_~_argptr#1.base=|v_thread2Thread1of1ForFork0_~_argptr#1.base_1|, thread2Thread1of1ForFork0_#in~_argptr#1.base=|v_thread2Thread1of1ForFork0_#in~_argptr#1.base_1|, thread2Thread1of1ForFork0_~_argptr#1.offset=|v_thread2Thread1of1ForFork0_~_argptr#1.offset_1|} AuxVars[] AssignedVars[thread2Thread1of1ForFork0_~_argptr#1.base, thread2Thread1of1ForFork0_~_argptr#1.offset]" "[322] L44-->L41: Formula: (< v_~i1~0_1 v_~N1~0_1) InVars {~i1~0=v_~i1~0_1, ~N1~0=v_~N1~0_1} OutVars{~i1~0=v_~i1~0_1, ~N1~0=v_~N1~0_1} AuxVars[] AssignedVars[]" "[324] L41-->L44: Formula: (and (= (+ v_~counter~0_22 1) v_~counter~0_21) (= v_~i1~0_16 (+ v_~i1~0_17 1))) InVars {~counter~0=v_~counter~0_22, ~i1~0=v_~i1~0_17} OutVars{thread1Thread1of1ForFork2_#t~post2=|v_thread1Thread1of1ForFork2_#t~post2_1|, ~counter~0=v_~counter~0_21, ~i1~0=v_~i1~0_16, thread1Thread1of1ForFork2_#t~post1=|v_thread1Thread1of1ForFork2_#t~post1_1|} AuxVars[] AssignedVars[~counter~0, thread1Thread1of1ForFork2_#t~post1, thread1Thread1of1ForFork2_#t~post2, ~i1~0]" "[321] L44-->L47: Formula: (<= v_~N1~0_2 v_~i1~0_4) InVars {~i1~0=v_~i1~0_4, ~N1~0=v_~N1~0_2} OutVars{~i1~0=v_~i1~0_4, ~N1~0=v_~N1~0_2} AuxVars[] AssignedVars[]" "[323] L47-->thread1FINAL: Formula: (and (= |v_thread1Thread1of1ForFork2_#res.offset_1| 0) (= |v_thread1Thread1of1ForFork2_#res.base_1| 0)) InVars {} OutVars{thread1Thread1of1ForFork2_#res.base=|v_thread1Thread1of1ForFork2_#res.base_1|, thread1Thread1of1ForFork2_#res.offset=|v_thread1Thread1of1ForFork2_#res.offset_1|} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_#res.base, thread1Thread1of1ForFork2_#res.offset]" [2025-04-26 18:32:11,395 INFO L754 eck$LassoCheckResult]: Loop: "[328] L56-->L52: Formula: (< v_~i2~0_4 v_~N2~0_2) InVars {~i2~0=v_~i2~0_4, ~N2~0=v_~N2~0_2} OutVars{~i2~0=v_~i2~0_4, ~N2~0=v_~N2~0_2} AuxVars[] AssignedVars[]" "[330] L52-->L56: Formula: (and (not (= (ite (< 0 v_~counter~0_96) 1 0) 0)) (= (+ v_~counter~0_95 1) v_~counter~0_96) (= v_~i2~0_20 (+ v_~i2~0_21 1))) InVars {~counter~0=v_~counter~0_96, ~i2~0=v_~i2~0_21} OutVars{thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1_1|, ~counter~0=v_~counter~0_95, thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1_1|, ~i2~0=v_~i2~0_20, thread2Thread1of1ForFork0_#t~post3#1=|v_thread2Thread1of1ForFork0_#t~post3#1_1|, thread2Thread1of1ForFork0_#t~post4#1=|v_thread2Thread1of1ForFork0_#t~post4#1_1|} AuxVars[] AssignedVars[~counter~0, thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1, thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1, ~i2~0, thread2Thread1of1ForFork0_#t~post3#1, thread2Thread1of1ForFork0_#t~post4#1]" [2025-04-26 18:32:11,396 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 18:32:11,396 INFO L85 PathProgramCache]: Analyzing trace with hash -1879923366, now seen corresponding path program 1 times [2025-04-26 18:32:11,396 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 18:32:11,396 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1193323148] [2025-04-26 18:32:11,396 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 18:32:11,396 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 18:32:11,404 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 61 statements into 1 equivalence classes. [2025-04-26 18:32:11,413 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 61 of 61 statements. [2025-04-26 18:32:11,413 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:11,413 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 18:32:11,413 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 18:32:11,415 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 61 statements into 1 equivalence classes. [2025-04-26 18:32:11,428 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 61 of 61 statements. [2025-04-26 18:32:11,429 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:11,429 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 18:32:11,439 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 18:32:11,439 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 18:32:11,439 INFO L85 PathProgramCache]: Analyzing trace with hash 11459, now seen corresponding path program 2 times [2025-04-26 18:32:11,439 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 18:32:11,439 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [220111007] [2025-04-26 18:32:11,439 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-04-26 18:32:11,439 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 18:32:11,442 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 2 statements into 1 equivalence classes. [2025-04-26 18:32:11,443 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 18:32:11,444 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2025-04-26 18:32:11,444 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 18:32:11,444 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 18:32:11,445 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 18:32:11,446 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 18:32:11,446 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:11,446 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 18:32:11,447 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 18:32:11,447 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 18:32:11,447 INFO L85 PathProgramCache]: Analyzing trace with hash 1574887388, now seen corresponding path program 1 times [2025-04-26 18:32:11,447 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 18:32:11,447 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [417308901] [2025-04-26 18:32:11,447 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 18:32:11,447 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 18:32:11,452 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 63 statements into 1 equivalence classes. [2025-04-26 18:32:11,458 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 63 of 63 statements. [2025-04-26 18:32:11,458 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:11,458 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 18:32:11,458 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 18:32:11,461 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 63 statements into 1 equivalence classes. [2025-04-26 18:32:11,466 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 63 of 63 statements. [2025-04-26 18:32:11,466 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:11,466 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 18:32:11,475 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 18:32:11,503 INFO L206 LassoAnalysis]: Preferences: [2025-04-26 18:32:11,503 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-04-26 18:32:11,503 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-04-26 18:32:11,503 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-04-26 18:32:11,503 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2025-04-26 18:32:11,503 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:11,503 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-04-26 18:32:11,503 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-04-26 18:32:11,503 INFO L132 ssoRankerPreferences]: Filename of dumped script: popl20-proofs-counter-add-4-semi-Q67.wvr.c_petrified1_Iteration3_Loop [2025-04-26 18:32:11,503 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-04-26 18:32:11,503 INFO L243 LassoAnalysis]: Starting lasso preprocessing... [2025-04-26 18:32:11,504 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:11,506 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:11,508 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:11,510 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:11,512 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:11,515 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:11,517 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:11,519 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:11,521 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:11,524 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:11,526 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:11,528 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:11,530 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:11,535 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:11,618 INFO L261 LassoAnalysis]: Preprocessing complete. [2025-04-26 18:32:11,618 INFO L367 LassoAnalysis]: Checking for nontermination... [2025-04-26 18:32:11,618 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:11,618 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:11,620 INFO L229 MonitoredProcess]: Starting monitored process 27 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:11,622 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (27)] Waiting until timeout for monitored process [2025-04-26 18:32:11,623 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 18:32:11,624 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:11,643 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 18:32:11,643 INFO L403 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {v_rep#funAddr~thread4.base_5=-1} Honda state: {v_rep#funAddr~thread4.base_5=-1} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-04-26 18:32:11,649 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (27)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:11,649 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:11,649 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:11,652 INFO L229 MonitoredProcess]: Starting monitored process 28 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:11,653 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (28)] Waiting until timeout for monitored process [2025-04-26 18:32:11,654 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 18:32:11,654 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:11,673 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 18:32:11,673 INFO L403 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {v_rep#funAddr~thread1.base_5=-1} Honda state: {v_rep#funAddr~thread1.base_5=-1} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-04-26 18:32:11,679 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (28)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:11,679 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:11,680 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:11,681 INFO L229 MonitoredProcess]: Starting monitored process 29 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:11,683 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (29)] Waiting until timeout for monitored process [2025-04-26 18:32:11,684 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 18:32:11,684 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:11,704 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 18:32:11,704 INFO L403 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {v_rep#funAddr~thread3.base_5=-1} Honda state: {v_rep#funAddr~thread3.base_5=-1} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-04-26 18:32:11,710 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (29)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:11,710 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:11,710 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:11,712 INFO L229 MonitoredProcess]: Starting monitored process 30 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:11,714 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (30)] Waiting until timeout for monitored process [2025-04-26 18:32:11,715 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 18:32:11,715 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:11,734 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 18:32:11,734 INFO L403 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {v_rep#funAddr~thread2.base_5=-1} Honda state: {v_rep#funAddr~thread2.base_5=-1} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-04-26 18:32:11,739 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (30)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:11,740 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:11,740 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:11,741 INFO L229 MonitoredProcess]: Starting monitored process 31 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:11,742 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (31)] Waiting until timeout for monitored process [2025-04-26 18:32:11,744 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 18:32:11,744 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:11,763 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (31)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:11,764 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:11,764 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:11,766 INFO L229 MonitoredProcess]: Starting monitored process 32 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:11,768 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (32)] Waiting until timeout for monitored process [2025-04-26 18:32:11,769 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2025-04-26 18:32:11,769 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:11,798 INFO L407 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2025-04-26 18:32:11,805 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (32)] Ended with exit code 0 [2025-04-26 18:32:11,805 INFO L206 LassoAnalysis]: Preferences: [2025-04-26 18:32:11,805 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-04-26 18:32:11,805 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-04-26 18:32:11,805 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-04-26 18:32:11,806 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-04-26 18:32:11,806 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:11,806 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-04-26 18:32:11,806 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-04-26 18:32:11,806 INFO L132 ssoRankerPreferences]: Filename of dumped script: popl20-proofs-counter-add-4-semi-Q67.wvr.c_petrified1_Iteration3_Loop [2025-04-26 18:32:11,806 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-04-26 18:32:11,806 INFO L243 LassoAnalysis]: Starting lasso preprocessing... [2025-04-26 18:32:11,807 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:11,812 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:11,815 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:11,818 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:11,820 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:11,825 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:11,826 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:11,829 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:11,831 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:11,833 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:11,836 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:11,839 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:11,841 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:11,846 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:11,929 INFO L261 LassoAnalysis]: Preprocessing complete. [2025-04-26 18:32:11,929 INFO L453 LassoAnalysis]: Using template 'affine'. [2025-04-26 18:32:11,929 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:11,929 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:11,934 INFO L229 MonitoredProcess]: Starting monitored process 33 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:11,937 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (33)] Waiting until timeout for monitored process [2025-04-26 18:32:11,938 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 [2025-04-26 18:32:11,947 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 18:32:11,947 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 18:32:11,948 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 18:32:11,948 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 18:32:11,949 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 18:32:11,949 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 18:32:11,951 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 18:32:11,958 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (33)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:11,958 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:11,958 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:11,960 INFO L229 MonitoredProcess]: Starting monitored process 34 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:11,961 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (34)] Waiting until timeout for monitored process [2025-04-26 18:32:11,962 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 [2025-04-26 18:32:11,972 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 18:32:11,972 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 18:32:11,972 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 18:32:11,973 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 18:32:11,974 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 18:32:11,974 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 18:32:11,976 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 18:32:11,982 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (34)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:11,982 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:11,982 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:11,984 INFO L229 MonitoredProcess]: Starting monitored process 35 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:11,985 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (35)] Waiting until timeout for monitored process [2025-04-26 18:32:11,987 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 [2025-04-26 18:32:11,997 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 18:32:11,997 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 18:32:11,997 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 18:32:11,997 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 18:32:11,998 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 18:32:11,998 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 18:32:12,001 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 18:32:12,006 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (35)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:12,007 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:12,007 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:12,009 INFO L229 MonitoredProcess]: Starting monitored process 36 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:12,010 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (36)] Waiting until timeout for monitored process [2025-04-26 18:32:12,011 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 [2025-04-26 18:32:12,021 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 18:32:12,021 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 18:32:12,021 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 18:32:12,022 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 18:32:12,023 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 18:32:12,023 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 18:32:12,025 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 18:32:12,031 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (36)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:12,031 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:12,031 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:12,033 INFO L229 MonitoredProcess]: Starting monitored process 37 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:12,034 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (37)] Waiting until timeout for monitored process [2025-04-26 18:32:12,035 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 [2025-04-26 18:32:12,045 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 18:32:12,045 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-04-26 18:32:12,045 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 18:32:12,045 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 18:32:12,045 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 18:32:12,046 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-04-26 18:32:12,046 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-04-26 18:32:12,047 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-04-26 18:32:12,049 INFO L436 ModelExtractionUtils]: Simplification made 2 calls to the SMT solver. [2025-04-26 18:32:12,049 INFO L437 ModelExtractionUtils]: 1 out of 3 variables were initially zero. Simplification set additionally 0 variables to zero. [2025-04-26 18:32:12,049 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:12,049 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:12,051 INFO L229 MonitoredProcess]: Starting monitored process 38 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:12,052 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (38)] Waiting until timeout for monitored process [2025-04-26 18:32:12,053 INFO L436 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-04-26 18:32:12,056 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (38)] Ended with exit code 0 [2025-04-26 18:32:12,056 INFO L439 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2025-04-26 18:32:12,057 INFO L476 LassoAnalysis]: Proved termination. [2025-04-26 18:32:12,057 INFO L478 LassoAnalysis]: Termination argument consisting of: Ranking function f(~counter~0) = 1*~counter~0 Supporting invariants [] [2025-04-26 18:32:12,063 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (37)] Ended with exit code 0 [2025-04-26 18:32:12,063 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2025-04-26 18:32:12,073 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 18:32:12,088 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 61 statements into 1 equivalence classes. [2025-04-26 18:32:12,111 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 61 of 61 statements. [2025-04-26 18:32:12,112 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:12,112 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 18:32:12,113 INFO L256 TraceCheckSpWp]: Trace formula consists of 130 conjuncts, 2 conjuncts are in the unsatisfiable core [2025-04-26 18:32:12,114 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 18:32:12,175 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 18:32:12,176 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 18:32:12,176 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:12,176 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 18:32:12,177 WARN L254 TraceCheckSpWp]: Trace formula consists of 8 conjuncts, 4 conjuncts are in the unsatisfiable core [2025-04-26 18:32:12,177 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 18:32:12,178 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-04-26 18:32:12,179 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 1 loop predicates [2025-04-26 18:32:12,179 INFO L70 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 3118 states and 7112 transitions. cyclomatic complexity: 4523 Second operand has 3 states, 3 states have (on average 19.0) internal successors, (in total 57), 3 states have internal predecessors, (57), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:12,253 INFO L74 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 3118 states and 7112 transitions. cyclomatic complexity: 4523. Second operand has 3 states, 3 states have (on average 19.0) internal successors, (in total 57), 3 states have internal predecessors, (57), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) Result 5938 states and 13558 transitions. Complement of second has 5 states. [2025-04-26 18:32:12,254 INFO L140 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 3 states 1 stem states 1 non-accepting loop states 1 accepting loop states [2025-04-26 18:32:12,255 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 19.0) internal successors, (in total 57), 3 states have internal predecessors, (57), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:12,255 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 155 transitions. [2025-04-26 18:32:12,255 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 3 states and 155 transitions. Stem has 61 letters. Loop has 2 letters. [2025-04-26 18:32:12,257 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 18:32:12,257 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 3 states and 155 transitions. Stem has 63 letters. Loop has 2 letters. [2025-04-26 18:32:12,258 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 18:32:12,258 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 3 states and 155 transitions. Stem has 61 letters. Loop has 4 letters. [2025-04-26 18:32:12,258 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 18:32:12,258 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 5938 states and 13558 transitions. [2025-04-26 18:32:12,335 INFO L131 ngComponentsAnalysis]: Automaton has 275 accepting balls. 683 [2025-04-26 18:32:12,353 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 5938 states to 3055 states and 6595 transitions. [2025-04-26 18:32:12,353 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1867 [2025-04-26 18:32:12,356 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 2273 [2025-04-26 18:32:12,356 INFO L74 IsDeterministic]: Start isDeterministic. Operand 3055 states and 6595 transitions. [2025-04-26 18:32:12,356 INFO L81 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-04-26 18:32:12,356 INFO L218 hiAutomatonCegarLoop]: Abstraction has 3055 states and 6595 transitions. [2025-04-26 18:32:12,360 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3055 states and 6595 transitions. [2025-04-26 18:32:12,391 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3055 to 2394. [2025-04-26 18:32:12,395 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2394 states, 2394 states have (on average 2.246449456975773) internal successors, (in total 5378), 2393 states have internal predecessors, (5378), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:12,399 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2394 states to 2394 states and 5378 transitions. [2025-04-26 18:32:12,399 INFO L240 hiAutomatonCegarLoop]: Abstraction has 2394 states and 5378 transitions. [2025-04-26 18:32:12,399 INFO L438 stractBuchiCegarLoop]: Abstraction has 2394 states and 5378 transitions. [2025-04-26 18:32:12,399 INFO L340 stractBuchiCegarLoop]: ======== Iteration 4 ============ [2025-04-26 18:32:12,399 INFO L73 BuchiIsEmpty]: Start buchiIsEmpty. Operand 2394 states and 5378 transitions. [2025-04-26 18:32:12,408 INFO L131 ngComponentsAnalysis]: Automaton has 275 accepting balls. 683 [2025-04-26 18:32:12,408 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-04-26 18:32:12,408 INFO L120 BuchiIsEmpty]: Starting construction of run [2025-04-26 18:32:12,410 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-04-26 18:32:12,410 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1] [2025-04-26 18:32:12,411 INFO L752 eck$LassoCheckResult]: Stem: "[237] $Ultimate##0-->L-1: Formula: (= (select |v_#valid_1| 0) 0) InVars {#valid=|v_#valid_1|} OutVars{#valid=|v_#valid_1|} AuxVars[] AssignedVars[]" "[241] L-1-->L21: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[]" "[283] L21-->L21-1: Formula: (and (= (select |v_#valid_2| 1) 1) (= 2 (select |v_#length_1| 1))) InVars {#length=|v_#length_1|, #valid=|v_#valid_2|} OutVars{#length=|v_#length_1|, #valid=|v_#valid_2|} AuxVars[] AssignedVars[]" "[303] L21-1-->L21-2: Formula: (= 48 (select (select |v_#memory_int_1| 1) 0)) InVars {#memory_int=|v_#memory_int_1|} OutVars{#memory_int=|v_#memory_int_1|} AuxVars[] AssignedVars[]" "[247] L21-2-->L21-3: Formula: (= (select (select |v_#memory_int_2| 1) 1) 0) InVars {#memory_int=|v_#memory_int_2|} OutVars{#memory_int=|v_#memory_int_2|} AuxVars[] AssignedVars[]" "[277] L21-3-->L21-4: Formula: (and (= 43 (select |v_#length_2| 2)) (= (select |v_#valid_3| 2) 1)) InVars {#length=|v_#length_2|, #valid=|v_#valid_3|} OutVars{#length=|v_#length_2|, #valid=|v_#valid_3|} AuxVars[] AssignedVars[]" "[261] L21-4-->L37: Formula: (= v_~i1~0_5 0) InVars {} OutVars{~i1~0=v_~i1~0_5} AuxVars[] AssignedVars[~i1~0]" "[255] L37-->L37-1: Formula: (= v_~i2~0_5 0) InVars {} OutVars{~i2~0=v_~i2~0_5} AuxVars[] AssignedVars[~i2~0]" "[256] L37-1-->L37-2: Formula: (= 0 v_~N1~0_3) InVars {} OutVars{~N1~0=v_~N1~0_3} AuxVars[] AssignedVars[~N1~0]" "[221] L37-2-->L37-3: Formula: (= 0 v_~N2~0_3) InVars {} OutVars{~N2~0=v_~N2~0_3} AuxVars[] AssignedVars[~N2~0]" "[238] L37-3-->L37-4: Formula: (= v_~counter~0_9 0) InVars {} OutVars{~counter~0=v_~counter~0_9} AuxVars[] AssignedVars[~counter~0]" "[297] L37-4-->L37-5: Formula: (= v_~j1~0_5 0) InVars {} OutVars{~j1~0=v_~j1~0_5} AuxVars[] AssignedVars[~j1~0]" "[271] L37-5-->L37-6: Formula: (= v_~j2~0_1 0) InVars {} OutVars{~j2~0=v_~j2~0_1} AuxVars[] AssignedVars[~j2~0]" "[264] L37-6-->L37-7: Formula: (= 0 v_~M1~0_3) InVars {} OutVars{~M1~0=v_~M1~0_3} AuxVars[] AssignedVars[~M1~0]" "[278] L37-7-->L-1-1: Formula: (= 0 v_~M2~0_1) InVars {} OutVars{~M2~0=v_~M2~0_1} AuxVars[] AssignedVars[~M2~0]" "[309] L-1-1-->L-1-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1]" "[310] L-1-2-->L86: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t4~0#1=|v_ULTIMATE.start_main_~t4~0#1_2|, ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_2|, ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_2|, ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_2|, ULTIMATE.start_main_~t3~0#1=|v_ULTIMATE.start_main_~t3~0#1_2|, ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_2|, ULTIMATE.start_main_#t~nondet18#1=|v_ULTIMATE.start_main_#t~nondet18#1_2|, ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_2|, ULTIMATE.start_main_#t~pre17#1=|v_ULTIMATE.start_main_#t~pre17#1_2|, ULTIMATE.start_main_#t~nondet14#1=|v_ULTIMATE.start_main_#t~nondet14#1_2|, ULTIMATE.start_main_#t~pre19#1=|v_ULTIMATE.start_main_#t~pre19#1_2|, ULTIMATE.start_main_~t1~0#1=|v_ULTIMATE.start_main_~t1~0#1_2|, ULTIMATE.start_main_#t~nondet16#1=|v_ULTIMATE.start_main_#t~nondet16#1_2|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_2|, ULTIMATE.start_main_#t~nondet20#1=|v_ULTIMATE.start_main_#t~nondet20#1_2|, ULTIMATE.start_main_~t2~0#1=|v_ULTIMATE.start_main_~t2~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t4~0#1, ULTIMATE.start_main_#t~pre13#1, ULTIMATE.start_main_#t~nondet10#1, ULTIMATE.start_main_#t~nondet9#1, ULTIMATE.start_main_~t3~0#1, ULTIMATE.start_main_#t~pre15#1, ULTIMATE.start_main_#t~nondet18#1, ULTIMATE.start_main_#t~nondet12#1, ULTIMATE.start_main_#t~pre17#1, ULTIMATE.start_main_#t~nondet14#1, ULTIMATE.start_main_#t~pre19#1, ULTIMATE.start_main_~t1~0#1, ULTIMATE.start_main_#t~nondet16#1, ULTIMATE.start_main_#t~nondet11#1, ULTIMATE.start_main_#t~nondet20#1, ULTIMATE.start_main_~t2~0#1]" "[214] L86-->L86-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t1~0#1=|v_ULTIMATE.start_main_~t1~0#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t1~0#1]" "[269] L86-1-->L86-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t2~0#1=|v_ULTIMATE.start_main_~t2~0#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t2~0#1]" "[319] L86-2-->L86-3: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t3~0#1=|v_ULTIMATE.start_main_~t3~0#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t3~0#1]" "[250] L86-3-->L88: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t4~0#1=|v_ULTIMATE.start_main_~t4~0#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t4~0#1]" "[282] L88-->L88-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet9#1]" "[302] L88-1-->L88-2: Formula: (= |v_ULTIMATE.start_main_#t~nondet9#1_4| v_~N1~0_4) InVars {ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_4|} OutVars{ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_4|, ~N1~0=v_~N1~0_4} AuxVars[] AssignedVars[~N1~0]" "[218] L88-2-->L89: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet9#1]" "[267] L89-->L89-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet10#1]" "[249] L89-1-->L89-2: Formula: (= |v_ULTIMATE.start_main_#t~nondet10#1_4| v_~N2~0_4) InVars {ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_4|} OutVars{ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_4|, ~N2~0=v_~N2~0_4} AuxVars[] AssignedVars[~N2~0]" "[273] L89-2-->L90: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet10#1]" "[306] L90-->L90-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet11#1]" "[228] L90-1-->L90-2: Formula: (= |v_ULTIMATE.start_main_#t~nondet11#1_4| v_~M1~0_4) InVars {ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_4|} OutVars{ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_4|, ~M1~0=v_~M1~0_4} AuxVars[] AssignedVars[~M1~0]" "[239] L90-2-->L91: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet11#1]" "[229] L91-->L91-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet12#1]" "[240] L91-1-->L91-2: Formula: (= |v_ULTIMATE.start_main_#t~nondet12#1_4| v_~M2~0_2) InVars {ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_4|} OutVars{~M2~0=v_~M2~0_2, ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_4|} AuxVars[] AssignedVars[~M2~0]" "[265] L91-2-->L92: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet12#1]" "[298] L92-->L92-1: Formula: (= (ite (and (= v_~M1~0_5 v_~N1~0_5) (= v_~N1~0_5 v_~N2~0_5) (= v_~M2~0_3 v_~N1~0_5)) 1 0) |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_4|) InVars {~M1~0=v_~M1~0_5, ~N1~0=v_~N1~0_5, ~N2~0=v_~N2~0_5, ~M2~0=v_~M2~0_3} OutVars{~M1~0=v_~M1~0_5, ~N1~0=v_~N1~0_5, ~N2~0=v_~N2~0_5, ~M2~0=v_~M2~0_3, ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_#in~cond#1]" "[292] L92-1-->L33: Formula: true InVars {} OutVars{ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_~cond#1]" "[226] L33-->L34: Formula: (= |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_5| |v_ULTIMATE.start_assume_abort_if_not_~cond#1_7|) InVars {ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_5|} OutVars{ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_7|, ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_~cond#1]" "[235] L34-->L33-1: Formula: (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_9| 0)) InVars {ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_9|} OutVars{ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_9|} AuxVars[] AssignedVars[]" "[251] L33-1-->L92-2: Formula: true InVars {} OutVars{ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_10|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_~cond#1]" "[259] L92-2-->L95: Formula: true InVars {} OutVars{ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_#in~cond#1]" "[279] L95-->L95-1: Formula: (= |v_ULTIMATE.start_main_#t~pre13#1_3| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre13#1]" "[289] L95-1-->L95-2: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks]" "[290] L95-2-->L95-3: Formula: (= |v_ULTIMATE.start_main_~t1~0#1_4| |v_ULTIMATE.start_main_#t~pre13#1_4|) InVars {ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_4|} OutVars{ULTIMATE.start_main_~t1~0#1=|v_ULTIMATE.start_main_~t1~0#1_4|, ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t1~0#1]" "[352] L95-3-->$Ultimate##0: Formula: (and (= |v_thread1Thread1of1ForFork2_#in~_argptr.offset_4| 0) (= |v_ULTIMATE.start_main_#t~pre13#1_7| v_thread1Thread1of1ForFork2_thidvar0_2) (= 0 v_thread1Thread1of1ForFork2_thidvar1_2) (= |v_thread1Thread1of1ForFork2_#in~_argptr.base_4| 0)) InVars {ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_7|} OutVars{thread1Thread1of1ForFork2_thidvar1=v_thread1Thread1of1ForFork2_thidvar1_2, thread1Thread1of1ForFork2_thidvar0=v_thread1Thread1of1ForFork2_thidvar0_2, thread1Thread1of1ForFork2_#res.base=|v_thread1Thread1of1ForFork2_#res.base_4|, ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_7|, thread1Thread1of1ForFork2_#t~post1=|v_thread1Thread1of1ForFork2_#t~post1_4|, thread1Thread1of1ForFork2_#t~post2=|v_thread1Thread1of1ForFork2_#t~post2_4|, thread1Thread1of1ForFork2_~_argptr.base=v_thread1Thread1of1ForFork2_~_argptr.base_4, thread1Thread1of1ForFork2_#res.offset=|v_thread1Thread1of1ForFork2_#res.offset_4|, thread1Thread1of1ForFork2_#in~_argptr.offset=|v_thread1Thread1of1ForFork2_#in~_argptr.offset_4|, thread1Thread1of1ForFork2_~_argptr.offset=v_thread1Thread1of1ForFork2_~_argptr.offset_4, thread1Thread1of1ForFork2_#in~_argptr.base=|v_thread1Thread1of1ForFork2_#in~_argptr.base_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_thidvar1, thread1Thread1of1ForFork2_thidvar0, thread1Thread1of1ForFork2_#res.base, thread1Thread1of1ForFork2_#t~post1, thread1Thread1of1ForFork2_#t~post2, thread1Thread1of1ForFork2_~_argptr.base, thread1Thread1of1ForFork2_#res.offset, thread1Thread1of1ForFork2_#in~_argptr.offset, thread1Thread1of1ForFork2_~_argptr.offset, thread1Thread1of1ForFork2_#in~_argptr.base]" "[320] $Ultimate##0-->L44: Formula: (and (= |v_thread1Thread1of1ForFork2_#in~_argptr.offset_1| v_thread1Thread1of1ForFork2_~_argptr.offset_1) (= v_thread1Thread1of1ForFork2_~_argptr.base_1 |v_thread1Thread1of1ForFork2_#in~_argptr.base_1|)) InVars {thread1Thread1of1ForFork2_#in~_argptr.offset=|v_thread1Thread1of1ForFork2_#in~_argptr.offset_1|, thread1Thread1of1ForFork2_#in~_argptr.base=|v_thread1Thread1of1ForFork2_#in~_argptr.base_1|} OutVars{thread1Thread1of1ForFork2_~_argptr.base=v_thread1Thread1of1ForFork2_~_argptr.base_1, thread1Thread1of1ForFork2_#in~_argptr.offset=|v_thread1Thread1of1ForFork2_#in~_argptr.offset_1|, thread1Thread1of1ForFork2_~_argptr.offset=v_thread1Thread1of1ForFork2_~_argptr.offset_1, thread1Thread1of1ForFork2_#in~_argptr.base=|v_thread1Thread1of1ForFork2_#in~_argptr.base_1|} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_~_argptr.base, thread1Thread1of1ForFork2_~_argptr.offset]" "[321] L44-->L47: Formula: (<= v_~N1~0_2 v_~i1~0_4) InVars {~i1~0=v_~i1~0_4, ~N1~0=v_~N1~0_2} OutVars{~i1~0=v_~i1~0_4, ~N1~0=v_~N1~0_2} AuxVars[] AssignedVars[]" "[323] L47-->thread1FINAL: Formula: (and (= |v_thread1Thread1of1ForFork2_#res.offset_1| 0) (= |v_thread1Thread1of1ForFork2_#res.base_1| 0)) InVars {} OutVars{thread1Thread1of1ForFork2_#res.base=|v_thread1Thread1of1ForFork2_#res.base_1|, thread1Thread1of1ForFork2_#res.offset=|v_thread1Thread1of1ForFork2_#res.offset_1|} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_#res.base, thread1Thread1of1ForFork2_#res.offset]" "[325] thread1FINAL-->thread1EXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[]" "[243] L95-4-->L95-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre13#1]" "[213] L95-5-->L96: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet14#1=|v_ULTIMATE.start_main_#t~nondet14#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet14#1]" "[299] L96-->L96-1: Formula: (= |v_ULTIMATE.start_main_#t~pre15#1_3| |v_#pthreadsForks_4|) InVars {#pthreadsForks=|v_#pthreadsForks_4|} OutVars{#pthreadsForks=|v_#pthreadsForks_4|, ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre15#1]" "[266] L96-1-->L96-2: Formula: (= (+ 1 |v_#pthreadsForks_6|) |v_#pthreadsForks_5|) InVars {#pthreadsForks=|v_#pthreadsForks_6|} OutVars{#pthreadsForks=|v_#pthreadsForks_5|} AuxVars[] AssignedVars[#pthreadsForks]" "[227] L96-2-->L96-3: Formula: (= |v_ULTIMATE.start_main_~t2~0#1_4| |v_ULTIMATE.start_main_#t~pre15#1_4|) InVars {ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_4|} OutVars{ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_4|, ULTIMATE.start_main_~t2~0#1=|v_ULTIMATE.start_main_~t2~0#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t2~0#1]" "[346] L96-3-->$Ultimate##0: Formula: (and (= |v_thread2Thread1of1ForFork0_#in~_argptr#1.offset_4| 0) (= v_thread2Thread1of1ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre15#1_7|) (= |v_thread2Thread1of1ForFork0_#in~_argptr#1.base_4| 0) (= v_thread2Thread1of1ForFork0_thidvar2_2 0) (= v_thread2Thread1of1ForFork0_thidvar1_2 0)) InVars {ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_7|} OutVars{thread2Thread1of1ForFork0_#res#1.offset=|v_thread2Thread1of1ForFork0_#res#1.offset_4|, thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1_4|, thread2Thread1of1ForFork0_#t~post3#1=|v_thread2Thread1of1ForFork0_#t~post3#1_4|, ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_7|, thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1_4|, thread2Thread1of1ForFork0_#in~_argptr#1.offset=|v_thread2Thread1of1ForFork0_#in~_argptr#1.offset_4|, thread2Thread1of1ForFork0_#res#1.base=|v_thread2Thread1of1ForFork0_#res#1.base_4|, thread2Thread1of1ForFork0_#in~_argptr#1.base=|v_thread2Thread1of1ForFork0_#in~_argptr#1.base_4|, thread2Thread1of1ForFork0_thidvar2=v_thread2Thread1of1ForFork0_thidvar2_2, thread2Thread1of1ForFork0_thidvar1=v_thread2Thread1of1ForFork0_thidvar1_2, thread2Thread1of1ForFork0_~_argptr#1.base=|v_thread2Thread1of1ForFork0_~_argptr#1.base_4|, thread2Thread1of1ForFork0_thidvar0=v_thread2Thread1of1ForFork0_thidvar0_2, thread2Thread1of1ForFork0_~_argptr#1.offset=|v_thread2Thread1of1ForFork0_~_argptr#1.offset_4|, thread2Thread1of1ForFork0_#t~post4#1=|v_thread2Thread1of1ForFork0_#t~post4#1_4|} AuxVars[] AssignedVars[thread2Thread1of1ForFork0_#res#1.offset, thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1, thread2Thread1of1ForFork0_#t~post3#1, thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1, thread2Thread1of1ForFork0_#in~_argptr#1.offset, thread2Thread1of1ForFork0_#res#1.base, thread2Thread1of1ForFork0_#in~_argptr#1.base, thread2Thread1of1ForFork0_thidvar2, thread2Thread1of1ForFork0_thidvar1, thread2Thread1of1ForFork0_~_argptr#1.base, thread2Thread1of1ForFork0_thidvar0, thread2Thread1of1ForFork0_~_argptr#1.offset, thread2Thread1of1ForFork0_#t~post4#1]" "[326] $Ultimate##0-->L56: Formula: (and (= |v_thread2Thread1of1ForFork0_~_argptr#1.base_1| |v_thread2Thread1of1ForFork0_#in~_argptr#1.base_1|) (= |v_thread2Thread1of1ForFork0_#in~_argptr#1.offset_1| |v_thread2Thread1of1ForFork0_~_argptr#1.offset_1|)) InVars {thread2Thread1of1ForFork0_#in~_argptr#1.offset=|v_thread2Thread1of1ForFork0_#in~_argptr#1.offset_1|, thread2Thread1of1ForFork0_#in~_argptr#1.base=|v_thread2Thread1of1ForFork0_#in~_argptr#1.base_1|} OutVars{thread2Thread1of1ForFork0_#in~_argptr#1.offset=|v_thread2Thread1of1ForFork0_#in~_argptr#1.offset_1|, thread2Thread1of1ForFork0_~_argptr#1.base=|v_thread2Thread1of1ForFork0_~_argptr#1.base_1|, thread2Thread1of1ForFork0_#in~_argptr#1.base=|v_thread2Thread1of1ForFork0_#in~_argptr#1.base_1|, thread2Thread1of1ForFork0_~_argptr#1.offset=|v_thread2Thread1of1ForFork0_~_argptr#1.offset_1|} AuxVars[] AssignedVars[thread2Thread1of1ForFork0_~_argptr#1.base, thread2Thread1of1ForFork0_~_argptr#1.offset]" "[328] L56-->L52: Formula: (< v_~i2~0_4 v_~N2~0_2) InVars {~i2~0=v_~i2~0_4, ~N2~0=v_~N2~0_2} OutVars{~i2~0=v_~i2~0_4, ~N2~0=v_~N2~0_2} AuxVars[] AssignedVars[]" "[280] L96-4-->L96-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre15#1]" "[294] L96-5-->L97: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet16#1=|v_ULTIMATE.start_main_#t~nondet16#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet16#1]" "[268] L97-->L97-1: Formula: (= |v_ULTIMATE.start_main_#t~pre17#1_3| |v_#pthreadsForks_7|) InVars {#pthreadsForks=|v_#pthreadsForks_7|} OutVars{#pthreadsForks=|v_#pthreadsForks_7|, ULTIMATE.start_main_#t~pre17#1=|v_ULTIMATE.start_main_#t~pre17#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre17#1]" "[276] L97-1-->L97-2: Formula: (= (+ 1 |v_#pthreadsForks_9|) |v_#pthreadsForks_8|) InVars {#pthreadsForks=|v_#pthreadsForks_9|} OutVars{#pthreadsForks=|v_#pthreadsForks_8|} AuxVars[] AssignedVars[#pthreadsForks]" "[307] L97-2-->L97-3: Formula: (= |v_ULTIMATE.start_main_~t3~0#1_4| |v_ULTIMATE.start_main_#t~pre17#1_4|) InVars {ULTIMATE.start_main_#t~pre17#1=|v_ULTIMATE.start_main_#t~pre17#1_4|} OutVars{ULTIMATE.start_main_#t~pre17#1=|v_ULTIMATE.start_main_#t~pre17#1_4|, ULTIMATE.start_main_~t3~0#1=|v_ULTIMATE.start_main_~t3~0#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t3~0#1]" "[349] L97-3-->$Ultimate##0: Formula: (and (= |v_thread3Thread1of1ForFork1_#in~_argptr.base_4| 0) (= v_thread3Thread1of1ForFork1_thidvar0_2 |v_ULTIMATE.start_main_#t~pre17#1_7|) (= 0 v_thread3Thread1of1ForFork1_thidvar1_2) (= 0 v_thread3Thread1of1ForFork1_thidvar2_2) (= |v_thread3Thread1of1ForFork1_#in~_argptr.offset_4| 0) (= 0 v_thread3Thread1of1ForFork1_thidvar3_2)) InVars {ULTIMATE.start_main_#t~pre17#1=|v_ULTIMATE.start_main_#t~pre17#1_7|} OutVars{thread3Thread1of1ForFork1_#in~_argptr.base=|v_thread3Thread1of1ForFork1_#in~_argptr.base_4|, thread3Thread1of1ForFork1_#res.offset=|v_thread3Thread1of1ForFork1_#res.offset_4|, thread3Thread1of1ForFork1_thidvar0=v_thread3Thread1of1ForFork1_thidvar0_2, thread3Thread1of1ForFork1_#res.base=|v_thread3Thread1of1ForFork1_#res.base_4|, thread3Thread1of1ForFork1_thidvar3=v_thread3Thread1of1ForFork1_thidvar3_2, thread3Thread1of1ForFork1_~_argptr.base=v_thread3Thread1of1ForFork1_~_argptr.base_4, ULTIMATE.start_main_#t~pre17#1=|v_ULTIMATE.start_main_#t~pre17#1_7|, thread3Thread1of1ForFork1_thidvar1=v_thread3Thread1of1ForFork1_thidvar1_2, thread3Thread1of1ForFork1_thidvar2=v_thread3Thread1of1ForFork1_thidvar2_2, thread3Thread1of1ForFork1_~_argptr.offset=v_thread3Thread1of1ForFork1_~_argptr.offset_4, thread3Thread1of1ForFork1_#t~post6=|v_thread3Thread1of1ForFork1_#t~post6_4|, thread3Thread1of1ForFork1_#t~post5=|v_thread3Thread1of1ForFork1_#t~post5_4|, thread3Thread1of1ForFork1_#in~_argptr.offset=|v_thread3Thread1of1ForFork1_#in~_argptr.offset_4|} AuxVars[] AssignedVars[thread3Thread1of1ForFork1_~_argptr.offset, thread3Thread1of1ForFork1_#in~_argptr.base, thread3Thread1of1ForFork1_#t~post6, thread3Thread1of1ForFork1_#res.offset, thread3Thread1of1ForFork1_thidvar0, thread3Thread1of1ForFork1_#t~post5, thread3Thread1of1ForFork1_#in~_argptr.offset, thread3Thread1of1ForFork1_#res.base, thread3Thread1of1ForFork1_thidvar3, thread3Thread1of1ForFork1_~_argptr.base, thread3Thread1of1ForFork1_thidvar1, thread3Thread1of1ForFork1_thidvar2]" "[332] $Ultimate##0-->L67: Formula: (and (= v_thread3Thread1of1ForFork1_~_argptr.offset_1 |v_thread3Thread1of1ForFork1_#in~_argptr.offset_1|) (= |v_thread3Thread1of1ForFork1_#in~_argptr.base_1| v_thread3Thread1of1ForFork1_~_argptr.base_1)) InVars {thread3Thread1of1ForFork1_#in~_argptr.base=|v_thread3Thread1of1ForFork1_#in~_argptr.base_1|, thread3Thread1of1ForFork1_#in~_argptr.offset=|v_thread3Thread1of1ForFork1_#in~_argptr.offset_1|} OutVars{thread3Thread1of1ForFork1_~_argptr.offset=v_thread3Thread1of1ForFork1_~_argptr.offset_1, thread3Thread1of1ForFork1_#in~_argptr.base=|v_thread3Thread1of1ForFork1_#in~_argptr.base_1|, thread3Thread1of1ForFork1_#in~_argptr.offset=|v_thread3Thread1of1ForFork1_#in~_argptr.offset_1|, thread3Thread1of1ForFork1_~_argptr.base=v_thread3Thread1of1ForFork1_~_argptr.base_1} AuxVars[] AssignedVars[thread3Thread1of1ForFork1_~_argptr.offset, thread3Thread1of1ForFork1_~_argptr.base]" "[334] L67-->L64: Formula: (< v_~j1~0_4 v_~M1~0_2) InVars {~j1~0=v_~j1~0_4, ~M1~0=v_~M1~0_2} OutVars{~j1~0=v_~j1~0_4, ~M1~0=v_~M1~0_2} AuxVars[] AssignedVars[]" "[336] L64-->L67: Formula: (and (= (+ v_~j1~0_15 1) v_~j1~0_14) (= (+ v_~counter~0_62 1) v_~counter~0_61)) InVars {~counter~0=v_~counter~0_62, ~j1~0=v_~j1~0_15} OutVars{thread3Thread1of1ForFork1_#t~post6=|v_thread3Thread1of1ForFork1_#t~post6_1|, ~counter~0=v_~counter~0_61, thread3Thread1of1ForFork1_#t~post5=|v_thread3Thread1of1ForFork1_#t~post5_1|, ~j1~0=v_~j1~0_14} AuxVars[] AssignedVars[~counter~0, thread3Thread1of1ForFork1_#t~post6, thread3Thread1of1ForFork1_#t~post5, ~j1~0]" [2025-04-26 18:32:12,411 INFO L754 eck$LassoCheckResult]: Loop: "[334] L67-->L64: Formula: (< v_~j1~0_4 v_~M1~0_2) InVars {~j1~0=v_~j1~0_4, ~M1~0=v_~M1~0_2} OutVars{~j1~0=v_~j1~0_4, ~M1~0=v_~M1~0_2} AuxVars[] AssignedVars[]" "[336] L64-->L67: Formula: (and (= (+ v_~j1~0_15 1) v_~j1~0_14) (= (+ v_~counter~0_62 1) v_~counter~0_61)) InVars {~counter~0=v_~counter~0_62, ~j1~0=v_~j1~0_15} OutVars{thread3Thread1of1ForFork1_#t~post6=|v_thread3Thread1of1ForFork1_#t~post6_1|, ~counter~0=v_~counter~0_61, thread3Thread1of1ForFork1_#t~post5=|v_thread3Thread1of1ForFork1_#t~post5_1|, ~j1~0=v_~j1~0_14} AuxVars[] AssignedVars[~counter~0, thread3Thread1of1ForFork1_#t~post6, thread3Thread1of1ForFork1_#t~post5, ~j1~0]" [2025-04-26 18:32:12,411 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 18:32:12,411 INFO L85 PathProgramCache]: Analyzing trace with hash -737920007, now seen corresponding path program 1 times [2025-04-26 18:32:12,411 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 18:32:12,411 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [185214195] [2025-04-26 18:32:12,412 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 18:32:12,412 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 18:32:12,417 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 64 statements into 1 equivalence classes. [2025-04-26 18:32:12,425 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 64 of 64 statements. [2025-04-26 18:32:12,425 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:12,425 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 18:32:12,662 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-04-26 18:32:12,662 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-04-26 18:32:12,662 INFO L324 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [185214195] [2025-04-26 18:32:12,662 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [185214195] provided 1 perfect and 0 imperfect interpolant sequences [2025-04-26 18:32:12,663 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-04-26 18:32:12,663 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2025-04-26 18:32:12,663 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [767173923] [2025-04-26 18:32:12,663 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-04-26 18:32:12,663 INFO L757 eck$LassoCheckResult]: stem already infeasible [2025-04-26 18:32:12,663 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 18:32:12,663 INFO L85 PathProgramCache]: Analyzing trace with hash 11651, now seen corresponding path program 1 times [2025-04-26 18:32:12,663 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 18:32:12,663 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1725442706] [2025-04-26 18:32:12,663 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 18:32:12,663 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 18:32:12,665 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 18:32:12,667 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 18:32:12,667 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:12,667 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 18:32:12,668 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 18:32:12,669 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 18:32:12,670 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 18:32:12,670 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:12,670 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 18:32:12,671 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 18:32:12,686 INFO L206 LassoAnalysis]: Preferences: [2025-04-26 18:32:12,686 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-04-26 18:32:12,686 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-04-26 18:32:12,686 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-04-26 18:32:12,686 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2025-04-26 18:32:12,686 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:12,686 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-04-26 18:32:12,686 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-04-26 18:32:12,686 INFO L132 ssoRankerPreferences]: Filename of dumped script: popl20-proofs-counter-add-4-semi-Q67.wvr.c_petrified1_Iteration4_Loop [2025-04-26 18:32:12,686 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-04-26 18:32:12,686 INFO L243 LassoAnalysis]: Starting lasso preprocessing... [2025-04-26 18:32:12,687 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:12,692 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:12,694 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:12,696 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:12,698 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:12,700 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:12,704 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:12,706 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:12,707 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:12,710 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:12,711 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:12,713 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:12,783 INFO L261 LassoAnalysis]: Preprocessing complete. [2025-04-26 18:32:12,783 INFO L367 LassoAnalysis]: Checking for nontermination... [2025-04-26 18:32:12,783 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:12,783 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:12,786 INFO L229 MonitoredProcess]: Starting monitored process 39 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:12,787 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (39)] Waiting until timeout for monitored process [2025-04-26 18:32:12,788 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 18:32:12,788 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:12,807 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (39)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:12,808 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:12,808 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:12,809 INFO L229 MonitoredProcess]: Starting monitored process 40 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:12,811 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (40)] Waiting until timeout for monitored process [2025-04-26 18:32:12,813 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2025-04-26 18:32:12,813 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:12,881 INFO L407 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2025-04-26 18:32:12,885 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (40)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:12,886 INFO L206 LassoAnalysis]: Preferences: [2025-04-26 18:32:12,886 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-04-26 18:32:12,886 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-04-26 18:32:12,886 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-04-26 18:32:12,886 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-04-26 18:32:12,886 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:12,886 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-04-26 18:32:12,886 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-04-26 18:32:12,886 INFO L132 ssoRankerPreferences]: Filename of dumped script: popl20-proofs-counter-add-4-semi-Q67.wvr.c_petrified1_Iteration4_Loop [2025-04-26 18:32:12,886 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-04-26 18:32:12,886 INFO L243 LassoAnalysis]: Starting lasso preprocessing... [2025-04-26 18:32:12,887 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:12,890 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:12,893 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:12,896 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:12,899 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:12,900 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:12,903 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:12,905 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:12,906 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:12,907 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:12,916 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:12,918 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:12,985 INFO L261 LassoAnalysis]: Preprocessing complete. [2025-04-26 18:32:12,985 INFO L453 LassoAnalysis]: Using template 'affine'. [2025-04-26 18:32:12,986 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:12,986 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:12,987 INFO L229 MonitoredProcess]: Starting monitored process 41 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:12,989 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (41)] Waiting until timeout for monitored process [2025-04-26 18:32:12,991 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 [2025-04-26 18:32:13,001 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 18:32:13,001 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 18:32:13,001 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 18:32:13,001 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 18:32:13,002 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 18:32:13,002 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 18:32:13,005 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 18:32:13,012 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (41)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:13,012 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:13,012 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:13,014 INFO L229 MonitoredProcess]: Starting monitored process 42 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:13,014 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (42)] Waiting until timeout for monitored process [2025-04-26 18:32:13,017 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 [2025-04-26 18:32:13,026 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 18:32:13,027 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 18:32:13,027 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 18:32:13,027 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 18:32:13,030 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 18:32:13,031 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 18:32:13,033 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 18:32:13,038 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (42)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:13,039 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:13,039 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:13,041 INFO L229 MonitoredProcess]: Starting monitored process 43 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:13,042 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (43)] Waiting until timeout for monitored process [2025-04-26 18:32:13,045 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 [2025-04-26 18:32:13,054 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 18:32:13,054 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-04-26 18:32:13,054 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 18:32:13,055 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 18:32:13,055 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 18:32:13,055 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-04-26 18:32:13,055 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-04-26 18:32:13,057 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-04-26 18:32:13,059 INFO L436 ModelExtractionUtils]: Simplification made 4 calls to the SMT solver. [2025-04-26 18:32:13,059 INFO L437 ModelExtractionUtils]: 0 out of 4 variables were initially zero. Simplification set additionally 1 variables to zero. [2025-04-26 18:32:13,059 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:13,059 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:13,061 INFO L229 MonitoredProcess]: Starting monitored process 44 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:13,065 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (44)] Waiting until timeout for monitored process [2025-04-26 18:32:13,066 INFO L436 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-04-26 18:32:13,068 ERROR L418 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (44)] Exception during sending of exit command (exit): Broken pipe [2025-04-26 18:32:13,069 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (44)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:13,069 INFO L439 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2025-04-26 18:32:13,069 INFO L476 LassoAnalysis]: Proved termination. [2025-04-26 18:32:13,069 INFO L478 LassoAnalysis]: Termination argument consisting of: Ranking function f(~M1~0, ~j1~0) = 1*~M1~0 - 1*~j1~0 Supporting invariants [] [2025-04-26 18:32:13,075 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (43)] Ended with exit code 0 [2025-04-26 18:32:13,075 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2025-04-26 18:32:13,085 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 18:32:13,095 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 64 statements into 1 equivalence classes. [2025-04-26 18:32:13,106 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 64 of 64 statements. [2025-04-26 18:32:13,106 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:13,106 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 18:32:13,107 INFO L256 TraceCheckSpWp]: Trace formula consists of 141 conjuncts, 2 conjuncts are in the unsatisfiable core [2025-04-26 18:32:13,108 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 18:32:13,170 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 18:32:13,171 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 18:32:13,171 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:13,171 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 18:32:13,171 WARN L254 TraceCheckSpWp]: Trace formula consists of 7 conjuncts, 4 conjuncts are in the unsatisfiable core [2025-04-26 18:32:13,172 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 18:32:13,182 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-04-26 18:32:13,182 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 [2025-04-26 18:32:13,182 INFO L70 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 2394 states and 5378 transitions. cyclomatic complexity: 3401 Second operand has 3 states, 3 states have (on average 22.0) internal successors, (in total 66), 3 states have internal predecessors, (66), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:13,257 INFO L74 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 2394 states and 5378 transitions. cyclomatic complexity: 3401. Second operand has 3 states, 3 states have (on average 22.0) internal successors, (in total 66), 3 states have internal predecessors, (66), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) Result 6625 states and 15400 transitions. Complement of second has 6 states. [2025-04-26 18:32:13,258 INFO L140 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 4 states 1 stem states 2 non-accepting loop states 1 accepting loop states [2025-04-26 18:32:13,260 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 22.0) internal successors, (in total 66), 3 states have internal predecessors, (66), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:13,260 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 166 transitions. [2025-04-26 18:32:13,260 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 4 states and 166 transitions. Stem has 64 letters. Loop has 2 letters. [2025-04-26 18:32:13,260 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 18:32:13,260 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 4 states and 166 transitions. Stem has 66 letters. Loop has 2 letters. [2025-04-26 18:32:13,260 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 18:32:13,260 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 4 states and 166 transitions. Stem has 64 letters. Loop has 4 letters. [2025-04-26 18:32:13,260 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 18:32:13,260 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 6625 states and 15400 transitions. [2025-04-26 18:32:13,293 INFO L131 ngComponentsAnalysis]: Automaton has 198 accepting balls. 438 [2025-04-26 18:32:13,315 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 6625 states to 3774 states and 8429 transitions. [2025-04-26 18:32:13,315 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1750 [2025-04-26 18:32:13,318 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 1949 [2025-04-26 18:32:13,318 INFO L74 IsDeterministic]: Start isDeterministic. Operand 3774 states and 8429 transitions. [2025-04-26 18:32:13,318 INFO L81 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-04-26 18:32:13,318 INFO L218 hiAutomatonCegarLoop]: Abstraction has 3774 states and 8429 transitions. [2025-04-26 18:32:13,322 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3774 states and 8429 transitions. [2025-04-26 18:32:13,394 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3774 to 3444. [2025-04-26 18:32:13,398 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3444 states, 3444 states have (on average 2.311556329849013) internal successors, (in total 7961), 3443 states have internal predecessors, (7961), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:13,405 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3444 states to 3444 states and 7961 transitions. [2025-04-26 18:32:13,405 INFO L240 hiAutomatonCegarLoop]: Abstraction has 3444 states and 7961 transitions. [2025-04-26 18:32:13,405 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-04-26 18:32:13,406 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2025-04-26 18:32:13,406 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=50, Unknown=0, NotChecked=0, Total=72 [2025-04-26 18:32:13,406 INFO L87 Difference]: Start difference. First operand 3444 states and 7961 transitions. Second operand has 9 states, 9 states have (on average 7.111111111111111) internal successors, (in total 64), 9 states have internal predecessors, (64), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:13,544 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-04-26 18:32:13,544 INFO L93 Difference]: Finished difference Result 3567 states and 8156 transitions. [2025-04-26 18:32:13,544 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 3567 states and 8156 transitions. [2025-04-26 18:32:13,559 INFO L131 ngComponentsAnalysis]: Automaton has 209 accepting balls. 460 [2025-04-26 18:32:13,578 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 3567 states to 3567 states and 8156 transitions. [2025-04-26 18:32:13,578 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1821 [2025-04-26 18:32:13,580 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 1821 [2025-04-26 18:32:13,580 INFO L74 IsDeterministic]: Start isDeterministic. Operand 3567 states and 8156 transitions. [2025-04-26 18:32:13,581 INFO L81 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-04-26 18:32:13,581 INFO L218 hiAutomatonCegarLoop]: Abstraction has 3567 states and 8156 transitions. [2025-04-26 18:32:13,585 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3567 states and 8156 transitions. [2025-04-26 18:32:13,624 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3567 to 3452. [2025-04-26 18:32:13,627 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3452 states, 3452 states have (on average 2.308516801853998) internal successors, (in total 7969), 3451 states have internal predecessors, (7969), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:13,634 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3452 states to 3452 states and 7969 transitions. [2025-04-26 18:32:13,635 INFO L240 hiAutomatonCegarLoop]: Abstraction has 3452 states and 7969 transitions. [2025-04-26 18:32:13,635 INFO L140 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2025-04-26 18:32:13,636 INFO L438 stractBuchiCegarLoop]: Abstraction has 3452 states and 7969 transitions. [2025-04-26 18:32:13,636 INFO L340 stractBuchiCegarLoop]: ======== Iteration 5 ============ [2025-04-26 18:32:13,636 INFO L73 BuchiIsEmpty]: Start buchiIsEmpty. Operand 3452 states and 7969 transitions. [2025-04-26 18:32:13,645 INFO L131 ngComponentsAnalysis]: Automaton has 198 accepting balls. 438 [2025-04-26 18:32:13,645 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-04-26 18:32:13,645 INFO L120 BuchiIsEmpty]: Starting construction of run [2025-04-26 18:32:13,646 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-04-26 18:32:13,646 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1] [2025-04-26 18:32:13,650 INFO L752 eck$LassoCheckResult]: Stem: "[237] $Ultimate##0-->L-1: Formula: (= (select |v_#valid_1| 0) 0) InVars {#valid=|v_#valid_1|} OutVars{#valid=|v_#valid_1|} AuxVars[] AssignedVars[]" "[241] L-1-->L21: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[]" "[283] L21-->L21-1: Formula: (and (= (select |v_#valid_2| 1) 1) (= 2 (select |v_#length_1| 1))) InVars {#length=|v_#length_1|, #valid=|v_#valid_2|} OutVars{#length=|v_#length_1|, #valid=|v_#valid_2|} AuxVars[] AssignedVars[]" "[303] L21-1-->L21-2: Formula: (= 48 (select (select |v_#memory_int_1| 1) 0)) InVars {#memory_int=|v_#memory_int_1|} OutVars{#memory_int=|v_#memory_int_1|} AuxVars[] AssignedVars[]" "[247] L21-2-->L21-3: Formula: (= (select (select |v_#memory_int_2| 1) 1) 0) InVars {#memory_int=|v_#memory_int_2|} OutVars{#memory_int=|v_#memory_int_2|} AuxVars[] AssignedVars[]" "[277] L21-3-->L21-4: Formula: (and (= 43 (select |v_#length_2| 2)) (= (select |v_#valid_3| 2) 1)) InVars {#length=|v_#length_2|, #valid=|v_#valid_3|} OutVars{#length=|v_#length_2|, #valid=|v_#valid_3|} AuxVars[] AssignedVars[]" "[261] L21-4-->L37: Formula: (= v_~i1~0_5 0) InVars {} OutVars{~i1~0=v_~i1~0_5} AuxVars[] AssignedVars[~i1~0]" "[255] L37-->L37-1: Formula: (= v_~i2~0_5 0) InVars {} OutVars{~i2~0=v_~i2~0_5} AuxVars[] AssignedVars[~i2~0]" "[256] L37-1-->L37-2: Formula: (= 0 v_~N1~0_3) InVars {} OutVars{~N1~0=v_~N1~0_3} AuxVars[] AssignedVars[~N1~0]" "[221] L37-2-->L37-3: Formula: (= 0 v_~N2~0_3) InVars {} OutVars{~N2~0=v_~N2~0_3} AuxVars[] AssignedVars[~N2~0]" "[238] L37-3-->L37-4: Formula: (= v_~counter~0_9 0) InVars {} OutVars{~counter~0=v_~counter~0_9} AuxVars[] AssignedVars[~counter~0]" "[297] L37-4-->L37-5: Formula: (= v_~j1~0_5 0) InVars {} OutVars{~j1~0=v_~j1~0_5} AuxVars[] AssignedVars[~j1~0]" "[271] L37-5-->L37-6: Formula: (= v_~j2~0_1 0) InVars {} OutVars{~j2~0=v_~j2~0_1} AuxVars[] AssignedVars[~j2~0]" "[264] L37-6-->L37-7: Formula: (= 0 v_~M1~0_3) InVars {} OutVars{~M1~0=v_~M1~0_3} AuxVars[] AssignedVars[~M1~0]" "[278] L37-7-->L-1-1: Formula: (= 0 v_~M2~0_1) InVars {} OutVars{~M2~0=v_~M2~0_1} AuxVars[] AssignedVars[~M2~0]" "[309] L-1-1-->L-1-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1]" "[310] L-1-2-->L86: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t4~0#1=|v_ULTIMATE.start_main_~t4~0#1_2|, ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_2|, ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_2|, ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_2|, ULTIMATE.start_main_~t3~0#1=|v_ULTIMATE.start_main_~t3~0#1_2|, ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_2|, ULTIMATE.start_main_#t~nondet18#1=|v_ULTIMATE.start_main_#t~nondet18#1_2|, ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_2|, ULTIMATE.start_main_#t~pre17#1=|v_ULTIMATE.start_main_#t~pre17#1_2|, ULTIMATE.start_main_#t~nondet14#1=|v_ULTIMATE.start_main_#t~nondet14#1_2|, ULTIMATE.start_main_#t~pre19#1=|v_ULTIMATE.start_main_#t~pre19#1_2|, ULTIMATE.start_main_~t1~0#1=|v_ULTIMATE.start_main_~t1~0#1_2|, ULTIMATE.start_main_#t~nondet16#1=|v_ULTIMATE.start_main_#t~nondet16#1_2|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_2|, ULTIMATE.start_main_#t~nondet20#1=|v_ULTIMATE.start_main_#t~nondet20#1_2|, ULTIMATE.start_main_~t2~0#1=|v_ULTIMATE.start_main_~t2~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t4~0#1, ULTIMATE.start_main_#t~pre13#1, ULTIMATE.start_main_#t~nondet10#1, ULTIMATE.start_main_#t~nondet9#1, ULTIMATE.start_main_~t3~0#1, ULTIMATE.start_main_#t~pre15#1, ULTIMATE.start_main_#t~nondet18#1, ULTIMATE.start_main_#t~nondet12#1, ULTIMATE.start_main_#t~pre17#1, ULTIMATE.start_main_#t~nondet14#1, ULTIMATE.start_main_#t~pre19#1, ULTIMATE.start_main_~t1~0#1, ULTIMATE.start_main_#t~nondet16#1, ULTIMATE.start_main_#t~nondet11#1, ULTIMATE.start_main_#t~nondet20#1, ULTIMATE.start_main_~t2~0#1]" "[214] L86-->L86-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t1~0#1=|v_ULTIMATE.start_main_~t1~0#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t1~0#1]" "[269] L86-1-->L86-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t2~0#1=|v_ULTIMATE.start_main_~t2~0#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t2~0#1]" "[319] L86-2-->L86-3: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t3~0#1=|v_ULTIMATE.start_main_~t3~0#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t3~0#1]" "[250] L86-3-->L88: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t4~0#1=|v_ULTIMATE.start_main_~t4~0#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t4~0#1]" "[282] L88-->L88-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet9#1]" "[302] L88-1-->L88-2: Formula: (= |v_ULTIMATE.start_main_#t~nondet9#1_4| v_~N1~0_4) InVars {ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_4|} OutVars{ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_4|, ~N1~0=v_~N1~0_4} AuxVars[] AssignedVars[~N1~0]" "[218] L88-2-->L89: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet9#1]" "[267] L89-->L89-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet10#1]" "[249] L89-1-->L89-2: Formula: (= |v_ULTIMATE.start_main_#t~nondet10#1_4| v_~N2~0_4) InVars {ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_4|} OutVars{ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_4|, ~N2~0=v_~N2~0_4} AuxVars[] AssignedVars[~N2~0]" "[273] L89-2-->L90: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet10#1]" "[306] L90-->L90-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet11#1]" "[228] L90-1-->L90-2: Formula: (= |v_ULTIMATE.start_main_#t~nondet11#1_4| v_~M1~0_4) InVars {ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_4|} OutVars{ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_4|, ~M1~0=v_~M1~0_4} AuxVars[] AssignedVars[~M1~0]" "[239] L90-2-->L91: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet11#1]" "[229] L91-->L91-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet12#1]" "[240] L91-1-->L91-2: Formula: (= |v_ULTIMATE.start_main_#t~nondet12#1_4| v_~M2~0_2) InVars {ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_4|} OutVars{~M2~0=v_~M2~0_2, ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_4|} AuxVars[] AssignedVars[~M2~0]" "[265] L91-2-->L92: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet12#1]" "[298] L92-->L92-1: Formula: (= (ite (and (= v_~M1~0_5 v_~N1~0_5) (= v_~N1~0_5 v_~N2~0_5) (= v_~M2~0_3 v_~N1~0_5)) 1 0) |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_4|) InVars {~M1~0=v_~M1~0_5, ~N1~0=v_~N1~0_5, ~N2~0=v_~N2~0_5, ~M2~0=v_~M2~0_3} OutVars{~M1~0=v_~M1~0_5, ~N1~0=v_~N1~0_5, ~N2~0=v_~N2~0_5, ~M2~0=v_~M2~0_3, ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_#in~cond#1]" "[292] L92-1-->L33: Formula: true InVars {} OutVars{ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_~cond#1]" "[226] L33-->L34: Formula: (= |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_5| |v_ULTIMATE.start_assume_abort_if_not_~cond#1_7|) InVars {ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_5|} OutVars{ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_7|, ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_~cond#1]" "[235] L34-->L33-1: Formula: (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_9| 0)) InVars {ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_9|} OutVars{ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_9|} AuxVars[] AssignedVars[]" "[251] L33-1-->L92-2: Formula: true InVars {} OutVars{ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_10|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_~cond#1]" "[259] L92-2-->L95: Formula: true InVars {} OutVars{ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_#in~cond#1]" "[279] L95-->L95-1: Formula: (= |v_ULTIMATE.start_main_#t~pre13#1_3| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre13#1]" "[289] L95-1-->L95-2: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks]" "[290] L95-2-->L95-3: Formula: (= |v_ULTIMATE.start_main_~t1~0#1_4| |v_ULTIMATE.start_main_#t~pre13#1_4|) InVars {ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_4|} OutVars{ULTIMATE.start_main_~t1~0#1=|v_ULTIMATE.start_main_~t1~0#1_4|, ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t1~0#1]" "[352] L95-3-->$Ultimate##0: Formula: (and (= |v_thread1Thread1of1ForFork2_#in~_argptr.offset_4| 0) (= |v_ULTIMATE.start_main_#t~pre13#1_7| v_thread1Thread1of1ForFork2_thidvar0_2) (= 0 v_thread1Thread1of1ForFork2_thidvar1_2) (= |v_thread1Thread1of1ForFork2_#in~_argptr.base_4| 0)) InVars {ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_7|} OutVars{thread1Thread1of1ForFork2_thidvar1=v_thread1Thread1of1ForFork2_thidvar1_2, thread1Thread1of1ForFork2_thidvar0=v_thread1Thread1of1ForFork2_thidvar0_2, thread1Thread1of1ForFork2_#res.base=|v_thread1Thread1of1ForFork2_#res.base_4|, ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_7|, thread1Thread1of1ForFork2_#t~post1=|v_thread1Thread1of1ForFork2_#t~post1_4|, thread1Thread1of1ForFork2_#t~post2=|v_thread1Thread1of1ForFork2_#t~post2_4|, thread1Thread1of1ForFork2_~_argptr.base=v_thread1Thread1of1ForFork2_~_argptr.base_4, thread1Thread1of1ForFork2_#res.offset=|v_thread1Thread1of1ForFork2_#res.offset_4|, thread1Thread1of1ForFork2_#in~_argptr.offset=|v_thread1Thread1of1ForFork2_#in~_argptr.offset_4|, thread1Thread1of1ForFork2_~_argptr.offset=v_thread1Thread1of1ForFork2_~_argptr.offset_4, thread1Thread1of1ForFork2_#in~_argptr.base=|v_thread1Thread1of1ForFork2_#in~_argptr.base_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_thidvar1, thread1Thread1of1ForFork2_thidvar0, thread1Thread1of1ForFork2_#res.base, thread1Thread1of1ForFork2_#t~post1, thread1Thread1of1ForFork2_#t~post2, thread1Thread1of1ForFork2_~_argptr.base, thread1Thread1of1ForFork2_#res.offset, thread1Thread1of1ForFork2_#in~_argptr.offset, thread1Thread1of1ForFork2_~_argptr.offset, thread1Thread1of1ForFork2_#in~_argptr.base]" "[320] $Ultimate##0-->L44: Formula: (and (= |v_thread1Thread1of1ForFork2_#in~_argptr.offset_1| v_thread1Thread1of1ForFork2_~_argptr.offset_1) (= v_thread1Thread1of1ForFork2_~_argptr.base_1 |v_thread1Thread1of1ForFork2_#in~_argptr.base_1|)) InVars {thread1Thread1of1ForFork2_#in~_argptr.offset=|v_thread1Thread1of1ForFork2_#in~_argptr.offset_1|, thread1Thread1of1ForFork2_#in~_argptr.base=|v_thread1Thread1of1ForFork2_#in~_argptr.base_1|} OutVars{thread1Thread1of1ForFork2_~_argptr.base=v_thread1Thread1of1ForFork2_~_argptr.base_1, thread1Thread1of1ForFork2_#in~_argptr.offset=|v_thread1Thread1of1ForFork2_#in~_argptr.offset_1|, thread1Thread1of1ForFork2_~_argptr.offset=v_thread1Thread1of1ForFork2_~_argptr.offset_1, thread1Thread1of1ForFork2_#in~_argptr.base=|v_thread1Thread1of1ForFork2_#in~_argptr.base_1|} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_~_argptr.base, thread1Thread1of1ForFork2_~_argptr.offset]" "[322] L44-->L41: Formula: (< v_~i1~0_1 v_~N1~0_1) InVars {~i1~0=v_~i1~0_1, ~N1~0=v_~N1~0_1} OutVars{~i1~0=v_~i1~0_1, ~N1~0=v_~N1~0_1} AuxVars[] AssignedVars[]" "[243] L95-4-->L95-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre13#1]" "[324] L41-->L44: Formula: (and (= (+ v_~counter~0_22 1) v_~counter~0_21) (= v_~i1~0_16 (+ v_~i1~0_17 1))) InVars {~counter~0=v_~counter~0_22, ~i1~0=v_~i1~0_17} OutVars{thread1Thread1of1ForFork2_#t~post2=|v_thread1Thread1of1ForFork2_#t~post2_1|, ~counter~0=v_~counter~0_21, ~i1~0=v_~i1~0_16, thread1Thread1of1ForFork2_#t~post1=|v_thread1Thread1of1ForFork2_#t~post1_1|} AuxVars[] AssignedVars[~counter~0, thread1Thread1of1ForFork2_#t~post1, thread1Thread1of1ForFork2_#t~post2, ~i1~0]" "[321] L44-->L47: Formula: (<= v_~N1~0_2 v_~i1~0_4) InVars {~i1~0=v_~i1~0_4, ~N1~0=v_~N1~0_2} OutVars{~i1~0=v_~i1~0_4, ~N1~0=v_~N1~0_2} AuxVars[] AssignedVars[]" "[323] L47-->thread1FINAL: Formula: (and (= |v_thread1Thread1of1ForFork2_#res.offset_1| 0) (= |v_thread1Thread1of1ForFork2_#res.base_1| 0)) InVars {} OutVars{thread1Thread1of1ForFork2_#res.base=|v_thread1Thread1of1ForFork2_#res.base_1|, thread1Thread1of1ForFork2_#res.offset=|v_thread1Thread1of1ForFork2_#res.offset_1|} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_#res.base, thread1Thread1of1ForFork2_#res.offset]" "[325] thread1FINAL-->thread1EXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[]" "[213] L95-5-->L96: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet14#1=|v_ULTIMATE.start_main_#t~nondet14#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet14#1]" "[299] L96-->L96-1: Formula: (= |v_ULTIMATE.start_main_#t~pre15#1_3| |v_#pthreadsForks_4|) InVars {#pthreadsForks=|v_#pthreadsForks_4|} OutVars{#pthreadsForks=|v_#pthreadsForks_4|, ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre15#1]" "[266] L96-1-->L96-2: Formula: (= (+ 1 |v_#pthreadsForks_6|) |v_#pthreadsForks_5|) InVars {#pthreadsForks=|v_#pthreadsForks_6|} OutVars{#pthreadsForks=|v_#pthreadsForks_5|} AuxVars[] AssignedVars[#pthreadsForks]" "[227] L96-2-->L96-3: Formula: (= |v_ULTIMATE.start_main_~t2~0#1_4| |v_ULTIMATE.start_main_#t~pre15#1_4|) InVars {ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_4|} OutVars{ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_4|, ULTIMATE.start_main_~t2~0#1=|v_ULTIMATE.start_main_~t2~0#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t2~0#1]" "[346] L96-3-->$Ultimate##0: Formula: (and (= |v_thread2Thread1of1ForFork0_#in~_argptr#1.offset_4| 0) (= v_thread2Thread1of1ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre15#1_7|) (= |v_thread2Thread1of1ForFork0_#in~_argptr#1.base_4| 0) (= v_thread2Thread1of1ForFork0_thidvar2_2 0) (= v_thread2Thread1of1ForFork0_thidvar1_2 0)) InVars {ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_7|} OutVars{thread2Thread1of1ForFork0_#res#1.offset=|v_thread2Thread1of1ForFork0_#res#1.offset_4|, thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1_4|, thread2Thread1of1ForFork0_#t~post3#1=|v_thread2Thread1of1ForFork0_#t~post3#1_4|, ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_7|, thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1_4|, thread2Thread1of1ForFork0_#in~_argptr#1.offset=|v_thread2Thread1of1ForFork0_#in~_argptr#1.offset_4|, thread2Thread1of1ForFork0_#res#1.base=|v_thread2Thread1of1ForFork0_#res#1.base_4|, thread2Thread1of1ForFork0_#in~_argptr#1.base=|v_thread2Thread1of1ForFork0_#in~_argptr#1.base_4|, thread2Thread1of1ForFork0_thidvar2=v_thread2Thread1of1ForFork0_thidvar2_2, thread2Thread1of1ForFork0_thidvar1=v_thread2Thread1of1ForFork0_thidvar1_2, thread2Thread1of1ForFork0_~_argptr#1.base=|v_thread2Thread1of1ForFork0_~_argptr#1.base_4|, thread2Thread1of1ForFork0_thidvar0=v_thread2Thread1of1ForFork0_thidvar0_2, thread2Thread1of1ForFork0_~_argptr#1.offset=|v_thread2Thread1of1ForFork0_~_argptr#1.offset_4|, thread2Thread1of1ForFork0_#t~post4#1=|v_thread2Thread1of1ForFork0_#t~post4#1_4|} AuxVars[] AssignedVars[thread2Thread1of1ForFork0_#res#1.offset, thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1, thread2Thread1of1ForFork0_#t~post3#1, thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1, thread2Thread1of1ForFork0_#in~_argptr#1.offset, thread2Thread1of1ForFork0_#res#1.base, thread2Thread1of1ForFork0_#in~_argptr#1.base, thread2Thread1of1ForFork0_thidvar2, thread2Thread1of1ForFork0_thidvar1, thread2Thread1of1ForFork0_~_argptr#1.base, thread2Thread1of1ForFork0_thidvar0, thread2Thread1of1ForFork0_~_argptr#1.offset, thread2Thread1of1ForFork0_#t~post4#1]" "[326] $Ultimate##0-->L56: Formula: (and (= |v_thread2Thread1of1ForFork0_~_argptr#1.base_1| |v_thread2Thread1of1ForFork0_#in~_argptr#1.base_1|) (= |v_thread2Thread1of1ForFork0_#in~_argptr#1.offset_1| |v_thread2Thread1of1ForFork0_~_argptr#1.offset_1|)) InVars {thread2Thread1of1ForFork0_#in~_argptr#1.offset=|v_thread2Thread1of1ForFork0_#in~_argptr#1.offset_1|, thread2Thread1of1ForFork0_#in~_argptr#1.base=|v_thread2Thread1of1ForFork0_#in~_argptr#1.base_1|} OutVars{thread2Thread1of1ForFork0_#in~_argptr#1.offset=|v_thread2Thread1of1ForFork0_#in~_argptr#1.offset_1|, thread2Thread1of1ForFork0_~_argptr#1.base=|v_thread2Thread1of1ForFork0_~_argptr#1.base_1|, thread2Thread1of1ForFork0_#in~_argptr#1.base=|v_thread2Thread1of1ForFork0_#in~_argptr#1.base_1|, thread2Thread1of1ForFork0_~_argptr#1.offset=|v_thread2Thread1of1ForFork0_~_argptr#1.offset_1|} AuxVars[] AssignedVars[thread2Thread1of1ForFork0_~_argptr#1.base, thread2Thread1of1ForFork0_~_argptr#1.offset]" "[328] L56-->L52: Formula: (< v_~i2~0_4 v_~N2~0_2) InVars {~i2~0=v_~i2~0_4, ~N2~0=v_~N2~0_2} OutVars{~i2~0=v_~i2~0_4, ~N2~0=v_~N2~0_2} AuxVars[] AssignedVars[]" "[280] L96-4-->L96-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre15#1]" "[294] L96-5-->L97: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet16#1=|v_ULTIMATE.start_main_#t~nondet16#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet16#1]" "[268] L97-->L97-1: Formula: (= |v_ULTIMATE.start_main_#t~pre17#1_3| |v_#pthreadsForks_7|) InVars {#pthreadsForks=|v_#pthreadsForks_7|} OutVars{#pthreadsForks=|v_#pthreadsForks_7|, ULTIMATE.start_main_#t~pre17#1=|v_ULTIMATE.start_main_#t~pre17#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre17#1]" "[276] L97-1-->L97-2: Formula: (= (+ 1 |v_#pthreadsForks_9|) |v_#pthreadsForks_8|) InVars {#pthreadsForks=|v_#pthreadsForks_9|} OutVars{#pthreadsForks=|v_#pthreadsForks_8|} AuxVars[] AssignedVars[#pthreadsForks]" "[307] L97-2-->L97-3: Formula: (= |v_ULTIMATE.start_main_~t3~0#1_4| |v_ULTIMATE.start_main_#t~pre17#1_4|) InVars {ULTIMATE.start_main_#t~pre17#1=|v_ULTIMATE.start_main_#t~pre17#1_4|} OutVars{ULTIMATE.start_main_#t~pre17#1=|v_ULTIMATE.start_main_#t~pre17#1_4|, ULTIMATE.start_main_~t3~0#1=|v_ULTIMATE.start_main_~t3~0#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t3~0#1]" "[349] L97-3-->$Ultimate##0: Formula: (and (= |v_thread3Thread1of1ForFork1_#in~_argptr.base_4| 0) (= v_thread3Thread1of1ForFork1_thidvar0_2 |v_ULTIMATE.start_main_#t~pre17#1_7|) (= 0 v_thread3Thread1of1ForFork1_thidvar1_2) (= 0 v_thread3Thread1of1ForFork1_thidvar2_2) (= |v_thread3Thread1of1ForFork1_#in~_argptr.offset_4| 0) (= 0 v_thread3Thread1of1ForFork1_thidvar3_2)) InVars {ULTIMATE.start_main_#t~pre17#1=|v_ULTIMATE.start_main_#t~pre17#1_7|} OutVars{thread3Thread1of1ForFork1_#in~_argptr.base=|v_thread3Thread1of1ForFork1_#in~_argptr.base_4|, thread3Thread1of1ForFork1_#res.offset=|v_thread3Thread1of1ForFork1_#res.offset_4|, thread3Thread1of1ForFork1_thidvar0=v_thread3Thread1of1ForFork1_thidvar0_2, thread3Thread1of1ForFork1_#res.base=|v_thread3Thread1of1ForFork1_#res.base_4|, thread3Thread1of1ForFork1_thidvar3=v_thread3Thread1of1ForFork1_thidvar3_2, thread3Thread1of1ForFork1_~_argptr.base=v_thread3Thread1of1ForFork1_~_argptr.base_4, ULTIMATE.start_main_#t~pre17#1=|v_ULTIMATE.start_main_#t~pre17#1_7|, thread3Thread1of1ForFork1_thidvar1=v_thread3Thread1of1ForFork1_thidvar1_2, thread3Thread1of1ForFork1_thidvar2=v_thread3Thread1of1ForFork1_thidvar2_2, thread3Thread1of1ForFork1_~_argptr.offset=v_thread3Thread1of1ForFork1_~_argptr.offset_4, thread3Thread1of1ForFork1_#t~post6=|v_thread3Thread1of1ForFork1_#t~post6_4|, thread3Thread1of1ForFork1_#t~post5=|v_thread3Thread1of1ForFork1_#t~post5_4|, thread3Thread1of1ForFork1_#in~_argptr.offset=|v_thread3Thread1of1ForFork1_#in~_argptr.offset_4|} AuxVars[] AssignedVars[thread3Thread1of1ForFork1_~_argptr.offset, thread3Thread1of1ForFork1_#in~_argptr.base, thread3Thread1of1ForFork1_#t~post6, thread3Thread1of1ForFork1_#res.offset, thread3Thread1of1ForFork1_thidvar0, thread3Thread1of1ForFork1_#t~post5, thread3Thread1of1ForFork1_#in~_argptr.offset, thread3Thread1of1ForFork1_#res.base, thread3Thread1of1ForFork1_thidvar3, thread3Thread1of1ForFork1_~_argptr.base, thread3Thread1of1ForFork1_thidvar1, thread3Thread1of1ForFork1_thidvar2]" "[332] $Ultimate##0-->L67: Formula: (and (= v_thread3Thread1of1ForFork1_~_argptr.offset_1 |v_thread3Thread1of1ForFork1_#in~_argptr.offset_1|) (= |v_thread3Thread1of1ForFork1_#in~_argptr.base_1| v_thread3Thread1of1ForFork1_~_argptr.base_1)) InVars {thread3Thread1of1ForFork1_#in~_argptr.base=|v_thread3Thread1of1ForFork1_#in~_argptr.base_1|, thread3Thread1of1ForFork1_#in~_argptr.offset=|v_thread3Thread1of1ForFork1_#in~_argptr.offset_1|} OutVars{thread3Thread1of1ForFork1_~_argptr.offset=v_thread3Thread1of1ForFork1_~_argptr.offset_1, thread3Thread1of1ForFork1_#in~_argptr.base=|v_thread3Thread1of1ForFork1_#in~_argptr.base_1|, thread3Thread1of1ForFork1_#in~_argptr.offset=|v_thread3Thread1of1ForFork1_#in~_argptr.offset_1|, thread3Thread1of1ForFork1_~_argptr.base=v_thread3Thread1of1ForFork1_~_argptr.base_1} AuxVars[] AssignedVars[thread3Thread1of1ForFork1_~_argptr.offset, thread3Thread1of1ForFork1_~_argptr.base]" "[334] L67-->L64: Formula: (< v_~j1~0_4 v_~M1~0_2) InVars {~j1~0=v_~j1~0_4, ~M1~0=v_~M1~0_2} OutVars{~j1~0=v_~j1~0_4, ~M1~0=v_~M1~0_2} AuxVars[] AssignedVars[]" "[336] L64-->L67: Formula: (and (= (+ v_~j1~0_15 1) v_~j1~0_14) (= (+ v_~counter~0_62 1) v_~counter~0_61)) InVars {~counter~0=v_~counter~0_62, ~j1~0=v_~j1~0_15} OutVars{thread3Thread1of1ForFork1_#t~post6=|v_thread3Thread1of1ForFork1_#t~post6_1|, ~counter~0=v_~counter~0_61, thread3Thread1of1ForFork1_#t~post5=|v_thread3Thread1of1ForFork1_#t~post5_1|, ~j1~0=v_~j1~0_14} AuxVars[] AssignedVars[~counter~0, thread3Thread1of1ForFork1_#t~post6, thread3Thread1of1ForFork1_#t~post5, ~j1~0]" "[333] L67-->L70: Formula: (<= v_~M1~0_1 v_~j1~0_3) InVars {~j1~0=v_~j1~0_3, ~M1~0=v_~M1~0_1} OutVars{~j1~0=v_~j1~0_3, ~M1~0=v_~M1~0_1} AuxVars[] AssignedVars[]" [2025-04-26 18:32:13,650 INFO L754 eck$LassoCheckResult]: Loop: "[330] L52-->L56: Formula: (and (not (= (ite (< 0 v_~counter~0_96) 1 0) 0)) (= (+ v_~counter~0_95 1) v_~counter~0_96) (= v_~i2~0_20 (+ v_~i2~0_21 1))) InVars {~counter~0=v_~counter~0_96, ~i2~0=v_~i2~0_21} OutVars{thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1_1|, ~counter~0=v_~counter~0_95, thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1_1|, ~i2~0=v_~i2~0_20, thread2Thread1of1ForFork0_#t~post3#1=|v_thread2Thread1of1ForFork0_#t~post3#1_1|, thread2Thread1of1ForFork0_#t~post4#1=|v_thread2Thread1of1ForFork0_#t~post4#1_1|} AuxVars[] AssignedVars[~counter~0, thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1, thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1, ~i2~0, thread2Thread1of1ForFork0_#t~post3#1, thread2Thread1of1ForFork0_#t~post4#1]" "[328] L56-->L52: Formula: (< v_~i2~0_4 v_~N2~0_2) InVars {~i2~0=v_~i2~0_4, ~N2~0=v_~N2~0_2} OutVars{~i2~0=v_~i2~0_4, ~N2~0=v_~N2~0_2} AuxVars[] AssignedVars[]" [2025-04-26 18:32:13,650 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 18:32:13,650 INFO L85 PathProgramCache]: Analyzing trace with hash -1050364588, now seen corresponding path program 1 times [2025-04-26 18:32:13,650 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 18:32:13,650 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [305654569] [2025-04-26 18:32:13,650 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 18:32:13,650 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 18:32:13,655 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 67 statements into 1 equivalence classes. [2025-04-26 18:32:13,663 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 67 of 67 statements. [2025-04-26 18:32:13,663 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:13,663 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 18:32:13,663 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 18:32:13,665 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 67 statements into 1 equivalence classes. [2025-04-26 18:32:13,675 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 67 of 67 statements. [2025-04-26 18:32:13,676 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:13,676 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 18:32:13,690 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 18:32:13,691 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 18:32:13,691 INFO L85 PathProgramCache]: Analyzing trace with hash 11519, now seen corresponding path program 3 times [2025-04-26 18:32:13,691 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 18:32:13,691 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [207159225] [2025-04-26 18:32:13,691 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-04-26 18:32:13,691 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 18:32:13,694 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 2 statements into 1 equivalence classes. [2025-04-26 18:32:13,695 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 18:32:13,695 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) [2025-04-26 18:32:13,695 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 18:32:13,695 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 18:32:13,696 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 18:32:13,696 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 18:32:13,696 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:13,697 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 18:32:13,698 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 18:32:13,698 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 18:32:13,698 INFO L85 PathProgramCache]: Analyzing trace with hash -83043950, now seen corresponding path program 1 times [2025-04-26 18:32:13,698 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 18:32:13,698 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1051597450] [2025-04-26 18:32:13,698 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 18:32:13,698 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 18:32:13,703 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 69 statements into 1 equivalence classes. [2025-04-26 18:32:13,709 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 69 of 69 statements. [2025-04-26 18:32:13,709 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:13,709 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 18:32:13,950 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2025-04-26 18:32:13,951 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-04-26 18:32:13,951 INFO L324 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1051597450] [2025-04-26 18:32:13,951 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1051597450] provided 1 perfect and 0 imperfect interpolant sequences [2025-04-26 18:32:13,951 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-04-26 18:32:13,951 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2025-04-26 18:32:13,951 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1570404151] [2025-04-26 18:32:13,951 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-04-26 18:32:13,969 INFO L206 LassoAnalysis]: Preferences: [2025-04-26 18:32:13,969 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-04-26 18:32:13,969 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-04-26 18:32:13,969 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-04-26 18:32:13,969 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2025-04-26 18:32:13,969 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:13,969 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-04-26 18:32:13,969 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-04-26 18:32:13,969 INFO L132 ssoRankerPreferences]: Filename of dumped script: popl20-proofs-counter-add-4-semi-Q67.wvr.c_petrified1_Iteration5_Loop [2025-04-26 18:32:13,969 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-04-26 18:32:13,969 INFO L243 LassoAnalysis]: Starting lasso preprocessing... [2025-04-26 18:32:13,970 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:13,972 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:13,976 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:13,978 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:13,980 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:13,982 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:13,984 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:13,986 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:13,987 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:13,989 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:13,990 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:13,992 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:13,996 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:13,998 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:14,082 INFO L261 LassoAnalysis]: Preprocessing complete. [2025-04-26 18:32:14,082 INFO L367 LassoAnalysis]: Checking for nontermination... [2025-04-26 18:32:14,083 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:14,083 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:14,087 INFO L229 MonitoredProcess]: Starting monitored process 45 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:14,089 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (45)] Waiting until timeout for monitored process [2025-04-26 18:32:14,090 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 18:32:14,090 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:14,107 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 18:32:14,108 INFO L403 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {v_rep#funAddr~thread3.offset_9=2} Honda state: {v_rep#funAddr~thread3.offset_9=2} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-04-26 18:32:14,114 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (45)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:14,114 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:14,114 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:14,116 INFO L229 MonitoredProcess]: Starting monitored process 46 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:14,117 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (46)] Waiting until timeout for monitored process [2025-04-26 18:32:14,119 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 18:32:14,119 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:14,135 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (46)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:14,135 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:14,135 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:14,138 INFO L229 MonitoredProcess]: Starting monitored process 47 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:14,140 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (47)] Waiting until timeout for monitored process [2025-04-26 18:32:14,141 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2025-04-26 18:32:14,141 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:14,222 INFO L407 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2025-04-26 18:32:14,227 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (47)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:14,228 INFO L206 LassoAnalysis]: Preferences: [2025-04-26 18:32:14,228 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-04-26 18:32:14,228 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-04-26 18:32:14,228 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-04-26 18:32:14,228 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-04-26 18:32:14,228 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:14,228 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-04-26 18:32:14,228 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-04-26 18:32:14,228 INFO L132 ssoRankerPreferences]: Filename of dumped script: popl20-proofs-counter-add-4-semi-Q67.wvr.c_petrified1_Iteration5_Loop [2025-04-26 18:32:14,228 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-04-26 18:32:14,228 INFO L243 LassoAnalysis]: Starting lasso preprocessing... [2025-04-26 18:32:14,230 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:14,235 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:14,237 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:14,239 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:14,240 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:14,242 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:14,244 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:14,246 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:14,248 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:14,250 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:14,253 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:14,258 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:14,261 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:14,263 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:14,333 INFO L261 LassoAnalysis]: Preprocessing complete. [2025-04-26 18:32:14,333 INFO L453 LassoAnalysis]: Using template 'affine'. [2025-04-26 18:32:14,333 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:14,333 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:14,335 INFO L229 MonitoredProcess]: Starting monitored process 48 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:14,336 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (48)] Waiting until timeout for monitored process [2025-04-26 18:32:14,337 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 [2025-04-26 18:32:14,347 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 18:32:14,347 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-04-26 18:32:14,347 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 18:32:14,347 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 18:32:14,347 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 18:32:14,348 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-04-26 18:32:14,348 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-04-26 18:32:14,349 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-04-26 18:32:14,352 INFO L436 ModelExtractionUtils]: Simplification made 4 calls to the SMT solver. [2025-04-26 18:32:14,352 INFO L437 ModelExtractionUtils]: 0 out of 4 variables were initially zero. Simplification set additionally 1 variables to zero. [2025-04-26 18:32:14,352 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:14,352 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:14,354 INFO L229 MonitoredProcess]: Starting monitored process 49 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:14,355 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (49)] Waiting until timeout for monitored process [2025-04-26 18:32:14,356 INFO L436 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-04-26 18:32:14,359 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (49)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:14,359 INFO L439 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2025-04-26 18:32:14,360 INFO L476 LassoAnalysis]: Proved termination. [2025-04-26 18:32:14,360 INFO L478 LassoAnalysis]: Termination argument consisting of: Ranking function f(~i2~0, ~N2~0) = -1*~i2~0 + 1*~N2~0 Supporting invariants [] [2025-04-26 18:32:14,366 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (48)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:14,366 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2025-04-26 18:32:14,376 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 18:32:14,386 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 67 statements into 1 equivalence classes. [2025-04-26 18:32:14,399 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 67 of 67 statements. [2025-04-26 18:32:14,399 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:14,399 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 18:32:14,400 INFO L256 TraceCheckSpWp]: Trace formula consists of 147 conjuncts, 2 conjuncts are in the unsatisfiable core [2025-04-26 18:32:14,401 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 18:32:14,519 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 18:32:14,521 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 18:32:14,521 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:14,521 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 18:32:14,521 WARN L254 TraceCheckSpWp]: Trace formula consists of 8 conjuncts, 4 conjuncts are in the unsatisfiable core [2025-04-26 18:32:14,521 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 18:32:14,549 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-04-26 18:32:14,551 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 [2025-04-26 18:32:14,551 INFO L70 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 3452 states and 7969 transitions. cyclomatic complexity: 5030 Second operand has 3 states, 3 states have (on average 23.0) internal successors, (in total 69), 3 states have internal predecessors, (69), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:14,621 INFO L74 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 3452 states and 7969 transitions. cyclomatic complexity: 5030. Second operand has 3 states, 3 states have (on average 23.0) internal successors, (in total 69), 3 states have internal predecessors, (69), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) Result 4386 states and 9952 transitions. Complement of second has 6 states. [2025-04-26 18:32:14,621 INFO L140 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 4 states 1 stem states 2 non-accepting loop states 1 accepting loop states [2025-04-26 18:32:14,622 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 23.0) internal successors, (in total 69), 3 states have internal predecessors, (69), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:14,622 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 147 transitions. [2025-04-26 18:32:14,622 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 4 states and 147 transitions. Stem has 67 letters. Loop has 2 letters. [2025-04-26 18:32:14,622 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 18:32:14,622 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 4 states and 147 transitions. Stem has 69 letters. Loop has 2 letters. [2025-04-26 18:32:14,622 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 18:32:14,622 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 4 states and 147 transitions. Stem has 67 letters. Loop has 4 letters. [2025-04-26 18:32:14,622 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 18:32:14,622 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 4386 states and 9952 transitions. [2025-04-26 18:32:14,647 INFO L131 ngComponentsAnalysis]: Automaton has 109 accepting balls. 218 [2025-04-26 18:32:14,664 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 4386 states to 3753 states and 8532 transitions. [2025-04-26 18:32:14,665 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1674 [2025-04-26 18:32:14,668 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 1848 [2025-04-26 18:32:14,668 INFO L74 IsDeterministic]: Start isDeterministic. Operand 3753 states and 8532 transitions. [2025-04-26 18:32:14,668 INFO L81 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-04-26 18:32:14,668 INFO L218 hiAutomatonCegarLoop]: Abstraction has 3753 states and 8532 transitions. [2025-04-26 18:32:14,672 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3753 states and 8532 transitions. [2025-04-26 18:32:14,716 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3753 to 3514. [2025-04-26 18:32:14,719 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3514 states, 3514 states have (on average 2.303073420603301) internal successors, (in total 8093), 3513 states have internal predecessors, (8093), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:14,727 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3514 states to 3514 states and 8093 transitions. [2025-04-26 18:32:14,727 INFO L240 hiAutomatonCegarLoop]: Abstraction has 3514 states and 8093 transitions. [2025-04-26 18:32:14,727 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-04-26 18:32:14,728 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2025-04-26 18:32:14,728 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=27, Invalid=83, Unknown=0, NotChecked=0, Total=110 [2025-04-26 18:32:14,728 INFO L87 Difference]: Start difference. First operand 3514 states and 8093 transitions. Second operand has 11 states, 10 states have (on average 6.9) internal successors, (in total 69), 11 states have internal predecessors, (69), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:14,931 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-04-26 18:32:14,931 INFO L93 Difference]: Finished difference Result 4057 states and 8987 transitions. [2025-04-26 18:32:14,931 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 4057 states and 8987 transitions. [2025-04-26 18:32:14,948 INFO L131 ngComponentsAnalysis]: Automaton has 100 accepting balls. 200 [2025-04-26 18:32:14,967 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 4057 states to 3927 states and 8788 transitions. [2025-04-26 18:32:14,967 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1860 [2025-04-26 18:32:14,969 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 1884 [2025-04-26 18:32:14,969 INFO L74 IsDeterministic]: Start isDeterministic. Operand 3927 states and 8788 transitions. [2025-04-26 18:32:14,969 INFO L81 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-04-26 18:32:14,969 INFO L218 hiAutomatonCegarLoop]: Abstraction has 3927 states and 8788 transitions. [2025-04-26 18:32:14,973 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3927 states and 8788 transitions. [2025-04-26 18:32:15,012 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3927 to 3639. [2025-04-26 18:32:15,017 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3639 states, 3639 states have (on average 2.286892003297609) internal successors, (in total 8322), 3638 states have internal predecessors, (8322), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:15,023 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3639 states to 3639 states and 8322 transitions. [2025-04-26 18:32:15,023 INFO L240 hiAutomatonCegarLoop]: Abstraction has 3639 states and 8322 transitions. [2025-04-26 18:32:15,024 INFO L140 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2025-04-26 18:32:15,026 INFO L438 stractBuchiCegarLoop]: Abstraction has 3639 states and 8322 transitions. [2025-04-26 18:32:15,026 INFO L340 stractBuchiCegarLoop]: ======== Iteration 6 ============ [2025-04-26 18:32:15,026 INFO L73 BuchiIsEmpty]: Start buchiIsEmpty. Operand 3639 states and 8322 transitions. [2025-04-26 18:32:15,038 INFO L131 ngComponentsAnalysis]: Automaton has 78 accepting balls. 156 [2025-04-26 18:32:15,038 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-04-26 18:32:15,038 INFO L120 BuchiIsEmpty]: Starting construction of run [2025-04-26 18:32:15,040 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-04-26 18:32:15,040 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1] [2025-04-26 18:32:15,041 INFO L752 eck$LassoCheckResult]: Stem: "[237] $Ultimate##0-->L-1: Formula: (= (select |v_#valid_1| 0) 0) InVars {#valid=|v_#valid_1|} OutVars{#valid=|v_#valid_1|} AuxVars[] AssignedVars[]" "[241] L-1-->L21: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[]" "[283] L21-->L21-1: Formula: (and (= (select |v_#valid_2| 1) 1) (= 2 (select |v_#length_1| 1))) InVars {#length=|v_#length_1|, #valid=|v_#valid_2|} OutVars{#length=|v_#length_1|, #valid=|v_#valid_2|} AuxVars[] AssignedVars[]" "[303] L21-1-->L21-2: Formula: (= 48 (select (select |v_#memory_int_1| 1) 0)) InVars {#memory_int=|v_#memory_int_1|} OutVars{#memory_int=|v_#memory_int_1|} AuxVars[] AssignedVars[]" "[247] L21-2-->L21-3: Formula: (= (select (select |v_#memory_int_2| 1) 1) 0) InVars {#memory_int=|v_#memory_int_2|} OutVars{#memory_int=|v_#memory_int_2|} AuxVars[] AssignedVars[]" "[277] L21-3-->L21-4: Formula: (and (= 43 (select |v_#length_2| 2)) (= (select |v_#valid_3| 2) 1)) InVars {#length=|v_#length_2|, #valid=|v_#valid_3|} OutVars{#length=|v_#length_2|, #valid=|v_#valid_3|} AuxVars[] AssignedVars[]" "[261] L21-4-->L37: Formula: (= v_~i1~0_5 0) InVars {} OutVars{~i1~0=v_~i1~0_5} AuxVars[] AssignedVars[~i1~0]" "[255] L37-->L37-1: Formula: (= v_~i2~0_5 0) InVars {} OutVars{~i2~0=v_~i2~0_5} AuxVars[] AssignedVars[~i2~0]" "[256] L37-1-->L37-2: Formula: (= 0 v_~N1~0_3) InVars {} OutVars{~N1~0=v_~N1~0_3} AuxVars[] AssignedVars[~N1~0]" "[221] L37-2-->L37-3: Formula: (= 0 v_~N2~0_3) InVars {} OutVars{~N2~0=v_~N2~0_3} AuxVars[] AssignedVars[~N2~0]" "[238] L37-3-->L37-4: Formula: (= v_~counter~0_9 0) InVars {} OutVars{~counter~0=v_~counter~0_9} AuxVars[] AssignedVars[~counter~0]" "[297] L37-4-->L37-5: Formula: (= v_~j1~0_5 0) InVars {} OutVars{~j1~0=v_~j1~0_5} AuxVars[] AssignedVars[~j1~0]" "[271] L37-5-->L37-6: Formula: (= v_~j2~0_1 0) InVars {} OutVars{~j2~0=v_~j2~0_1} AuxVars[] AssignedVars[~j2~0]" "[264] L37-6-->L37-7: Formula: (= 0 v_~M1~0_3) InVars {} OutVars{~M1~0=v_~M1~0_3} AuxVars[] AssignedVars[~M1~0]" "[278] L37-7-->L-1-1: Formula: (= 0 v_~M2~0_1) InVars {} OutVars{~M2~0=v_~M2~0_1} AuxVars[] AssignedVars[~M2~0]" "[309] L-1-1-->L-1-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1]" "[310] L-1-2-->L86: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t4~0#1=|v_ULTIMATE.start_main_~t4~0#1_2|, ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_2|, ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_2|, ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_2|, ULTIMATE.start_main_~t3~0#1=|v_ULTIMATE.start_main_~t3~0#1_2|, ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_2|, ULTIMATE.start_main_#t~nondet18#1=|v_ULTIMATE.start_main_#t~nondet18#1_2|, ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_2|, ULTIMATE.start_main_#t~pre17#1=|v_ULTIMATE.start_main_#t~pre17#1_2|, ULTIMATE.start_main_#t~nondet14#1=|v_ULTIMATE.start_main_#t~nondet14#1_2|, ULTIMATE.start_main_#t~pre19#1=|v_ULTIMATE.start_main_#t~pre19#1_2|, ULTIMATE.start_main_~t1~0#1=|v_ULTIMATE.start_main_~t1~0#1_2|, ULTIMATE.start_main_#t~nondet16#1=|v_ULTIMATE.start_main_#t~nondet16#1_2|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_2|, ULTIMATE.start_main_#t~nondet20#1=|v_ULTIMATE.start_main_#t~nondet20#1_2|, ULTIMATE.start_main_~t2~0#1=|v_ULTIMATE.start_main_~t2~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t4~0#1, ULTIMATE.start_main_#t~pre13#1, ULTIMATE.start_main_#t~nondet10#1, ULTIMATE.start_main_#t~nondet9#1, ULTIMATE.start_main_~t3~0#1, ULTIMATE.start_main_#t~pre15#1, ULTIMATE.start_main_#t~nondet18#1, ULTIMATE.start_main_#t~nondet12#1, ULTIMATE.start_main_#t~pre17#1, ULTIMATE.start_main_#t~nondet14#1, ULTIMATE.start_main_#t~pre19#1, ULTIMATE.start_main_~t1~0#1, ULTIMATE.start_main_#t~nondet16#1, ULTIMATE.start_main_#t~nondet11#1, ULTIMATE.start_main_#t~nondet20#1, ULTIMATE.start_main_~t2~0#1]" "[214] L86-->L86-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t1~0#1=|v_ULTIMATE.start_main_~t1~0#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t1~0#1]" "[269] L86-1-->L86-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t2~0#1=|v_ULTIMATE.start_main_~t2~0#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t2~0#1]" "[319] L86-2-->L86-3: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t3~0#1=|v_ULTIMATE.start_main_~t3~0#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t3~0#1]" "[250] L86-3-->L88: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t4~0#1=|v_ULTIMATE.start_main_~t4~0#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t4~0#1]" "[282] L88-->L88-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet9#1]" "[302] L88-1-->L88-2: Formula: (= |v_ULTIMATE.start_main_#t~nondet9#1_4| v_~N1~0_4) InVars {ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_4|} OutVars{ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_4|, ~N1~0=v_~N1~0_4} AuxVars[] AssignedVars[~N1~0]" "[218] L88-2-->L89: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet9#1]" "[267] L89-->L89-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet10#1]" "[249] L89-1-->L89-2: Formula: (= |v_ULTIMATE.start_main_#t~nondet10#1_4| v_~N2~0_4) InVars {ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_4|} OutVars{ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_4|, ~N2~0=v_~N2~0_4} AuxVars[] AssignedVars[~N2~0]" "[273] L89-2-->L90: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet10#1]" "[306] L90-->L90-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet11#1]" "[228] L90-1-->L90-2: Formula: (= |v_ULTIMATE.start_main_#t~nondet11#1_4| v_~M1~0_4) InVars {ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_4|} OutVars{ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_4|, ~M1~0=v_~M1~0_4} AuxVars[] AssignedVars[~M1~0]" "[239] L90-2-->L91: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet11#1]" "[229] L91-->L91-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet12#1]" "[240] L91-1-->L91-2: Formula: (= |v_ULTIMATE.start_main_#t~nondet12#1_4| v_~M2~0_2) InVars {ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_4|} OutVars{~M2~0=v_~M2~0_2, ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_4|} AuxVars[] AssignedVars[~M2~0]" "[265] L91-2-->L92: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet12#1]" "[298] L92-->L92-1: Formula: (= (ite (and (= v_~M1~0_5 v_~N1~0_5) (= v_~N1~0_5 v_~N2~0_5) (= v_~M2~0_3 v_~N1~0_5)) 1 0) |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_4|) InVars {~M1~0=v_~M1~0_5, ~N1~0=v_~N1~0_5, ~N2~0=v_~N2~0_5, ~M2~0=v_~M2~0_3} OutVars{~M1~0=v_~M1~0_5, ~N1~0=v_~N1~0_5, ~N2~0=v_~N2~0_5, ~M2~0=v_~M2~0_3, ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_#in~cond#1]" "[292] L92-1-->L33: Formula: true InVars {} OutVars{ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_~cond#1]" "[226] L33-->L34: Formula: (= |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_5| |v_ULTIMATE.start_assume_abort_if_not_~cond#1_7|) InVars {ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_5|} OutVars{ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_7|, ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_~cond#1]" "[235] L34-->L33-1: Formula: (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_9| 0)) InVars {ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_9|} OutVars{ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_9|} AuxVars[] AssignedVars[]" "[251] L33-1-->L92-2: Formula: true InVars {} OutVars{ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_10|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_~cond#1]" "[259] L92-2-->L95: Formula: true InVars {} OutVars{ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_#in~cond#1]" "[279] L95-->L95-1: Formula: (= |v_ULTIMATE.start_main_#t~pre13#1_3| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre13#1]" "[289] L95-1-->L95-2: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks]" "[290] L95-2-->L95-3: Formula: (= |v_ULTIMATE.start_main_~t1~0#1_4| |v_ULTIMATE.start_main_#t~pre13#1_4|) InVars {ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_4|} OutVars{ULTIMATE.start_main_~t1~0#1=|v_ULTIMATE.start_main_~t1~0#1_4|, ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t1~0#1]" "[352] L95-3-->$Ultimate##0: Formula: (and (= |v_thread1Thread1of1ForFork2_#in~_argptr.offset_4| 0) (= |v_ULTIMATE.start_main_#t~pre13#1_7| v_thread1Thread1of1ForFork2_thidvar0_2) (= 0 v_thread1Thread1of1ForFork2_thidvar1_2) (= |v_thread1Thread1of1ForFork2_#in~_argptr.base_4| 0)) InVars {ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_7|} OutVars{thread1Thread1of1ForFork2_thidvar1=v_thread1Thread1of1ForFork2_thidvar1_2, thread1Thread1of1ForFork2_thidvar0=v_thread1Thread1of1ForFork2_thidvar0_2, thread1Thread1of1ForFork2_#res.base=|v_thread1Thread1of1ForFork2_#res.base_4|, ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_7|, thread1Thread1of1ForFork2_#t~post1=|v_thread1Thread1of1ForFork2_#t~post1_4|, thread1Thread1of1ForFork2_#t~post2=|v_thread1Thread1of1ForFork2_#t~post2_4|, thread1Thread1of1ForFork2_~_argptr.base=v_thread1Thread1of1ForFork2_~_argptr.base_4, thread1Thread1of1ForFork2_#res.offset=|v_thread1Thread1of1ForFork2_#res.offset_4|, thread1Thread1of1ForFork2_#in~_argptr.offset=|v_thread1Thread1of1ForFork2_#in~_argptr.offset_4|, thread1Thread1of1ForFork2_~_argptr.offset=v_thread1Thread1of1ForFork2_~_argptr.offset_4, thread1Thread1of1ForFork2_#in~_argptr.base=|v_thread1Thread1of1ForFork2_#in~_argptr.base_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_thidvar1, thread1Thread1of1ForFork2_thidvar0, thread1Thread1of1ForFork2_#res.base, thread1Thread1of1ForFork2_#t~post1, thread1Thread1of1ForFork2_#t~post2, thread1Thread1of1ForFork2_~_argptr.base, thread1Thread1of1ForFork2_#res.offset, thread1Thread1of1ForFork2_#in~_argptr.offset, thread1Thread1of1ForFork2_~_argptr.offset, thread1Thread1of1ForFork2_#in~_argptr.base]" "[320] $Ultimate##0-->L44: Formula: (and (= |v_thread1Thread1of1ForFork2_#in~_argptr.offset_1| v_thread1Thread1of1ForFork2_~_argptr.offset_1) (= v_thread1Thread1of1ForFork2_~_argptr.base_1 |v_thread1Thread1of1ForFork2_#in~_argptr.base_1|)) InVars {thread1Thread1of1ForFork2_#in~_argptr.offset=|v_thread1Thread1of1ForFork2_#in~_argptr.offset_1|, thread1Thread1of1ForFork2_#in~_argptr.base=|v_thread1Thread1of1ForFork2_#in~_argptr.base_1|} OutVars{thread1Thread1of1ForFork2_~_argptr.base=v_thread1Thread1of1ForFork2_~_argptr.base_1, thread1Thread1of1ForFork2_#in~_argptr.offset=|v_thread1Thread1of1ForFork2_#in~_argptr.offset_1|, thread1Thread1of1ForFork2_~_argptr.offset=v_thread1Thread1of1ForFork2_~_argptr.offset_1, thread1Thread1of1ForFork2_#in~_argptr.base=|v_thread1Thread1of1ForFork2_#in~_argptr.base_1|} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_~_argptr.base, thread1Thread1of1ForFork2_~_argptr.offset]" "[322] L44-->L41: Formula: (< v_~i1~0_1 v_~N1~0_1) InVars {~i1~0=v_~i1~0_1, ~N1~0=v_~N1~0_1} OutVars{~i1~0=v_~i1~0_1, ~N1~0=v_~N1~0_1} AuxVars[] AssignedVars[]" "[243] L95-4-->L95-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre13#1]" "[324] L41-->L44: Formula: (and (= (+ v_~counter~0_22 1) v_~counter~0_21) (= v_~i1~0_16 (+ v_~i1~0_17 1))) InVars {~counter~0=v_~counter~0_22, ~i1~0=v_~i1~0_17} OutVars{thread1Thread1of1ForFork2_#t~post2=|v_thread1Thread1of1ForFork2_#t~post2_1|, ~counter~0=v_~counter~0_21, ~i1~0=v_~i1~0_16, thread1Thread1of1ForFork2_#t~post1=|v_thread1Thread1of1ForFork2_#t~post1_1|} AuxVars[] AssignedVars[~counter~0, thread1Thread1of1ForFork2_#t~post1, thread1Thread1of1ForFork2_#t~post2, ~i1~0]" "[322] L44-->L41: Formula: (< v_~i1~0_1 v_~N1~0_1) InVars {~i1~0=v_~i1~0_1, ~N1~0=v_~N1~0_1} OutVars{~i1~0=v_~i1~0_1, ~N1~0=v_~N1~0_1} AuxVars[] AssignedVars[]" "[324] L41-->L44: Formula: (and (= (+ v_~counter~0_22 1) v_~counter~0_21) (= v_~i1~0_16 (+ v_~i1~0_17 1))) InVars {~counter~0=v_~counter~0_22, ~i1~0=v_~i1~0_17} OutVars{thread1Thread1of1ForFork2_#t~post2=|v_thread1Thread1of1ForFork2_#t~post2_1|, ~counter~0=v_~counter~0_21, ~i1~0=v_~i1~0_16, thread1Thread1of1ForFork2_#t~post1=|v_thread1Thread1of1ForFork2_#t~post1_1|} AuxVars[] AssignedVars[~counter~0, thread1Thread1of1ForFork2_#t~post1, thread1Thread1of1ForFork2_#t~post2, ~i1~0]" "[321] L44-->L47: Formula: (<= v_~N1~0_2 v_~i1~0_4) InVars {~i1~0=v_~i1~0_4, ~N1~0=v_~N1~0_2} OutVars{~i1~0=v_~i1~0_4, ~N1~0=v_~N1~0_2} AuxVars[] AssignedVars[]" "[323] L47-->thread1FINAL: Formula: (and (= |v_thread1Thread1of1ForFork2_#res.offset_1| 0) (= |v_thread1Thread1of1ForFork2_#res.base_1| 0)) InVars {} OutVars{thread1Thread1of1ForFork2_#res.base=|v_thread1Thread1of1ForFork2_#res.base_1|, thread1Thread1of1ForFork2_#res.offset=|v_thread1Thread1of1ForFork2_#res.offset_1|} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_#res.base, thread1Thread1of1ForFork2_#res.offset]" "[325] thread1FINAL-->thread1EXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[]" "[213] L95-5-->L96: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet14#1=|v_ULTIMATE.start_main_#t~nondet14#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet14#1]" "[299] L96-->L96-1: Formula: (= |v_ULTIMATE.start_main_#t~pre15#1_3| |v_#pthreadsForks_4|) InVars {#pthreadsForks=|v_#pthreadsForks_4|} OutVars{#pthreadsForks=|v_#pthreadsForks_4|, ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre15#1]" "[266] L96-1-->L96-2: Formula: (= (+ 1 |v_#pthreadsForks_6|) |v_#pthreadsForks_5|) InVars {#pthreadsForks=|v_#pthreadsForks_6|} OutVars{#pthreadsForks=|v_#pthreadsForks_5|} AuxVars[] AssignedVars[#pthreadsForks]" "[227] L96-2-->L96-3: Formula: (= |v_ULTIMATE.start_main_~t2~0#1_4| |v_ULTIMATE.start_main_#t~pre15#1_4|) InVars {ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_4|} OutVars{ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_4|, ULTIMATE.start_main_~t2~0#1=|v_ULTIMATE.start_main_~t2~0#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t2~0#1]" "[346] L96-3-->$Ultimate##0: Formula: (and (= |v_thread2Thread1of1ForFork0_#in~_argptr#1.offset_4| 0) (= v_thread2Thread1of1ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre15#1_7|) (= |v_thread2Thread1of1ForFork0_#in~_argptr#1.base_4| 0) (= v_thread2Thread1of1ForFork0_thidvar2_2 0) (= v_thread2Thread1of1ForFork0_thidvar1_2 0)) InVars {ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_7|} OutVars{thread2Thread1of1ForFork0_#res#1.offset=|v_thread2Thread1of1ForFork0_#res#1.offset_4|, thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1_4|, thread2Thread1of1ForFork0_#t~post3#1=|v_thread2Thread1of1ForFork0_#t~post3#1_4|, ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_7|, thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1_4|, thread2Thread1of1ForFork0_#in~_argptr#1.offset=|v_thread2Thread1of1ForFork0_#in~_argptr#1.offset_4|, thread2Thread1of1ForFork0_#res#1.base=|v_thread2Thread1of1ForFork0_#res#1.base_4|, thread2Thread1of1ForFork0_#in~_argptr#1.base=|v_thread2Thread1of1ForFork0_#in~_argptr#1.base_4|, thread2Thread1of1ForFork0_thidvar2=v_thread2Thread1of1ForFork0_thidvar2_2, thread2Thread1of1ForFork0_thidvar1=v_thread2Thread1of1ForFork0_thidvar1_2, thread2Thread1of1ForFork0_~_argptr#1.base=|v_thread2Thread1of1ForFork0_~_argptr#1.base_4|, thread2Thread1of1ForFork0_thidvar0=v_thread2Thread1of1ForFork0_thidvar0_2, thread2Thread1of1ForFork0_~_argptr#1.offset=|v_thread2Thread1of1ForFork0_~_argptr#1.offset_4|, thread2Thread1of1ForFork0_#t~post4#1=|v_thread2Thread1of1ForFork0_#t~post4#1_4|} AuxVars[] AssignedVars[thread2Thread1of1ForFork0_#res#1.offset, thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1, thread2Thread1of1ForFork0_#t~post3#1, thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1, thread2Thread1of1ForFork0_#in~_argptr#1.offset, thread2Thread1of1ForFork0_#res#1.base, thread2Thread1of1ForFork0_#in~_argptr#1.base, thread2Thread1of1ForFork0_thidvar2, thread2Thread1of1ForFork0_thidvar1, thread2Thread1of1ForFork0_~_argptr#1.base, thread2Thread1of1ForFork0_thidvar0, thread2Thread1of1ForFork0_~_argptr#1.offset, thread2Thread1of1ForFork0_#t~post4#1]" "[326] $Ultimate##0-->L56: Formula: (and (= |v_thread2Thread1of1ForFork0_~_argptr#1.base_1| |v_thread2Thread1of1ForFork0_#in~_argptr#1.base_1|) (= |v_thread2Thread1of1ForFork0_#in~_argptr#1.offset_1| |v_thread2Thread1of1ForFork0_~_argptr#1.offset_1|)) InVars {thread2Thread1of1ForFork0_#in~_argptr#1.offset=|v_thread2Thread1of1ForFork0_#in~_argptr#1.offset_1|, thread2Thread1of1ForFork0_#in~_argptr#1.base=|v_thread2Thread1of1ForFork0_#in~_argptr#1.base_1|} OutVars{thread2Thread1of1ForFork0_#in~_argptr#1.offset=|v_thread2Thread1of1ForFork0_#in~_argptr#1.offset_1|, thread2Thread1of1ForFork0_~_argptr#1.base=|v_thread2Thread1of1ForFork0_~_argptr#1.base_1|, thread2Thread1of1ForFork0_#in~_argptr#1.base=|v_thread2Thread1of1ForFork0_#in~_argptr#1.base_1|, thread2Thread1of1ForFork0_~_argptr#1.offset=|v_thread2Thread1of1ForFork0_~_argptr#1.offset_1|} AuxVars[] AssignedVars[thread2Thread1of1ForFork0_~_argptr#1.base, thread2Thread1of1ForFork0_~_argptr#1.offset]" "[328] L56-->L52: Formula: (< v_~i2~0_4 v_~N2~0_2) InVars {~i2~0=v_~i2~0_4, ~N2~0=v_~N2~0_2} OutVars{~i2~0=v_~i2~0_4, ~N2~0=v_~N2~0_2} AuxVars[] AssignedVars[]" "[280] L96-4-->L96-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre15#1]" "[294] L96-5-->L97: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet16#1=|v_ULTIMATE.start_main_#t~nondet16#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet16#1]" "[268] L97-->L97-1: Formula: (= |v_ULTIMATE.start_main_#t~pre17#1_3| |v_#pthreadsForks_7|) InVars {#pthreadsForks=|v_#pthreadsForks_7|} OutVars{#pthreadsForks=|v_#pthreadsForks_7|, ULTIMATE.start_main_#t~pre17#1=|v_ULTIMATE.start_main_#t~pre17#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre17#1]" "[276] L97-1-->L97-2: Formula: (= (+ 1 |v_#pthreadsForks_9|) |v_#pthreadsForks_8|) InVars {#pthreadsForks=|v_#pthreadsForks_9|} OutVars{#pthreadsForks=|v_#pthreadsForks_8|} AuxVars[] AssignedVars[#pthreadsForks]" "[307] L97-2-->L97-3: Formula: (= |v_ULTIMATE.start_main_~t3~0#1_4| |v_ULTIMATE.start_main_#t~pre17#1_4|) InVars {ULTIMATE.start_main_#t~pre17#1=|v_ULTIMATE.start_main_#t~pre17#1_4|} OutVars{ULTIMATE.start_main_#t~pre17#1=|v_ULTIMATE.start_main_#t~pre17#1_4|, ULTIMATE.start_main_~t3~0#1=|v_ULTIMATE.start_main_~t3~0#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t3~0#1]" "[349] L97-3-->$Ultimate##0: Formula: (and (= |v_thread3Thread1of1ForFork1_#in~_argptr.base_4| 0) (= v_thread3Thread1of1ForFork1_thidvar0_2 |v_ULTIMATE.start_main_#t~pre17#1_7|) (= 0 v_thread3Thread1of1ForFork1_thidvar1_2) (= 0 v_thread3Thread1of1ForFork1_thidvar2_2) (= |v_thread3Thread1of1ForFork1_#in~_argptr.offset_4| 0) (= 0 v_thread3Thread1of1ForFork1_thidvar3_2)) InVars {ULTIMATE.start_main_#t~pre17#1=|v_ULTIMATE.start_main_#t~pre17#1_7|} OutVars{thread3Thread1of1ForFork1_#in~_argptr.base=|v_thread3Thread1of1ForFork1_#in~_argptr.base_4|, thread3Thread1of1ForFork1_#res.offset=|v_thread3Thread1of1ForFork1_#res.offset_4|, thread3Thread1of1ForFork1_thidvar0=v_thread3Thread1of1ForFork1_thidvar0_2, thread3Thread1of1ForFork1_#res.base=|v_thread3Thread1of1ForFork1_#res.base_4|, thread3Thread1of1ForFork1_thidvar3=v_thread3Thread1of1ForFork1_thidvar3_2, thread3Thread1of1ForFork1_~_argptr.base=v_thread3Thread1of1ForFork1_~_argptr.base_4, ULTIMATE.start_main_#t~pre17#1=|v_ULTIMATE.start_main_#t~pre17#1_7|, thread3Thread1of1ForFork1_thidvar1=v_thread3Thread1of1ForFork1_thidvar1_2, thread3Thread1of1ForFork1_thidvar2=v_thread3Thread1of1ForFork1_thidvar2_2, thread3Thread1of1ForFork1_~_argptr.offset=v_thread3Thread1of1ForFork1_~_argptr.offset_4, thread3Thread1of1ForFork1_#t~post6=|v_thread3Thread1of1ForFork1_#t~post6_4|, thread3Thread1of1ForFork1_#t~post5=|v_thread3Thread1of1ForFork1_#t~post5_4|, thread3Thread1of1ForFork1_#in~_argptr.offset=|v_thread3Thread1of1ForFork1_#in~_argptr.offset_4|} AuxVars[] AssignedVars[thread3Thread1of1ForFork1_~_argptr.offset, thread3Thread1of1ForFork1_#in~_argptr.base, thread3Thread1of1ForFork1_#t~post6, thread3Thread1of1ForFork1_#res.offset, thread3Thread1of1ForFork1_thidvar0, thread3Thread1of1ForFork1_#t~post5, thread3Thread1of1ForFork1_#in~_argptr.offset, thread3Thread1of1ForFork1_#res.base, thread3Thread1of1ForFork1_thidvar3, thread3Thread1of1ForFork1_~_argptr.base, thread3Thread1of1ForFork1_thidvar1, thread3Thread1of1ForFork1_thidvar2]" "[332] $Ultimate##0-->L67: Formula: (and (= v_thread3Thread1of1ForFork1_~_argptr.offset_1 |v_thread3Thread1of1ForFork1_#in~_argptr.offset_1|) (= |v_thread3Thread1of1ForFork1_#in~_argptr.base_1| v_thread3Thread1of1ForFork1_~_argptr.base_1)) InVars {thread3Thread1of1ForFork1_#in~_argptr.base=|v_thread3Thread1of1ForFork1_#in~_argptr.base_1|, thread3Thread1of1ForFork1_#in~_argptr.offset=|v_thread3Thread1of1ForFork1_#in~_argptr.offset_1|} OutVars{thread3Thread1of1ForFork1_~_argptr.offset=v_thread3Thread1of1ForFork1_~_argptr.offset_1, thread3Thread1of1ForFork1_#in~_argptr.base=|v_thread3Thread1of1ForFork1_#in~_argptr.base_1|, thread3Thread1of1ForFork1_#in~_argptr.offset=|v_thread3Thread1of1ForFork1_#in~_argptr.offset_1|, thread3Thread1of1ForFork1_~_argptr.base=v_thread3Thread1of1ForFork1_~_argptr.base_1} AuxVars[] AssignedVars[thread3Thread1of1ForFork1_~_argptr.offset, thread3Thread1of1ForFork1_~_argptr.base]" "[334] L67-->L64: Formula: (< v_~j1~0_4 v_~M1~0_2) InVars {~j1~0=v_~j1~0_4, ~M1~0=v_~M1~0_2} OutVars{~j1~0=v_~j1~0_4, ~M1~0=v_~M1~0_2} AuxVars[] AssignedVars[]" "[336] L64-->L67: Formula: (and (= (+ v_~j1~0_15 1) v_~j1~0_14) (= (+ v_~counter~0_62 1) v_~counter~0_61)) InVars {~counter~0=v_~counter~0_62, ~j1~0=v_~j1~0_15} OutVars{thread3Thread1of1ForFork1_#t~post6=|v_thread3Thread1of1ForFork1_#t~post6_1|, ~counter~0=v_~counter~0_61, thread3Thread1of1ForFork1_#t~post5=|v_thread3Thread1of1ForFork1_#t~post5_1|, ~j1~0=v_~j1~0_14} AuxVars[] AssignedVars[~counter~0, thread3Thread1of1ForFork1_#t~post6, thread3Thread1of1ForFork1_#t~post5, ~j1~0]" "[334] L67-->L64: Formula: (< v_~j1~0_4 v_~M1~0_2) InVars {~j1~0=v_~j1~0_4, ~M1~0=v_~M1~0_2} OutVars{~j1~0=v_~j1~0_4, ~M1~0=v_~M1~0_2} AuxVars[] AssignedVars[]" [2025-04-26 18:32:15,041 INFO L754 eck$LassoCheckResult]: Loop: "[330] L52-->L56: Formula: (and (not (= (ite (< 0 v_~counter~0_96) 1 0) 0)) (= (+ v_~counter~0_95 1) v_~counter~0_96) (= v_~i2~0_20 (+ v_~i2~0_21 1))) InVars {~counter~0=v_~counter~0_96, ~i2~0=v_~i2~0_21} OutVars{thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1_1|, ~counter~0=v_~counter~0_95, thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1_1|, ~i2~0=v_~i2~0_20, thread2Thread1of1ForFork0_#t~post3#1=|v_thread2Thread1of1ForFork0_#t~post3#1_1|, thread2Thread1of1ForFork0_#t~post4#1=|v_thread2Thread1of1ForFork0_#t~post4#1_1|} AuxVars[] AssignedVars[~counter~0, thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1, thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1, ~i2~0, thread2Thread1of1ForFork0_#t~post3#1, thread2Thread1of1ForFork0_#t~post4#1]" "[328] L56-->L52: Formula: (< v_~i2~0_4 v_~N2~0_2) InVars {~i2~0=v_~i2~0_4, ~N2~0=v_~N2~0_2} OutVars{~i2~0=v_~i2~0_4, ~N2~0=v_~N2~0_2} AuxVars[] AssignedVars[]" [2025-04-26 18:32:15,041 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 18:32:15,041 INFO L85 PathProgramCache]: Analyzing trace with hash 1361519063, now seen corresponding path program 1 times [2025-04-26 18:32:15,041 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 18:32:15,041 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2056125821] [2025-04-26 18:32:15,041 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 18:32:15,042 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 18:32:15,045 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 69 statements into 1 equivalence classes. [2025-04-26 18:32:15,049 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 69 of 69 statements. [2025-04-26 18:32:15,049 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:15,049 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 18:32:15,049 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 18:32:15,051 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 69 statements into 1 equivalence classes. [2025-04-26 18:32:15,055 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 69 of 69 statements. [2025-04-26 18:32:15,055 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:15,055 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 18:32:15,058 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 18:32:15,058 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 18:32:15,059 INFO L85 PathProgramCache]: Analyzing trace with hash 11519, now seen corresponding path program 4 times [2025-04-26 18:32:15,059 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 18:32:15,059 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [592541677] [2025-04-26 18:32:15,059 INFO L95 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2025-04-26 18:32:15,059 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 18:32:15,061 INFO L108 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST partitioned 2 statements into 2 equivalence classes. [2025-04-26 18:32:15,062 INFO L111 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 18:32:15,062 INFO L114 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) [2025-04-26 18:32:15,062 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 18:32:15,062 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 18:32:15,062 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 18:32:15,063 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 18:32:15,063 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:15,063 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 18:32:15,064 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 18:32:15,064 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 18:32:15,064 INFO L85 PathProgramCache]: Analyzing trace with hash -1545195179, now seen corresponding path program 1 times [2025-04-26 18:32:15,064 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 18:32:15,064 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1637221008] [2025-04-26 18:32:15,064 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 18:32:15,064 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 18:32:15,068 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 71 statements into 1 equivalence classes. [2025-04-26 18:32:15,071 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 71 of 71 statements. [2025-04-26 18:32:15,071 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:15,071 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 18:32:15,071 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 18:32:15,073 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 71 statements into 1 equivalence classes. [2025-04-26 18:32:15,077 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 71 of 71 statements. [2025-04-26 18:32:15,078 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:15,078 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 18:32:15,081 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 18:32:15,097 INFO L206 LassoAnalysis]: Preferences: [2025-04-26 18:32:15,097 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-04-26 18:32:15,097 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-04-26 18:32:15,097 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-04-26 18:32:15,097 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2025-04-26 18:32:15,097 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:15,097 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-04-26 18:32:15,097 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-04-26 18:32:15,097 INFO L132 ssoRankerPreferences]: Filename of dumped script: popl20-proofs-counter-add-4-semi-Q67.wvr.c_petrified1_Iteration6_Loop [2025-04-26 18:32:15,097 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-04-26 18:32:15,097 INFO L243 LassoAnalysis]: Starting lasso preprocessing... [2025-04-26 18:32:15,098 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:15,099 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:15,103 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:15,107 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:15,109 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:15,110 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:15,112 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:15,117 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:15,119 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:15,121 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:15,122 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:15,126 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:15,128 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:15,130 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:15,203 INFO L261 LassoAnalysis]: Preprocessing complete. [2025-04-26 18:32:15,203 INFO L367 LassoAnalysis]: Checking for nontermination... [2025-04-26 18:32:15,203 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:15,203 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:15,206 INFO L229 MonitoredProcess]: Starting monitored process 50 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:15,207 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (50)] Waiting until timeout for monitored process [2025-04-26 18:32:15,208 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 18:32:15,208 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:15,219 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 18:32:15,219 INFO L403 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {thread2Thread1of1ForFork0_#t~post3#1=0} Honda state: {thread2Thread1of1ForFork0_#t~post3#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-04-26 18:32:15,225 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (50)] Ended with exit code 0 [2025-04-26 18:32:15,225 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:15,225 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:15,227 INFO L229 MonitoredProcess]: Starting monitored process 51 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:15,230 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (51)] Waiting until timeout for monitored process [2025-04-26 18:32:15,231 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 18:32:15,231 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:15,242 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 18:32:15,242 INFO L403 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {thread2Thread1of1ForFork0_#t~post4#1=0} Honda state: {thread2Thread1of1ForFork0_#t~post4#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-04-26 18:32:15,248 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (51)] Ended with exit code 0 [2025-04-26 18:32:15,248 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:15,248 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:15,250 INFO L229 MonitoredProcess]: Starting monitored process 52 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:15,251 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (52)] Waiting until timeout for monitored process [2025-04-26 18:32:15,252 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 18:32:15,252 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:15,268 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (52)] Ended with exit code 0 [2025-04-26 18:32:15,269 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:15,269 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:15,271 INFO L229 MonitoredProcess]: Starting monitored process 53 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:15,271 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (53)] Waiting until timeout for monitored process [2025-04-26 18:32:15,272 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2025-04-26 18:32:15,272 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:15,293 INFO L407 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2025-04-26 18:32:15,296 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (53)] Ended with exit code 0 [2025-04-26 18:32:15,297 INFO L206 LassoAnalysis]: Preferences: [2025-04-26 18:32:15,297 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-04-26 18:32:15,297 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-04-26 18:32:15,297 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-04-26 18:32:15,297 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-04-26 18:32:15,297 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:15,297 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-04-26 18:32:15,297 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-04-26 18:32:15,297 INFO L132 ssoRankerPreferences]: Filename of dumped script: popl20-proofs-counter-add-4-semi-Q67.wvr.c_petrified1_Iteration6_Loop [2025-04-26 18:32:15,297 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-04-26 18:32:15,297 INFO L243 LassoAnalysis]: Starting lasso preprocessing... [2025-04-26 18:32:15,298 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:15,300 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:15,301 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:15,304 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:15,306 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:15,309 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:15,312 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:15,313 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:15,315 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:15,317 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:15,321 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:15,323 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:15,325 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:15,327 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:15,400 INFO L261 LassoAnalysis]: Preprocessing complete. [2025-04-26 18:32:15,401 INFO L453 LassoAnalysis]: Using template 'affine'. [2025-04-26 18:32:15,401 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:15,401 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:15,404 INFO L229 MonitoredProcess]: Starting monitored process 54 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:15,406 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (54)] Waiting until timeout for monitored process [2025-04-26 18:32:15,406 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 [2025-04-26 18:32:15,417 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 18:32:15,417 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-04-26 18:32:15,417 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 18:32:15,417 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 18:32:15,417 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 18:32:15,417 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-04-26 18:32:15,417 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-04-26 18:32:15,421 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 18:32:15,427 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (54)] Ended with exit code 0 [2025-04-26 18:32:15,428 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:15,428 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:15,429 INFO L229 MonitoredProcess]: Starting monitored process 55 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:15,431 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (55)] Waiting until timeout for monitored process [2025-04-26 18:32:15,432 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 [2025-04-26 18:32:15,441 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 18:32:15,441 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-04-26 18:32:15,441 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 18:32:15,441 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 18:32:15,441 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 18:32:15,442 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-04-26 18:32:15,442 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-04-26 18:32:15,443 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 18:32:15,448 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (55)] Ended with exit code 0 [2025-04-26 18:32:15,448 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:15,448 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:15,450 INFO L229 MonitoredProcess]: Starting monitored process 56 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:15,451 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (56)] Waiting until timeout for monitored process [2025-04-26 18:32:15,451 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 [2025-04-26 18:32:15,461 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 18:32:15,461 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 18:32:15,461 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 18:32:15,461 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 18:32:15,462 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 18:32:15,462 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 18:32:15,465 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 18:32:15,470 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (56)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:15,471 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:15,471 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:15,473 INFO L229 MonitoredProcess]: Starting monitored process 57 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:15,474 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (57)] Waiting until timeout for monitored process [2025-04-26 18:32:15,475 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 [2025-04-26 18:32:15,485 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 18:32:15,485 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 18:32:15,485 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 18:32:15,485 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 18:32:15,486 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 18:32:15,486 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 18:32:15,488 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 18:32:15,494 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (57)] Ended with exit code 0 [2025-04-26 18:32:15,494 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:15,494 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:15,496 INFO L229 MonitoredProcess]: Starting monitored process 58 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:15,496 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (58)] Waiting until timeout for monitored process [2025-04-26 18:32:15,497 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 [2025-04-26 18:32:15,507 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 18:32:15,508 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-04-26 18:32:15,508 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 18:32:15,508 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 18:32:15,508 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 18:32:15,508 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-04-26 18:32:15,508 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-04-26 18:32:15,510 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-04-26 18:32:15,512 INFO L436 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2025-04-26 18:32:15,512 INFO L437 ModelExtractionUtils]: 0 out of 3 variables were initially zero. Simplification set additionally 1 variables to zero. [2025-04-26 18:32:15,512 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:15,512 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:15,514 INFO L229 MonitoredProcess]: Starting monitored process 59 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:15,515 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (59)] Waiting until timeout for monitored process [2025-04-26 18:32:15,516 INFO L436 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-04-26 18:32:15,519 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (59)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:15,520 INFO L439 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2025-04-26 18:32:15,520 INFO L476 LassoAnalysis]: Proved termination. [2025-04-26 18:32:15,520 INFO L478 LassoAnalysis]: Termination argument consisting of: Ranking function f(~counter~0) = 1*~counter~0 Supporting invariants [] [2025-04-26 18:32:15,526 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (58)] Ended with exit code 0 [2025-04-26 18:32:15,527 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2025-04-26 18:32:15,536 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 18:32:15,546 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 69 statements into 1 equivalence classes. [2025-04-26 18:32:15,557 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 69 of 69 statements. [2025-04-26 18:32:15,557 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:15,557 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 18:32:15,558 INFO L256 TraceCheckSpWp]: Trace formula consists of 152 conjuncts, 2 conjuncts are in the unsatisfiable core [2025-04-26 18:32:15,559 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 18:32:15,620 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 18:32:15,621 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 18:32:15,621 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:15,621 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 18:32:15,622 WARN L254 TraceCheckSpWp]: Trace formula consists of 8 conjuncts, 4 conjuncts are in the unsatisfiable core [2025-04-26 18:32:15,622 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 18:32:15,632 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-04-26 18:32:15,633 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 [2025-04-26 18:32:15,633 INFO L70 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 3639 states and 8322 transitions. cyclomatic complexity: 5143 Second operand has 3 states, 3 states have (on average 23.0) internal successors, (in total 69), 3 states have internal predecessors, (69), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:15,669 INFO L74 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 3639 states and 8322 transitions. cyclomatic complexity: 5143. Second operand has 3 states, 3 states have (on average 23.0) internal successors, (in total 69), 3 states have internal predecessors, (69), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) Result 4516 states and 10051 transitions. Complement of second has 5 states. [2025-04-26 18:32:15,669 INFO L140 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 3 states 1 stem states 1 non-accepting loop states 1 accepting loop states [2025-04-26 18:32:15,669 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 23.0) internal successors, (in total 69), 3 states have internal predecessors, (69), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:15,669 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 126 transitions. [2025-04-26 18:32:15,670 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 3 states and 126 transitions. Stem has 69 letters. Loop has 2 letters. [2025-04-26 18:32:15,670 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 18:32:15,670 INFO L699 stractBuchiCegarLoop]: Bad chosen interpolant automaton: word not accepted [2025-04-26 18:32:15,679 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 18:32:15,694 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 69 statements into 1 equivalence classes. [2025-04-26 18:32:15,712 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 69 of 69 statements. [2025-04-26 18:32:15,713 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:15,713 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 18:32:15,714 INFO L256 TraceCheckSpWp]: Trace formula consists of 152 conjuncts, 2 conjuncts are in the unsatisfiable core [2025-04-26 18:32:15,715 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 18:32:15,806 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 18:32:15,807 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 18:32:15,807 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:15,807 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 18:32:15,807 WARN L254 TraceCheckSpWp]: Trace formula consists of 8 conjuncts, 4 conjuncts are in the unsatisfiable core [2025-04-26 18:32:15,808 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 18:32:15,819 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-04-26 18:32:15,819 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and with honda bouncer for loop.1 stem predicates 2 loop predicates [2025-04-26 18:32:15,820 INFO L70 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 3639 states and 8322 transitions. cyclomatic complexity: 5143 Second operand has 3 states, 3 states have (on average 23.0) internal successors, (in total 69), 3 states have internal predecessors, (69), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:15,884 INFO L74 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 3639 states and 8322 transitions. cyclomatic complexity: 5143. Second operand has 3 states, 3 states have (on average 23.0) internal successors, (in total 69), 3 states have internal predecessors, (69), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) Result 6370 states and 13863 transitions. Complement of second has 7 states. [2025-04-26 18:32:15,884 INFO L140 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 4 states 1 stem states 2 non-accepting loop states 1 accepting loop states [2025-04-26 18:32:15,885 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 23.0) internal successors, (in total 69), 3 states have internal predecessors, (69), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:15,885 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 161 transitions. [2025-04-26 18:32:15,885 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 4 states and 161 transitions. Stem has 69 letters. Loop has 2 letters. [2025-04-26 18:32:15,885 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 18:32:15,885 INFO L699 stractBuchiCegarLoop]: Bad chosen interpolant automaton: word not accepted [2025-04-26 18:32:15,894 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 18:32:15,904 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 69 statements into 1 equivalence classes. [2025-04-26 18:32:15,920 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 69 of 69 statements. [2025-04-26 18:32:15,921 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:15,921 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 18:32:15,921 INFO L256 TraceCheckSpWp]: Trace formula consists of 152 conjuncts, 2 conjuncts are in the unsatisfiable core [2025-04-26 18:32:15,922 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 18:32:15,988 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 18:32:15,989 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 18:32:15,989 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:15,989 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 18:32:15,990 WARN L254 TraceCheckSpWp]: Trace formula consists of 8 conjuncts, 4 conjuncts are in the unsatisfiable core [2025-04-26 18:32:15,990 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 18:32:16,004 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-04-26 18:32:16,004 INFO L141 lantAutomatonBouncer]: Defining Buchi interpolant automaton with scrooge nondeterminism in stemwith honda bouncer for stem and without honda bouncer for loop.1 stem predicates 2 loop predicates [2025-04-26 18:32:16,005 INFO L70 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 3639 states and 8322 transitions. cyclomatic complexity: 5143 Second operand has 3 states, 3 states have (on average 23.0) internal successors, (in total 69), 3 states have internal predecessors, (69), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:16,047 INFO L74 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 3639 states and 8322 transitions. cyclomatic complexity: 5143. Second operand has 3 states, 3 states have (on average 23.0) internal successors, (in total 69), 3 states have internal predecessors, (69), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) Result 5476 states and 11837 transitions. Complement of second has 4 states. [2025-04-26 18:32:16,047 INFO L140 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 3 states 1 stem states 1 non-accepting loop states 1 accepting loop states [2025-04-26 18:32:16,048 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 23.0) internal successors, (in total 69), 3 states have internal predecessors, (69), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:16,048 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 135 transitions. [2025-04-26 18:32:16,048 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 3 states and 135 transitions. Stem has 69 letters. Loop has 2 letters. [2025-04-26 18:32:16,048 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 18:32:16,048 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 3 states and 135 transitions. Stem has 71 letters. Loop has 2 letters. [2025-04-26 18:32:16,048 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 18:32:16,048 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 3 states and 135 transitions. Stem has 69 letters. Loop has 4 letters. [2025-04-26 18:32:16,048 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 18:32:16,048 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 5476 states and 11837 transitions. [2025-04-26 18:32:16,072 INFO L131 ngComponentsAnalysis]: Automaton has 53 accepting balls. 106 [2025-04-26 18:32:16,092 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 5476 states to 4816 states and 10393 transitions. [2025-04-26 18:32:16,092 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1823 [2025-04-26 18:32:16,094 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 1937 [2025-04-26 18:32:16,095 INFO L74 IsDeterministic]: Start isDeterministic. Operand 4816 states and 10393 transitions. [2025-04-26 18:32:16,095 INFO L81 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-04-26 18:32:16,095 INFO L218 hiAutomatonCegarLoop]: Abstraction has 4816 states and 10393 transitions. [2025-04-26 18:32:16,099 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 4816 states and 10393 transitions. [2025-04-26 18:32:16,143 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 4816 to 3803. [2025-04-26 18:32:16,147 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3803 states, 3803 states have (on average 2.243229029713384) internal successors, (in total 8531), 3802 states have internal predecessors, (8531), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:16,154 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3803 states to 3803 states and 8531 transitions. [2025-04-26 18:32:16,154 INFO L240 hiAutomatonCegarLoop]: Abstraction has 3803 states and 8531 transitions. [2025-04-26 18:32:16,155 INFO L438 stractBuchiCegarLoop]: Abstraction has 3803 states and 8531 transitions. [2025-04-26 18:32:16,155 INFO L340 stractBuchiCegarLoop]: ======== Iteration 7 ============ [2025-04-26 18:32:16,155 INFO L73 BuchiIsEmpty]: Start buchiIsEmpty. Operand 3803 states and 8531 transitions. [2025-04-26 18:32:16,164 INFO L131 ngComponentsAnalysis]: Automaton has 53 accepting balls. 106 [2025-04-26 18:32:16,164 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-04-26 18:32:16,164 INFO L120 BuchiIsEmpty]: Starting construction of run [2025-04-26 18:32:16,165 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-04-26 18:32:16,165 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1] [2025-04-26 18:32:16,166 INFO L752 eck$LassoCheckResult]: Stem: "[237] $Ultimate##0-->L-1: Formula: (= (select |v_#valid_1| 0) 0) InVars {#valid=|v_#valid_1|} OutVars{#valid=|v_#valid_1|} AuxVars[] AssignedVars[]" "[241] L-1-->L21: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[]" "[283] L21-->L21-1: Formula: (and (= (select |v_#valid_2| 1) 1) (= 2 (select |v_#length_1| 1))) InVars {#length=|v_#length_1|, #valid=|v_#valid_2|} OutVars{#length=|v_#length_1|, #valid=|v_#valid_2|} AuxVars[] AssignedVars[]" "[303] L21-1-->L21-2: Formula: (= 48 (select (select |v_#memory_int_1| 1) 0)) InVars {#memory_int=|v_#memory_int_1|} OutVars{#memory_int=|v_#memory_int_1|} AuxVars[] AssignedVars[]" "[247] L21-2-->L21-3: Formula: (= (select (select |v_#memory_int_2| 1) 1) 0) InVars {#memory_int=|v_#memory_int_2|} OutVars{#memory_int=|v_#memory_int_2|} AuxVars[] AssignedVars[]" "[277] L21-3-->L21-4: Formula: (and (= 43 (select |v_#length_2| 2)) (= (select |v_#valid_3| 2) 1)) InVars {#length=|v_#length_2|, #valid=|v_#valid_3|} OutVars{#length=|v_#length_2|, #valid=|v_#valid_3|} AuxVars[] AssignedVars[]" "[261] L21-4-->L37: Formula: (= v_~i1~0_5 0) InVars {} OutVars{~i1~0=v_~i1~0_5} AuxVars[] AssignedVars[~i1~0]" "[255] L37-->L37-1: Formula: (= v_~i2~0_5 0) InVars {} OutVars{~i2~0=v_~i2~0_5} AuxVars[] AssignedVars[~i2~0]" "[256] L37-1-->L37-2: Formula: (= 0 v_~N1~0_3) InVars {} OutVars{~N1~0=v_~N1~0_3} AuxVars[] AssignedVars[~N1~0]" "[221] L37-2-->L37-3: Formula: (= 0 v_~N2~0_3) InVars {} OutVars{~N2~0=v_~N2~0_3} AuxVars[] AssignedVars[~N2~0]" "[238] L37-3-->L37-4: Formula: (= v_~counter~0_9 0) InVars {} OutVars{~counter~0=v_~counter~0_9} AuxVars[] AssignedVars[~counter~0]" "[297] L37-4-->L37-5: Formula: (= v_~j1~0_5 0) InVars {} OutVars{~j1~0=v_~j1~0_5} AuxVars[] AssignedVars[~j1~0]" "[271] L37-5-->L37-6: Formula: (= v_~j2~0_1 0) InVars {} OutVars{~j2~0=v_~j2~0_1} AuxVars[] AssignedVars[~j2~0]" "[264] L37-6-->L37-7: Formula: (= 0 v_~M1~0_3) InVars {} OutVars{~M1~0=v_~M1~0_3} AuxVars[] AssignedVars[~M1~0]" "[278] L37-7-->L-1-1: Formula: (= 0 v_~M2~0_1) InVars {} OutVars{~M2~0=v_~M2~0_1} AuxVars[] AssignedVars[~M2~0]" "[309] L-1-1-->L-1-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1]" "[310] L-1-2-->L86: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t4~0#1=|v_ULTIMATE.start_main_~t4~0#1_2|, ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_2|, ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_2|, ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_2|, ULTIMATE.start_main_~t3~0#1=|v_ULTIMATE.start_main_~t3~0#1_2|, ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_2|, ULTIMATE.start_main_#t~nondet18#1=|v_ULTIMATE.start_main_#t~nondet18#1_2|, ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_2|, ULTIMATE.start_main_#t~pre17#1=|v_ULTIMATE.start_main_#t~pre17#1_2|, ULTIMATE.start_main_#t~nondet14#1=|v_ULTIMATE.start_main_#t~nondet14#1_2|, ULTIMATE.start_main_#t~pre19#1=|v_ULTIMATE.start_main_#t~pre19#1_2|, ULTIMATE.start_main_~t1~0#1=|v_ULTIMATE.start_main_~t1~0#1_2|, ULTIMATE.start_main_#t~nondet16#1=|v_ULTIMATE.start_main_#t~nondet16#1_2|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_2|, ULTIMATE.start_main_#t~nondet20#1=|v_ULTIMATE.start_main_#t~nondet20#1_2|, ULTIMATE.start_main_~t2~0#1=|v_ULTIMATE.start_main_~t2~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t4~0#1, ULTIMATE.start_main_#t~pre13#1, ULTIMATE.start_main_#t~nondet10#1, ULTIMATE.start_main_#t~nondet9#1, ULTIMATE.start_main_~t3~0#1, ULTIMATE.start_main_#t~pre15#1, ULTIMATE.start_main_#t~nondet18#1, ULTIMATE.start_main_#t~nondet12#1, ULTIMATE.start_main_#t~pre17#1, ULTIMATE.start_main_#t~nondet14#1, ULTIMATE.start_main_#t~pre19#1, ULTIMATE.start_main_~t1~0#1, ULTIMATE.start_main_#t~nondet16#1, ULTIMATE.start_main_#t~nondet11#1, ULTIMATE.start_main_#t~nondet20#1, ULTIMATE.start_main_~t2~0#1]" "[214] L86-->L86-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t1~0#1=|v_ULTIMATE.start_main_~t1~0#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t1~0#1]" "[269] L86-1-->L86-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t2~0#1=|v_ULTIMATE.start_main_~t2~0#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t2~0#1]" "[319] L86-2-->L86-3: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t3~0#1=|v_ULTIMATE.start_main_~t3~0#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t3~0#1]" "[250] L86-3-->L88: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t4~0#1=|v_ULTIMATE.start_main_~t4~0#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t4~0#1]" "[282] L88-->L88-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet9#1]" "[302] L88-1-->L88-2: Formula: (= |v_ULTIMATE.start_main_#t~nondet9#1_4| v_~N1~0_4) InVars {ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_4|} OutVars{ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_4|, ~N1~0=v_~N1~0_4} AuxVars[] AssignedVars[~N1~0]" "[218] L88-2-->L89: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet9#1]" "[267] L89-->L89-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet10#1]" "[249] L89-1-->L89-2: Formula: (= |v_ULTIMATE.start_main_#t~nondet10#1_4| v_~N2~0_4) InVars {ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_4|} OutVars{ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_4|, ~N2~0=v_~N2~0_4} AuxVars[] AssignedVars[~N2~0]" "[273] L89-2-->L90: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet10#1]" "[306] L90-->L90-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet11#1]" "[228] L90-1-->L90-2: Formula: (= |v_ULTIMATE.start_main_#t~nondet11#1_4| v_~M1~0_4) InVars {ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_4|} OutVars{ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_4|, ~M1~0=v_~M1~0_4} AuxVars[] AssignedVars[~M1~0]" "[239] L90-2-->L91: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet11#1]" "[229] L91-->L91-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet12#1]" "[240] L91-1-->L91-2: Formula: (= |v_ULTIMATE.start_main_#t~nondet12#1_4| v_~M2~0_2) InVars {ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_4|} OutVars{~M2~0=v_~M2~0_2, ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_4|} AuxVars[] AssignedVars[~M2~0]" "[265] L91-2-->L92: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet12#1]" "[298] L92-->L92-1: Formula: (= (ite (and (= v_~M1~0_5 v_~N1~0_5) (= v_~N1~0_5 v_~N2~0_5) (= v_~M2~0_3 v_~N1~0_5)) 1 0) |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_4|) InVars {~M1~0=v_~M1~0_5, ~N1~0=v_~N1~0_5, ~N2~0=v_~N2~0_5, ~M2~0=v_~M2~0_3} OutVars{~M1~0=v_~M1~0_5, ~N1~0=v_~N1~0_5, ~N2~0=v_~N2~0_5, ~M2~0=v_~M2~0_3, ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_#in~cond#1]" "[292] L92-1-->L33: Formula: true InVars {} OutVars{ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_~cond#1]" "[226] L33-->L34: Formula: (= |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_5| |v_ULTIMATE.start_assume_abort_if_not_~cond#1_7|) InVars {ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_5|} OutVars{ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_7|, ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_~cond#1]" "[235] L34-->L33-1: Formula: (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_9| 0)) InVars {ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_9|} OutVars{ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_9|} AuxVars[] AssignedVars[]" "[251] L33-1-->L92-2: Formula: true InVars {} OutVars{ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_10|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_~cond#1]" "[259] L92-2-->L95: Formula: true InVars {} OutVars{ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_#in~cond#1]" "[279] L95-->L95-1: Formula: (= |v_ULTIMATE.start_main_#t~pre13#1_3| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre13#1]" "[289] L95-1-->L95-2: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks]" "[290] L95-2-->L95-3: Formula: (= |v_ULTIMATE.start_main_~t1~0#1_4| |v_ULTIMATE.start_main_#t~pre13#1_4|) InVars {ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_4|} OutVars{ULTIMATE.start_main_~t1~0#1=|v_ULTIMATE.start_main_~t1~0#1_4|, ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t1~0#1]" "[352] L95-3-->$Ultimate##0: Formula: (and (= |v_thread1Thread1of1ForFork2_#in~_argptr.offset_4| 0) (= |v_ULTIMATE.start_main_#t~pre13#1_7| v_thread1Thread1of1ForFork2_thidvar0_2) (= 0 v_thread1Thread1of1ForFork2_thidvar1_2) (= |v_thread1Thread1of1ForFork2_#in~_argptr.base_4| 0)) InVars {ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_7|} OutVars{thread1Thread1of1ForFork2_thidvar1=v_thread1Thread1of1ForFork2_thidvar1_2, thread1Thread1of1ForFork2_thidvar0=v_thread1Thread1of1ForFork2_thidvar0_2, thread1Thread1of1ForFork2_#res.base=|v_thread1Thread1of1ForFork2_#res.base_4|, ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_7|, thread1Thread1of1ForFork2_#t~post1=|v_thread1Thread1of1ForFork2_#t~post1_4|, thread1Thread1of1ForFork2_#t~post2=|v_thread1Thread1of1ForFork2_#t~post2_4|, thread1Thread1of1ForFork2_~_argptr.base=v_thread1Thread1of1ForFork2_~_argptr.base_4, thread1Thread1of1ForFork2_#res.offset=|v_thread1Thread1of1ForFork2_#res.offset_4|, thread1Thread1of1ForFork2_#in~_argptr.offset=|v_thread1Thread1of1ForFork2_#in~_argptr.offset_4|, thread1Thread1of1ForFork2_~_argptr.offset=v_thread1Thread1of1ForFork2_~_argptr.offset_4, thread1Thread1of1ForFork2_#in~_argptr.base=|v_thread1Thread1of1ForFork2_#in~_argptr.base_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_thidvar1, thread1Thread1of1ForFork2_thidvar0, thread1Thread1of1ForFork2_#res.base, thread1Thread1of1ForFork2_#t~post1, thread1Thread1of1ForFork2_#t~post2, thread1Thread1of1ForFork2_~_argptr.base, thread1Thread1of1ForFork2_#res.offset, thread1Thread1of1ForFork2_#in~_argptr.offset, thread1Thread1of1ForFork2_~_argptr.offset, thread1Thread1of1ForFork2_#in~_argptr.base]" "[320] $Ultimate##0-->L44: Formula: (and (= |v_thread1Thread1of1ForFork2_#in~_argptr.offset_1| v_thread1Thread1of1ForFork2_~_argptr.offset_1) (= v_thread1Thread1of1ForFork2_~_argptr.base_1 |v_thread1Thread1of1ForFork2_#in~_argptr.base_1|)) InVars {thread1Thread1of1ForFork2_#in~_argptr.offset=|v_thread1Thread1of1ForFork2_#in~_argptr.offset_1|, thread1Thread1of1ForFork2_#in~_argptr.base=|v_thread1Thread1of1ForFork2_#in~_argptr.base_1|} OutVars{thread1Thread1of1ForFork2_~_argptr.base=v_thread1Thread1of1ForFork2_~_argptr.base_1, thread1Thread1of1ForFork2_#in~_argptr.offset=|v_thread1Thread1of1ForFork2_#in~_argptr.offset_1|, thread1Thread1of1ForFork2_~_argptr.offset=v_thread1Thread1of1ForFork2_~_argptr.offset_1, thread1Thread1of1ForFork2_#in~_argptr.base=|v_thread1Thread1of1ForFork2_#in~_argptr.base_1|} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_~_argptr.base, thread1Thread1of1ForFork2_~_argptr.offset]" "[322] L44-->L41: Formula: (< v_~i1~0_1 v_~N1~0_1) InVars {~i1~0=v_~i1~0_1, ~N1~0=v_~N1~0_1} OutVars{~i1~0=v_~i1~0_1, ~N1~0=v_~N1~0_1} AuxVars[] AssignedVars[]" "[243] L95-4-->L95-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre13#1]" "[324] L41-->L44: Formula: (and (= (+ v_~counter~0_22 1) v_~counter~0_21) (= v_~i1~0_16 (+ v_~i1~0_17 1))) InVars {~counter~0=v_~counter~0_22, ~i1~0=v_~i1~0_17} OutVars{thread1Thread1of1ForFork2_#t~post2=|v_thread1Thread1of1ForFork2_#t~post2_1|, ~counter~0=v_~counter~0_21, ~i1~0=v_~i1~0_16, thread1Thread1of1ForFork2_#t~post1=|v_thread1Thread1of1ForFork2_#t~post1_1|} AuxVars[] AssignedVars[~counter~0, thread1Thread1of1ForFork2_#t~post1, thread1Thread1of1ForFork2_#t~post2, ~i1~0]" "[322] L44-->L41: Formula: (< v_~i1~0_1 v_~N1~0_1) InVars {~i1~0=v_~i1~0_1, ~N1~0=v_~N1~0_1} OutVars{~i1~0=v_~i1~0_1, ~N1~0=v_~N1~0_1} AuxVars[] AssignedVars[]" "[324] L41-->L44: Formula: (and (= (+ v_~counter~0_22 1) v_~counter~0_21) (= v_~i1~0_16 (+ v_~i1~0_17 1))) InVars {~counter~0=v_~counter~0_22, ~i1~0=v_~i1~0_17} OutVars{thread1Thread1of1ForFork2_#t~post2=|v_thread1Thread1of1ForFork2_#t~post2_1|, ~counter~0=v_~counter~0_21, ~i1~0=v_~i1~0_16, thread1Thread1of1ForFork2_#t~post1=|v_thread1Thread1of1ForFork2_#t~post1_1|} AuxVars[] AssignedVars[~counter~0, thread1Thread1of1ForFork2_#t~post1, thread1Thread1of1ForFork2_#t~post2, ~i1~0]" "[321] L44-->L47: Formula: (<= v_~N1~0_2 v_~i1~0_4) InVars {~i1~0=v_~i1~0_4, ~N1~0=v_~N1~0_2} OutVars{~i1~0=v_~i1~0_4, ~N1~0=v_~N1~0_2} AuxVars[] AssignedVars[]" "[323] L47-->thread1FINAL: Formula: (and (= |v_thread1Thread1of1ForFork2_#res.offset_1| 0) (= |v_thread1Thread1of1ForFork2_#res.base_1| 0)) InVars {} OutVars{thread1Thread1of1ForFork2_#res.base=|v_thread1Thread1of1ForFork2_#res.base_1|, thread1Thread1of1ForFork2_#res.offset=|v_thread1Thread1of1ForFork2_#res.offset_1|} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_#res.base, thread1Thread1of1ForFork2_#res.offset]" "[325] thread1FINAL-->thread1EXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[]" "[213] L95-5-->L96: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet14#1=|v_ULTIMATE.start_main_#t~nondet14#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet14#1]" "[299] L96-->L96-1: Formula: (= |v_ULTIMATE.start_main_#t~pre15#1_3| |v_#pthreadsForks_4|) InVars {#pthreadsForks=|v_#pthreadsForks_4|} OutVars{#pthreadsForks=|v_#pthreadsForks_4|, ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre15#1]" "[266] L96-1-->L96-2: Formula: (= (+ 1 |v_#pthreadsForks_6|) |v_#pthreadsForks_5|) InVars {#pthreadsForks=|v_#pthreadsForks_6|} OutVars{#pthreadsForks=|v_#pthreadsForks_5|} AuxVars[] AssignedVars[#pthreadsForks]" "[227] L96-2-->L96-3: Formula: (= |v_ULTIMATE.start_main_~t2~0#1_4| |v_ULTIMATE.start_main_#t~pre15#1_4|) InVars {ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_4|} OutVars{ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_4|, ULTIMATE.start_main_~t2~0#1=|v_ULTIMATE.start_main_~t2~0#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t2~0#1]" "[346] L96-3-->$Ultimate##0: Formula: (and (= |v_thread2Thread1of1ForFork0_#in~_argptr#1.offset_4| 0) (= v_thread2Thread1of1ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre15#1_7|) (= |v_thread2Thread1of1ForFork0_#in~_argptr#1.base_4| 0) (= v_thread2Thread1of1ForFork0_thidvar2_2 0) (= v_thread2Thread1of1ForFork0_thidvar1_2 0)) InVars {ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_7|} OutVars{thread2Thread1of1ForFork0_#res#1.offset=|v_thread2Thread1of1ForFork0_#res#1.offset_4|, thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1_4|, thread2Thread1of1ForFork0_#t~post3#1=|v_thread2Thread1of1ForFork0_#t~post3#1_4|, ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_7|, thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1_4|, thread2Thread1of1ForFork0_#in~_argptr#1.offset=|v_thread2Thread1of1ForFork0_#in~_argptr#1.offset_4|, thread2Thread1of1ForFork0_#res#1.base=|v_thread2Thread1of1ForFork0_#res#1.base_4|, thread2Thread1of1ForFork0_#in~_argptr#1.base=|v_thread2Thread1of1ForFork0_#in~_argptr#1.base_4|, thread2Thread1of1ForFork0_thidvar2=v_thread2Thread1of1ForFork0_thidvar2_2, thread2Thread1of1ForFork0_thidvar1=v_thread2Thread1of1ForFork0_thidvar1_2, thread2Thread1of1ForFork0_~_argptr#1.base=|v_thread2Thread1of1ForFork0_~_argptr#1.base_4|, thread2Thread1of1ForFork0_thidvar0=v_thread2Thread1of1ForFork0_thidvar0_2, thread2Thread1of1ForFork0_~_argptr#1.offset=|v_thread2Thread1of1ForFork0_~_argptr#1.offset_4|, thread2Thread1of1ForFork0_#t~post4#1=|v_thread2Thread1of1ForFork0_#t~post4#1_4|} AuxVars[] AssignedVars[thread2Thread1of1ForFork0_#res#1.offset, thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1, thread2Thread1of1ForFork0_#t~post3#1, thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1, thread2Thread1of1ForFork0_#in~_argptr#1.offset, thread2Thread1of1ForFork0_#res#1.base, thread2Thread1of1ForFork0_#in~_argptr#1.base, thread2Thread1of1ForFork0_thidvar2, thread2Thread1of1ForFork0_thidvar1, thread2Thread1of1ForFork0_~_argptr#1.base, thread2Thread1of1ForFork0_thidvar0, thread2Thread1of1ForFork0_~_argptr#1.offset, thread2Thread1of1ForFork0_#t~post4#1]" "[326] $Ultimate##0-->L56: Formula: (and (= |v_thread2Thread1of1ForFork0_~_argptr#1.base_1| |v_thread2Thread1of1ForFork0_#in~_argptr#1.base_1|) (= |v_thread2Thread1of1ForFork0_#in~_argptr#1.offset_1| |v_thread2Thread1of1ForFork0_~_argptr#1.offset_1|)) InVars {thread2Thread1of1ForFork0_#in~_argptr#1.offset=|v_thread2Thread1of1ForFork0_#in~_argptr#1.offset_1|, thread2Thread1of1ForFork0_#in~_argptr#1.base=|v_thread2Thread1of1ForFork0_#in~_argptr#1.base_1|} OutVars{thread2Thread1of1ForFork0_#in~_argptr#1.offset=|v_thread2Thread1of1ForFork0_#in~_argptr#1.offset_1|, thread2Thread1of1ForFork0_~_argptr#1.base=|v_thread2Thread1of1ForFork0_~_argptr#1.base_1|, thread2Thread1of1ForFork0_#in~_argptr#1.base=|v_thread2Thread1of1ForFork0_#in~_argptr#1.base_1|, thread2Thread1of1ForFork0_~_argptr#1.offset=|v_thread2Thread1of1ForFork0_~_argptr#1.offset_1|} AuxVars[] AssignedVars[thread2Thread1of1ForFork0_~_argptr#1.base, thread2Thread1of1ForFork0_~_argptr#1.offset]" "[328] L56-->L52: Formula: (< v_~i2~0_4 v_~N2~0_2) InVars {~i2~0=v_~i2~0_4, ~N2~0=v_~N2~0_2} OutVars{~i2~0=v_~i2~0_4, ~N2~0=v_~N2~0_2} AuxVars[] AssignedVars[]" "[280] L96-4-->L96-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre15#1]" "[294] L96-5-->L97: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet16#1=|v_ULTIMATE.start_main_#t~nondet16#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet16#1]" "[268] L97-->L97-1: Formula: (= |v_ULTIMATE.start_main_#t~pre17#1_3| |v_#pthreadsForks_7|) InVars {#pthreadsForks=|v_#pthreadsForks_7|} OutVars{#pthreadsForks=|v_#pthreadsForks_7|, ULTIMATE.start_main_#t~pre17#1=|v_ULTIMATE.start_main_#t~pre17#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre17#1]" "[276] L97-1-->L97-2: Formula: (= (+ 1 |v_#pthreadsForks_9|) |v_#pthreadsForks_8|) InVars {#pthreadsForks=|v_#pthreadsForks_9|} OutVars{#pthreadsForks=|v_#pthreadsForks_8|} AuxVars[] AssignedVars[#pthreadsForks]" "[307] L97-2-->L97-3: Formula: (= |v_ULTIMATE.start_main_~t3~0#1_4| |v_ULTIMATE.start_main_#t~pre17#1_4|) InVars {ULTIMATE.start_main_#t~pre17#1=|v_ULTIMATE.start_main_#t~pre17#1_4|} OutVars{ULTIMATE.start_main_#t~pre17#1=|v_ULTIMATE.start_main_#t~pre17#1_4|, ULTIMATE.start_main_~t3~0#1=|v_ULTIMATE.start_main_~t3~0#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t3~0#1]" "[349] L97-3-->$Ultimate##0: Formula: (and (= |v_thread3Thread1of1ForFork1_#in~_argptr.base_4| 0) (= v_thread3Thread1of1ForFork1_thidvar0_2 |v_ULTIMATE.start_main_#t~pre17#1_7|) (= 0 v_thread3Thread1of1ForFork1_thidvar1_2) (= 0 v_thread3Thread1of1ForFork1_thidvar2_2) (= |v_thread3Thread1of1ForFork1_#in~_argptr.offset_4| 0) (= 0 v_thread3Thread1of1ForFork1_thidvar3_2)) InVars {ULTIMATE.start_main_#t~pre17#1=|v_ULTIMATE.start_main_#t~pre17#1_7|} OutVars{thread3Thread1of1ForFork1_#in~_argptr.base=|v_thread3Thread1of1ForFork1_#in~_argptr.base_4|, thread3Thread1of1ForFork1_#res.offset=|v_thread3Thread1of1ForFork1_#res.offset_4|, thread3Thread1of1ForFork1_thidvar0=v_thread3Thread1of1ForFork1_thidvar0_2, thread3Thread1of1ForFork1_#res.base=|v_thread3Thread1of1ForFork1_#res.base_4|, thread3Thread1of1ForFork1_thidvar3=v_thread3Thread1of1ForFork1_thidvar3_2, thread3Thread1of1ForFork1_~_argptr.base=v_thread3Thread1of1ForFork1_~_argptr.base_4, ULTIMATE.start_main_#t~pre17#1=|v_ULTIMATE.start_main_#t~pre17#1_7|, thread3Thread1of1ForFork1_thidvar1=v_thread3Thread1of1ForFork1_thidvar1_2, thread3Thread1of1ForFork1_thidvar2=v_thread3Thread1of1ForFork1_thidvar2_2, thread3Thread1of1ForFork1_~_argptr.offset=v_thread3Thread1of1ForFork1_~_argptr.offset_4, thread3Thread1of1ForFork1_#t~post6=|v_thread3Thread1of1ForFork1_#t~post6_4|, thread3Thread1of1ForFork1_#t~post5=|v_thread3Thread1of1ForFork1_#t~post5_4|, thread3Thread1of1ForFork1_#in~_argptr.offset=|v_thread3Thread1of1ForFork1_#in~_argptr.offset_4|} AuxVars[] AssignedVars[thread3Thread1of1ForFork1_~_argptr.offset, thread3Thread1of1ForFork1_#in~_argptr.base, thread3Thread1of1ForFork1_#t~post6, thread3Thread1of1ForFork1_#res.offset, thread3Thread1of1ForFork1_thidvar0, thread3Thread1of1ForFork1_#t~post5, thread3Thread1of1ForFork1_#in~_argptr.offset, thread3Thread1of1ForFork1_#res.base, thread3Thread1of1ForFork1_thidvar3, thread3Thread1of1ForFork1_~_argptr.base, thread3Thread1of1ForFork1_thidvar1, thread3Thread1of1ForFork1_thidvar2]" "[332] $Ultimate##0-->L67: Formula: (and (= v_thread3Thread1of1ForFork1_~_argptr.offset_1 |v_thread3Thread1of1ForFork1_#in~_argptr.offset_1|) (= |v_thread3Thread1of1ForFork1_#in~_argptr.base_1| v_thread3Thread1of1ForFork1_~_argptr.base_1)) InVars {thread3Thread1of1ForFork1_#in~_argptr.base=|v_thread3Thread1of1ForFork1_#in~_argptr.base_1|, thread3Thread1of1ForFork1_#in~_argptr.offset=|v_thread3Thread1of1ForFork1_#in~_argptr.offset_1|} OutVars{thread3Thread1of1ForFork1_~_argptr.offset=v_thread3Thread1of1ForFork1_~_argptr.offset_1, thread3Thread1of1ForFork1_#in~_argptr.base=|v_thread3Thread1of1ForFork1_#in~_argptr.base_1|, thread3Thread1of1ForFork1_#in~_argptr.offset=|v_thread3Thread1of1ForFork1_#in~_argptr.offset_1|, thread3Thread1of1ForFork1_~_argptr.base=v_thread3Thread1of1ForFork1_~_argptr.base_1} AuxVars[] AssignedVars[thread3Thread1of1ForFork1_~_argptr.offset, thread3Thread1of1ForFork1_~_argptr.base]" "[334] L67-->L64: Formula: (< v_~j1~0_4 v_~M1~0_2) InVars {~j1~0=v_~j1~0_4, ~M1~0=v_~M1~0_2} OutVars{~j1~0=v_~j1~0_4, ~M1~0=v_~M1~0_2} AuxVars[] AssignedVars[]" "[262] L97-4-->L97-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre17#1=|v_ULTIMATE.start_main_#t~pre17#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre17#1]" "[336] L64-->L67: Formula: (and (= (+ v_~j1~0_15 1) v_~j1~0_14) (= (+ v_~counter~0_62 1) v_~counter~0_61)) InVars {~counter~0=v_~counter~0_62, ~j1~0=v_~j1~0_15} OutVars{thread3Thread1of1ForFork1_#t~post6=|v_thread3Thread1of1ForFork1_#t~post6_1|, ~counter~0=v_~counter~0_61, thread3Thread1of1ForFork1_#t~post5=|v_thread3Thread1of1ForFork1_#t~post5_1|, ~j1~0=v_~j1~0_14} AuxVars[] AssignedVars[~counter~0, thread3Thread1of1ForFork1_#t~post6, thread3Thread1of1ForFork1_#t~post5, ~j1~0]" "[330] L52-->L56: Formula: (and (not (= (ite (< 0 v_~counter~0_96) 1 0) 0)) (= (+ v_~counter~0_95 1) v_~counter~0_96) (= v_~i2~0_20 (+ v_~i2~0_21 1))) InVars {~counter~0=v_~counter~0_96, ~i2~0=v_~i2~0_21} OutVars{thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1_1|, ~counter~0=v_~counter~0_95, thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1_1|, ~i2~0=v_~i2~0_20, thread2Thread1of1ForFork0_#t~post3#1=|v_thread2Thread1of1ForFork0_#t~post3#1_1|, thread2Thread1of1ForFork0_#t~post4#1=|v_thread2Thread1of1ForFork0_#t~post4#1_1|} AuxVars[] AssignedVars[~counter~0, thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1, thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1, ~i2~0, thread2Thread1of1ForFork0_#t~post3#1, thread2Thread1of1ForFork0_#t~post4#1]" [2025-04-26 18:32:16,166 INFO L754 eck$LassoCheckResult]: Loop: "[328] L56-->L52: Formula: (< v_~i2~0_4 v_~N2~0_2) InVars {~i2~0=v_~i2~0_4, ~N2~0=v_~N2~0_2} OutVars{~i2~0=v_~i2~0_4, ~N2~0=v_~N2~0_2} AuxVars[] AssignedVars[]" "[330] L52-->L56: Formula: (and (not (= (ite (< 0 v_~counter~0_96) 1 0) 0)) (= (+ v_~counter~0_95 1) v_~counter~0_96) (= v_~i2~0_20 (+ v_~i2~0_21 1))) InVars {~counter~0=v_~counter~0_96, ~i2~0=v_~i2~0_21} OutVars{thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1_1|, ~counter~0=v_~counter~0_95, thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1_1|, ~i2~0=v_~i2~0_20, thread2Thread1of1ForFork0_#t~post3#1=|v_thread2Thread1of1ForFork0_#t~post3#1_1|, thread2Thread1of1ForFork0_#t~post4#1=|v_thread2Thread1of1ForFork0_#t~post4#1_1|} AuxVars[] AssignedVars[~counter~0, thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1, thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1, ~i2~0, thread2Thread1of1ForFork0_#t~post3#1, thread2Thread1of1ForFork0_#t~post4#1]" [2025-04-26 18:32:16,166 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 18:32:16,166 INFO L85 PathProgramCache]: Analyzing trace with hash -742652729, now seen corresponding path program 1 times [2025-04-26 18:32:16,166 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 18:32:16,166 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [580621447] [2025-04-26 18:32:16,166 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 18:32:16,166 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 18:32:16,170 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 70 statements into 1 equivalence classes. [2025-04-26 18:32:16,174 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 70 of 70 statements. [2025-04-26 18:32:16,174 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:16,174 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 18:32:16,175 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 18:32:16,176 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 70 statements into 1 equivalence classes. [2025-04-26 18:32:16,184 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 70 of 70 statements. [2025-04-26 18:32:16,185 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:16,185 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 18:32:16,191 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 18:32:16,191 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 18:32:16,191 INFO L85 PathProgramCache]: Analyzing trace with hash 11459, now seen corresponding path program 5 times [2025-04-26 18:32:16,191 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 18:32:16,191 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1105282431] [2025-04-26 18:32:16,191 INFO L95 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2025-04-26 18:32:16,191 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 18:32:16,193 INFO L108 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 partitioned 2 statements into 1 equivalence classes. [2025-04-26 18:32:16,195 INFO L111 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 18:32:16,195 INFO L114 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2025-04-26 18:32:16,195 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 18:32:16,195 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 18:32:16,196 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 18:32:16,196 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 18:32:16,196 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:16,196 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 18:32:16,197 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 18:32:16,197 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 18:32:16,198 INFO L85 PathProgramCache]: Analyzing trace with hash -724690935, now seen corresponding path program 2 times [2025-04-26 18:32:16,198 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 18:32:16,198 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1686676650] [2025-04-26 18:32:16,198 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-04-26 18:32:16,198 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 18:32:16,203 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 72 statements into 2 equivalence classes. [2025-04-26 18:32:16,209 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 72 of 72 statements. [2025-04-26 18:32:16,209 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-04-26 18:32:16,209 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 18:32:16,209 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 18:32:16,212 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 72 statements into 1 equivalence classes. [2025-04-26 18:32:16,220 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 72 of 72 statements. [2025-04-26 18:32:16,220 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:16,220 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 18:32:16,224 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 18:32:16,241 INFO L206 LassoAnalysis]: Preferences: [2025-04-26 18:32:16,242 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-04-26 18:32:16,242 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-04-26 18:32:16,242 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-04-26 18:32:16,242 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2025-04-26 18:32:16,242 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:16,242 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-04-26 18:32:16,242 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-04-26 18:32:16,242 INFO L132 ssoRankerPreferences]: Filename of dumped script: popl20-proofs-counter-add-4-semi-Q67.wvr.c_petrified1_Iteration7_Loop [2025-04-26 18:32:16,242 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-04-26 18:32:16,242 INFO L243 LassoAnalysis]: Starting lasso preprocessing... [2025-04-26 18:32:16,243 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:16,244 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:16,246 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:16,248 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:16,250 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:16,252 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:16,254 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:16,255 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:16,259 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:16,261 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:16,262 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:16,265 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:16,266 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:16,268 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:16,333 INFO L261 LassoAnalysis]: Preprocessing complete. [2025-04-26 18:32:16,333 INFO L367 LassoAnalysis]: Checking for nontermination... [2025-04-26 18:32:16,333 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:16,333 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:16,335 INFO L229 MonitoredProcess]: Starting monitored process 60 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:16,336 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (60)] Waiting until timeout for monitored process [2025-04-26 18:32:16,337 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 18:32:16,337 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:16,353 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 18:32:16,353 INFO L403 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {thread2Thread1of1ForFork0_#t~post3#1=0} Honda state: {thread2Thread1of1ForFork0_#t~post3#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-04-26 18:32:16,359 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (60)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:16,359 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:16,359 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:16,361 INFO L229 MonitoredProcess]: Starting monitored process 61 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:16,362 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (61)] Waiting until timeout for monitored process [2025-04-26 18:32:16,364 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 18:32:16,364 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:16,382 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 18:32:16,382 INFO L403 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {v_rep#funAddr~thread4.base_13=-1} Honda state: {v_rep#funAddr~thread4.base_13=-1} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-04-26 18:32:16,387 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (61)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:16,387 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:16,387 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:16,389 INFO L229 MonitoredProcess]: Starting monitored process 62 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:16,389 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (62)] Waiting until timeout for monitored process [2025-04-26 18:32:16,390 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 18:32:16,390 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:16,407 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 18:32:16,407 INFO L403 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {v_rep#funAddr~thread1.offset_13=0} Honda state: {v_rep#funAddr~thread1.offset_13=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-04-26 18:32:16,413 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (62)] Ended with exit code 0 [2025-04-26 18:32:16,413 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:16,413 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:16,415 INFO L229 MonitoredProcess]: Starting monitored process 63 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:16,415 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (63)] Waiting until timeout for monitored process [2025-04-26 18:32:16,416 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 18:32:16,416 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:16,434 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 18:32:16,434 INFO L403 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {v_rep#funAddr~thread1.base_13=-1} Honda state: {v_rep#funAddr~thread1.base_13=-1} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-04-26 18:32:16,440 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (63)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:16,441 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:16,441 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:16,442 INFO L229 MonitoredProcess]: Starting monitored process 64 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:16,443 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (64)] Waiting until timeout for monitored process [2025-04-26 18:32:16,444 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 18:32:16,444 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:16,463 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 18:32:16,463 INFO L403 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {v_rep#funAddr~thread2.base_13=-1} Honda state: {v_rep#funAddr~thread2.base_13=-1} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-04-26 18:32:16,469 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (64)] Ended with exit code 0 [2025-04-26 18:32:16,469 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:16,469 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:16,471 INFO L229 MonitoredProcess]: Starting monitored process 65 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:16,472 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (65)] Waiting until timeout for monitored process [2025-04-26 18:32:16,473 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 18:32:16,473 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:16,491 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 18:32:16,491 INFO L403 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {v_rep#funAddr~thread3.base_13=-1} Honda state: {v_rep#funAddr~thread3.base_13=-1} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-04-26 18:32:16,496 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (65)] Ended with exit code 0 [2025-04-26 18:32:16,496 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:16,496 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:16,498 INFO L229 MonitoredProcess]: Starting monitored process 66 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:16,499 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (66)] Waiting until timeout for monitored process [2025-04-26 18:32:16,500 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 18:32:16,500 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:16,517 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 18:32:16,517 INFO L403 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {v_rep#funAddr~thread2.offset_13=1} Honda state: {v_rep#funAddr~thread2.offset_13=1} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-04-26 18:32:16,522 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (66)] Ended with exit code 0 [2025-04-26 18:32:16,522 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:16,522 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:16,524 INFO L229 MonitoredProcess]: Starting monitored process 67 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:16,525 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (67)] Waiting until timeout for monitored process [2025-04-26 18:32:16,525 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 18:32:16,525 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:16,541 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (67)] Ended with exit code 0 [2025-04-26 18:32:16,542 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:16,542 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:16,543 INFO L229 MonitoredProcess]: Starting monitored process 68 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:16,544 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (68)] Waiting until timeout for monitored process [2025-04-26 18:32:16,545 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2025-04-26 18:32:16,545 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:16,608 INFO L407 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2025-04-26 18:32:16,613 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (68)] Ended with exit code 0 [2025-04-26 18:32:16,613 INFO L206 LassoAnalysis]: Preferences: [2025-04-26 18:32:16,613 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-04-26 18:32:16,613 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-04-26 18:32:16,613 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-04-26 18:32:16,613 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-04-26 18:32:16,614 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:16,614 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-04-26 18:32:16,614 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-04-26 18:32:16,614 INFO L132 ssoRankerPreferences]: Filename of dumped script: popl20-proofs-counter-add-4-semi-Q67.wvr.c_petrified1_Iteration7_Loop [2025-04-26 18:32:16,614 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-04-26 18:32:16,614 INFO L243 LassoAnalysis]: Starting lasso preprocessing... [2025-04-26 18:32:16,615 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:16,618 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:16,620 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:16,622 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:16,623 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:16,625 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:16,626 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:16,628 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:16,631 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:16,632 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:16,634 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:16,637 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:16,638 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:16,639 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:16,696 INFO L261 LassoAnalysis]: Preprocessing complete. [2025-04-26 18:32:16,697 INFO L453 LassoAnalysis]: Using template 'affine'. [2025-04-26 18:32:16,697 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:16,697 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:16,699 INFO L229 MonitoredProcess]: Starting monitored process 69 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:16,700 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (69)] Waiting until timeout for monitored process [2025-04-26 18:32:16,702 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 [2025-04-26 18:32:16,712 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 18:32:16,712 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-04-26 18:32:16,713 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 18:32:16,713 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 18:32:16,713 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 18:32:16,713 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-04-26 18:32:16,713 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-04-26 18:32:16,714 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 18:32:16,719 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (69)] Ended with exit code 0 [2025-04-26 18:32:16,720 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:16,720 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:16,722 INFO L229 MonitoredProcess]: Starting monitored process 70 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:16,722 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (70)] Waiting until timeout for monitored process [2025-04-26 18:32:16,723 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 [2025-04-26 18:32:16,733 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 18:32:16,733 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 18:32:16,733 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 18:32:16,733 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 18:32:16,734 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 18:32:16,734 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 18:32:16,736 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 18:32:16,742 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (70)] Ended with exit code 0 [2025-04-26 18:32:16,742 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:16,742 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:16,744 INFO L229 MonitoredProcess]: Starting monitored process 71 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:16,744 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (71)] Waiting until timeout for monitored process [2025-04-26 18:32:16,746 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 [2025-04-26 18:32:16,755 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 18:32:16,756 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 18:32:16,756 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 18:32:16,756 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 18:32:16,757 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 18:32:16,757 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 18:32:16,759 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 18:32:16,765 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (71)] Ended with exit code 0 [2025-04-26 18:32:16,765 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:16,765 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:16,767 INFO L229 MonitoredProcess]: Starting monitored process 72 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:16,767 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (72)] Waiting until timeout for monitored process [2025-04-26 18:32:16,769 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 [2025-04-26 18:32:16,779 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 18:32:16,779 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 18:32:16,779 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 18:32:16,779 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 18:32:16,780 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 18:32:16,780 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 18:32:16,784 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 18:32:16,791 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (72)] Ended with exit code 0 [2025-04-26 18:32:16,791 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:16,791 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:16,793 INFO L229 MonitoredProcess]: Starting monitored process 73 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:16,794 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (73)] Waiting until timeout for monitored process [2025-04-26 18:32:16,795 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 [2025-04-26 18:32:16,806 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 18:32:16,806 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 18:32:16,806 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 18:32:16,806 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 18:32:16,807 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 18:32:16,807 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 18:32:16,811 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 18:32:16,818 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (73)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:16,819 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:16,819 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:16,822 INFO L229 MonitoredProcess]: Starting monitored process 74 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:16,822 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (74)] Waiting until timeout for monitored process [2025-04-26 18:32:16,823 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 [2025-04-26 18:32:16,833 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 18:32:16,834 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 18:32:16,834 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 18:32:16,834 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 18:32:16,835 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 18:32:16,835 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 18:32:16,843 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 18:32:16,848 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (74)] Ended with exit code 0 [2025-04-26 18:32:16,849 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:16,849 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:16,851 INFO L229 MonitoredProcess]: Starting monitored process 75 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:16,852 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (75)] Waiting until timeout for monitored process [2025-04-26 18:32:16,852 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 [2025-04-26 18:32:16,862 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 18:32:16,862 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 18:32:16,863 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 18:32:16,863 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 18:32:16,863 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 18:32:16,864 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 18:32:16,866 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 18:32:16,871 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (75)] Ended with exit code 0 [2025-04-26 18:32:16,872 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:16,872 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:16,873 INFO L229 MonitoredProcess]: Starting monitored process 76 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:16,876 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (76)] Waiting until timeout for monitored process [2025-04-26 18:32:16,876 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 [2025-04-26 18:32:16,886 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 18:32:16,887 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-04-26 18:32:16,887 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 18:32:16,887 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 18:32:16,887 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 18:32:16,887 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-04-26 18:32:16,887 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-04-26 18:32:16,889 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-04-26 18:32:16,890 INFO L436 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2025-04-26 18:32:16,890 INFO L437 ModelExtractionUtils]: 1 out of 4 variables were initially zero. Simplification set additionally 0 variables to zero. [2025-04-26 18:32:16,891 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:16,891 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:16,892 INFO L229 MonitoredProcess]: Starting monitored process 77 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:16,893 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (77)] Waiting until timeout for monitored process [2025-04-26 18:32:16,894 INFO L436 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-04-26 18:32:16,896 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (77)] Ended with exit code 0 [2025-04-26 18:32:16,897 INFO L439 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2025-04-26 18:32:16,897 INFO L476 LassoAnalysis]: Proved termination. [2025-04-26 18:32:16,897 INFO L478 LassoAnalysis]: Termination argument consisting of: Ranking function f(~i2~0, ~N2~0) = -1*~i2~0 + 1*~N2~0 Supporting invariants [] [2025-04-26 18:32:16,902 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (76)] Ended with exit code 0 [2025-04-26 18:32:16,903 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2025-04-26 18:32:16,911 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 18:32:16,925 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 70 statements into 1 equivalence classes. [2025-04-26 18:32:16,937 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 70 of 70 statements. [2025-04-26 18:32:16,937 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:16,937 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 18:32:16,938 INFO L256 TraceCheckSpWp]: Trace formula consists of 157 conjuncts, 2 conjuncts are in the unsatisfiable core [2025-04-26 18:32:16,939 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 18:32:16,993 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 18:32:16,994 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 18:32:16,994 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:16,994 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 18:32:16,995 WARN L254 TraceCheckSpWp]: Trace formula consists of 8 conjuncts, 4 conjuncts are in the unsatisfiable core [2025-04-26 18:32:16,995 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 18:32:17,005 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-04-26 18:32:17,005 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 [2025-04-26 18:32:17,006 INFO L70 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 3803 states and 8531 transitions. cyclomatic complexity: 5144 Second operand has 3 states, 3 states have (on average 23.333333333333332) internal successors, (in total 70), 3 states have internal predecessors, (70), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:17,118 INFO L74 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 3803 states and 8531 transitions. cyclomatic complexity: 5144. Second operand has 3 states, 3 states have (on average 23.333333333333332) internal successors, (in total 70), 3 states have internal predecessors, (70), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) Result 12138 states and 27577 transitions. Complement of second has 6 states. [2025-04-26 18:32:17,118 INFO L140 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 4 states 1 stem states 2 non-accepting loop states 1 accepting loop states [2025-04-26 18:32:17,119 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 23.333333333333332) internal successors, (in total 70), 3 states have internal predecessors, (70), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:17,119 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 180 transitions. [2025-04-26 18:32:17,119 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 4 states and 180 transitions. Stem has 70 letters. Loop has 2 letters. [2025-04-26 18:32:17,119 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 18:32:17,119 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 4 states and 180 transitions. Stem has 72 letters. Loop has 2 letters. [2025-04-26 18:32:17,119 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 18:32:17,119 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 4 states and 180 transitions. Stem has 70 letters. Loop has 4 letters. [2025-04-26 18:32:17,119 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 18:32:17,119 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 12138 states and 27577 transitions. [2025-04-26 18:32:17,173 INFO L131 ngComponentsAnalysis]: Automaton has 62 accepting balls. 124 [2025-04-26 18:32:17,203 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 12138 states to 6905 states and 15079 transitions. [2025-04-26 18:32:17,203 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 2514 [2025-04-26 18:32:17,206 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 2812 [2025-04-26 18:32:17,206 INFO L74 IsDeterministic]: Start isDeterministic. Operand 6905 states and 15079 transitions. [2025-04-26 18:32:17,207 INFO L81 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-04-26 18:32:17,207 INFO L218 hiAutomatonCegarLoop]: Abstraction has 6905 states and 15079 transitions. [2025-04-26 18:32:17,213 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 6905 states and 15079 transitions. [2025-04-26 18:32:17,257 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 6905 to 4609. [2025-04-26 18:32:17,261 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4609 states, 4609 states have (on average 2.2380125840746365) internal successors, (in total 10315), 4608 states have internal predecessors, (10315), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:17,268 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4609 states to 4609 states and 10315 transitions. [2025-04-26 18:32:17,269 INFO L240 hiAutomatonCegarLoop]: Abstraction has 4609 states and 10315 transitions. [2025-04-26 18:32:17,269 INFO L438 stractBuchiCegarLoop]: Abstraction has 4609 states and 10315 transitions. [2025-04-26 18:32:17,269 INFO L340 stractBuchiCegarLoop]: ======== Iteration 8 ============ [2025-04-26 18:32:17,269 INFO L73 BuchiIsEmpty]: Start buchiIsEmpty. Operand 4609 states and 10315 transitions. [2025-04-26 18:32:17,279 INFO L131 ngComponentsAnalysis]: Automaton has 31 accepting balls. 62 [2025-04-26 18:32:17,279 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-04-26 18:32:17,279 INFO L120 BuchiIsEmpty]: Starting construction of run [2025-04-26 18:32:17,280 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-04-26 18:32:17,280 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1] [2025-04-26 18:32:17,280 INFO L752 eck$LassoCheckResult]: Stem: "[237] $Ultimate##0-->L-1: Formula: (= (select |v_#valid_1| 0) 0) InVars {#valid=|v_#valid_1|} OutVars{#valid=|v_#valid_1|} AuxVars[] AssignedVars[]" "[241] L-1-->L21: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[]" "[283] L21-->L21-1: Formula: (and (= (select |v_#valid_2| 1) 1) (= 2 (select |v_#length_1| 1))) InVars {#length=|v_#length_1|, #valid=|v_#valid_2|} OutVars{#length=|v_#length_1|, #valid=|v_#valid_2|} AuxVars[] AssignedVars[]" "[303] L21-1-->L21-2: Formula: (= 48 (select (select |v_#memory_int_1| 1) 0)) InVars {#memory_int=|v_#memory_int_1|} OutVars{#memory_int=|v_#memory_int_1|} AuxVars[] AssignedVars[]" "[247] L21-2-->L21-3: Formula: (= (select (select |v_#memory_int_2| 1) 1) 0) InVars {#memory_int=|v_#memory_int_2|} OutVars{#memory_int=|v_#memory_int_2|} AuxVars[] AssignedVars[]" "[277] L21-3-->L21-4: Formula: (and (= 43 (select |v_#length_2| 2)) (= (select |v_#valid_3| 2) 1)) InVars {#length=|v_#length_2|, #valid=|v_#valid_3|} OutVars{#length=|v_#length_2|, #valid=|v_#valid_3|} AuxVars[] AssignedVars[]" "[261] L21-4-->L37: Formula: (= v_~i1~0_5 0) InVars {} OutVars{~i1~0=v_~i1~0_5} AuxVars[] AssignedVars[~i1~0]" "[255] L37-->L37-1: Formula: (= v_~i2~0_5 0) InVars {} OutVars{~i2~0=v_~i2~0_5} AuxVars[] AssignedVars[~i2~0]" "[256] L37-1-->L37-2: Formula: (= 0 v_~N1~0_3) InVars {} OutVars{~N1~0=v_~N1~0_3} AuxVars[] AssignedVars[~N1~0]" "[221] L37-2-->L37-3: Formula: (= 0 v_~N2~0_3) InVars {} OutVars{~N2~0=v_~N2~0_3} AuxVars[] AssignedVars[~N2~0]" "[238] L37-3-->L37-4: Formula: (= v_~counter~0_9 0) InVars {} OutVars{~counter~0=v_~counter~0_9} AuxVars[] AssignedVars[~counter~0]" "[297] L37-4-->L37-5: Formula: (= v_~j1~0_5 0) InVars {} OutVars{~j1~0=v_~j1~0_5} AuxVars[] AssignedVars[~j1~0]" "[271] L37-5-->L37-6: Formula: (= v_~j2~0_1 0) InVars {} OutVars{~j2~0=v_~j2~0_1} AuxVars[] AssignedVars[~j2~0]" "[264] L37-6-->L37-7: Formula: (= 0 v_~M1~0_3) InVars {} OutVars{~M1~0=v_~M1~0_3} AuxVars[] AssignedVars[~M1~0]" "[278] L37-7-->L-1-1: Formula: (= 0 v_~M2~0_1) InVars {} OutVars{~M2~0=v_~M2~0_1} AuxVars[] AssignedVars[~M2~0]" "[309] L-1-1-->L-1-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1]" "[310] L-1-2-->L86: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t4~0#1=|v_ULTIMATE.start_main_~t4~0#1_2|, ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_2|, ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_2|, ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_2|, ULTIMATE.start_main_~t3~0#1=|v_ULTIMATE.start_main_~t3~0#1_2|, ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_2|, ULTIMATE.start_main_#t~nondet18#1=|v_ULTIMATE.start_main_#t~nondet18#1_2|, ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_2|, ULTIMATE.start_main_#t~pre17#1=|v_ULTIMATE.start_main_#t~pre17#1_2|, ULTIMATE.start_main_#t~nondet14#1=|v_ULTIMATE.start_main_#t~nondet14#1_2|, ULTIMATE.start_main_#t~pre19#1=|v_ULTIMATE.start_main_#t~pre19#1_2|, ULTIMATE.start_main_~t1~0#1=|v_ULTIMATE.start_main_~t1~0#1_2|, ULTIMATE.start_main_#t~nondet16#1=|v_ULTIMATE.start_main_#t~nondet16#1_2|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_2|, ULTIMATE.start_main_#t~nondet20#1=|v_ULTIMATE.start_main_#t~nondet20#1_2|, ULTIMATE.start_main_~t2~0#1=|v_ULTIMATE.start_main_~t2~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t4~0#1, ULTIMATE.start_main_#t~pre13#1, ULTIMATE.start_main_#t~nondet10#1, ULTIMATE.start_main_#t~nondet9#1, ULTIMATE.start_main_~t3~0#1, ULTIMATE.start_main_#t~pre15#1, ULTIMATE.start_main_#t~nondet18#1, ULTIMATE.start_main_#t~nondet12#1, ULTIMATE.start_main_#t~pre17#1, ULTIMATE.start_main_#t~nondet14#1, ULTIMATE.start_main_#t~pre19#1, ULTIMATE.start_main_~t1~0#1, ULTIMATE.start_main_#t~nondet16#1, ULTIMATE.start_main_#t~nondet11#1, ULTIMATE.start_main_#t~nondet20#1, ULTIMATE.start_main_~t2~0#1]" "[214] L86-->L86-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t1~0#1=|v_ULTIMATE.start_main_~t1~0#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t1~0#1]" "[269] L86-1-->L86-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t2~0#1=|v_ULTIMATE.start_main_~t2~0#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t2~0#1]" "[319] L86-2-->L86-3: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t3~0#1=|v_ULTIMATE.start_main_~t3~0#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t3~0#1]" "[250] L86-3-->L88: Formula: true InVars {} OutVars{ULTIMATE.start_main_~t4~0#1=|v_ULTIMATE.start_main_~t4~0#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t4~0#1]" "[282] L88-->L88-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet9#1]" "[302] L88-1-->L88-2: Formula: (= |v_ULTIMATE.start_main_#t~nondet9#1_4| v_~N1~0_4) InVars {ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_4|} OutVars{ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_4|, ~N1~0=v_~N1~0_4} AuxVars[] AssignedVars[~N1~0]" "[218] L88-2-->L89: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet9#1=|v_ULTIMATE.start_main_#t~nondet9#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet9#1]" "[267] L89-->L89-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet10#1]" "[249] L89-1-->L89-2: Formula: (= |v_ULTIMATE.start_main_#t~nondet10#1_4| v_~N2~0_4) InVars {ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_4|} OutVars{ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_4|, ~N2~0=v_~N2~0_4} AuxVars[] AssignedVars[~N2~0]" "[273] L89-2-->L90: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet10#1]" "[306] L90-->L90-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet11#1]" "[228] L90-1-->L90-2: Formula: (= |v_ULTIMATE.start_main_#t~nondet11#1_4| v_~M1~0_4) InVars {ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_4|} OutVars{ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_4|, ~M1~0=v_~M1~0_4} AuxVars[] AssignedVars[~M1~0]" "[239] L90-2-->L91: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet11#1]" "[229] L91-->L91-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet12#1]" "[240] L91-1-->L91-2: Formula: (= |v_ULTIMATE.start_main_#t~nondet12#1_4| v_~M2~0_2) InVars {ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_4|} OutVars{~M2~0=v_~M2~0_2, ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_4|} AuxVars[] AssignedVars[~M2~0]" "[265] L91-2-->L92: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet12#1=|v_ULTIMATE.start_main_#t~nondet12#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet12#1]" "[298] L92-->L92-1: Formula: (= (ite (and (= v_~M1~0_5 v_~N1~0_5) (= v_~N1~0_5 v_~N2~0_5) (= v_~M2~0_3 v_~N1~0_5)) 1 0) |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_4|) InVars {~M1~0=v_~M1~0_5, ~N1~0=v_~N1~0_5, ~N2~0=v_~N2~0_5, ~M2~0=v_~M2~0_3} OutVars{~M1~0=v_~M1~0_5, ~N1~0=v_~N1~0_5, ~N2~0=v_~N2~0_5, ~M2~0=v_~M2~0_3, ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_#in~cond#1]" "[292] L92-1-->L33: Formula: true InVars {} OutVars{ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_~cond#1]" "[226] L33-->L34: Formula: (= |v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_5| |v_ULTIMATE.start_assume_abort_if_not_~cond#1_7|) InVars {ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_5|} OutVars{ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_7|, ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_~cond#1]" "[235] L34-->L33-1: Formula: (not (= |v_ULTIMATE.start_assume_abort_if_not_~cond#1_9| 0)) InVars {ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_9|} OutVars{ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_9|} AuxVars[] AssignedVars[]" "[251] L33-1-->L92-2: Formula: true InVars {} OutVars{ULTIMATE.start_assume_abort_if_not_~cond#1=|v_ULTIMATE.start_assume_abort_if_not_~cond#1_10|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_~cond#1]" "[259] L92-2-->L95: Formula: true InVars {} OutVars{ULTIMATE.start_assume_abort_if_not_#in~cond#1=|v_ULTIMATE.start_assume_abort_if_not_#in~cond#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_assume_abort_if_not_#in~cond#1]" "[279] L95-->L95-1: Formula: (= |v_ULTIMATE.start_main_#t~pre13#1_3| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre13#1]" "[289] L95-1-->L95-2: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks]" "[290] L95-2-->L95-3: Formula: (= |v_ULTIMATE.start_main_~t1~0#1_4| |v_ULTIMATE.start_main_#t~pre13#1_4|) InVars {ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_4|} OutVars{ULTIMATE.start_main_~t1~0#1=|v_ULTIMATE.start_main_~t1~0#1_4|, ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t1~0#1]" "[352] L95-3-->$Ultimate##0: Formula: (and (= |v_thread1Thread1of1ForFork2_#in~_argptr.offset_4| 0) (= |v_ULTIMATE.start_main_#t~pre13#1_7| v_thread1Thread1of1ForFork2_thidvar0_2) (= 0 v_thread1Thread1of1ForFork2_thidvar1_2) (= |v_thread1Thread1of1ForFork2_#in~_argptr.base_4| 0)) InVars {ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_7|} OutVars{thread1Thread1of1ForFork2_thidvar1=v_thread1Thread1of1ForFork2_thidvar1_2, thread1Thread1of1ForFork2_thidvar0=v_thread1Thread1of1ForFork2_thidvar0_2, thread1Thread1of1ForFork2_#res.base=|v_thread1Thread1of1ForFork2_#res.base_4|, ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_7|, thread1Thread1of1ForFork2_#t~post1=|v_thread1Thread1of1ForFork2_#t~post1_4|, thread1Thread1of1ForFork2_#t~post2=|v_thread1Thread1of1ForFork2_#t~post2_4|, thread1Thread1of1ForFork2_~_argptr.base=v_thread1Thread1of1ForFork2_~_argptr.base_4, thread1Thread1of1ForFork2_#res.offset=|v_thread1Thread1of1ForFork2_#res.offset_4|, thread1Thread1of1ForFork2_#in~_argptr.offset=|v_thread1Thread1of1ForFork2_#in~_argptr.offset_4|, thread1Thread1of1ForFork2_~_argptr.offset=v_thread1Thread1of1ForFork2_~_argptr.offset_4, thread1Thread1of1ForFork2_#in~_argptr.base=|v_thread1Thread1of1ForFork2_#in~_argptr.base_4|} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_thidvar1, thread1Thread1of1ForFork2_thidvar0, thread1Thread1of1ForFork2_#res.base, thread1Thread1of1ForFork2_#t~post1, thread1Thread1of1ForFork2_#t~post2, thread1Thread1of1ForFork2_~_argptr.base, thread1Thread1of1ForFork2_#res.offset, thread1Thread1of1ForFork2_#in~_argptr.offset, thread1Thread1of1ForFork2_~_argptr.offset, thread1Thread1of1ForFork2_#in~_argptr.base]" "[320] $Ultimate##0-->L44: Formula: (and (= |v_thread1Thread1of1ForFork2_#in~_argptr.offset_1| v_thread1Thread1of1ForFork2_~_argptr.offset_1) (= v_thread1Thread1of1ForFork2_~_argptr.base_1 |v_thread1Thread1of1ForFork2_#in~_argptr.base_1|)) InVars {thread1Thread1of1ForFork2_#in~_argptr.offset=|v_thread1Thread1of1ForFork2_#in~_argptr.offset_1|, thread1Thread1of1ForFork2_#in~_argptr.base=|v_thread1Thread1of1ForFork2_#in~_argptr.base_1|} OutVars{thread1Thread1of1ForFork2_~_argptr.base=v_thread1Thread1of1ForFork2_~_argptr.base_1, thread1Thread1of1ForFork2_#in~_argptr.offset=|v_thread1Thread1of1ForFork2_#in~_argptr.offset_1|, thread1Thread1of1ForFork2_~_argptr.offset=v_thread1Thread1of1ForFork2_~_argptr.offset_1, thread1Thread1of1ForFork2_#in~_argptr.base=|v_thread1Thread1of1ForFork2_#in~_argptr.base_1|} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_~_argptr.base, thread1Thread1of1ForFork2_~_argptr.offset]" "[321] L44-->L47: Formula: (<= v_~N1~0_2 v_~i1~0_4) InVars {~i1~0=v_~i1~0_4, ~N1~0=v_~N1~0_2} OutVars{~i1~0=v_~i1~0_4, ~N1~0=v_~N1~0_2} AuxVars[] AssignedVars[]" "[323] L47-->thread1FINAL: Formula: (and (= |v_thread1Thread1of1ForFork2_#res.offset_1| 0) (= |v_thread1Thread1of1ForFork2_#res.base_1| 0)) InVars {} OutVars{thread1Thread1of1ForFork2_#res.base=|v_thread1Thread1of1ForFork2_#res.base_1|, thread1Thread1of1ForFork2_#res.offset=|v_thread1Thread1of1ForFork2_#res.offset_1|} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_#res.base, thread1Thread1of1ForFork2_#res.offset]" "[325] thread1FINAL-->thread1EXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[]" "[243] L95-4-->L95-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre13#1=|v_ULTIMATE.start_main_#t~pre13#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre13#1]" "[213] L95-5-->L96: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet14#1=|v_ULTIMATE.start_main_#t~nondet14#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet14#1]" "[299] L96-->L96-1: Formula: (= |v_ULTIMATE.start_main_#t~pre15#1_3| |v_#pthreadsForks_4|) InVars {#pthreadsForks=|v_#pthreadsForks_4|} OutVars{#pthreadsForks=|v_#pthreadsForks_4|, ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre15#1]" "[266] L96-1-->L96-2: Formula: (= (+ 1 |v_#pthreadsForks_6|) |v_#pthreadsForks_5|) InVars {#pthreadsForks=|v_#pthreadsForks_6|} OutVars{#pthreadsForks=|v_#pthreadsForks_5|} AuxVars[] AssignedVars[#pthreadsForks]" "[227] L96-2-->L96-3: Formula: (= |v_ULTIMATE.start_main_~t2~0#1_4| |v_ULTIMATE.start_main_#t~pre15#1_4|) InVars {ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_4|} OutVars{ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_4|, ULTIMATE.start_main_~t2~0#1=|v_ULTIMATE.start_main_~t2~0#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t2~0#1]" "[346] L96-3-->$Ultimate##0: Formula: (and (= |v_thread2Thread1of1ForFork0_#in~_argptr#1.offset_4| 0) (= v_thread2Thread1of1ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre15#1_7|) (= |v_thread2Thread1of1ForFork0_#in~_argptr#1.base_4| 0) (= v_thread2Thread1of1ForFork0_thidvar2_2 0) (= v_thread2Thread1of1ForFork0_thidvar1_2 0)) InVars {ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_7|} OutVars{thread2Thread1of1ForFork0_#res#1.offset=|v_thread2Thread1of1ForFork0_#res#1.offset_4|, thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1=|v_thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1_4|, thread2Thread1of1ForFork0_#t~post3#1=|v_thread2Thread1of1ForFork0_#t~post3#1_4|, ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_7|, thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1=|v_thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1_4|, thread2Thread1of1ForFork0_#in~_argptr#1.offset=|v_thread2Thread1of1ForFork0_#in~_argptr#1.offset_4|, thread2Thread1of1ForFork0_#res#1.base=|v_thread2Thread1of1ForFork0_#res#1.base_4|, thread2Thread1of1ForFork0_#in~_argptr#1.base=|v_thread2Thread1of1ForFork0_#in~_argptr#1.base_4|, thread2Thread1of1ForFork0_thidvar2=v_thread2Thread1of1ForFork0_thidvar2_2, thread2Thread1of1ForFork0_thidvar1=v_thread2Thread1of1ForFork0_thidvar1_2, thread2Thread1of1ForFork0_~_argptr#1.base=|v_thread2Thread1of1ForFork0_~_argptr#1.base_4|, thread2Thread1of1ForFork0_thidvar0=v_thread2Thread1of1ForFork0_thidvar0_2, thread2Thread1of1ForFork0_~_argptr#1.offset=|v_thread2Thread1of1ForFork0_~_argptr#1.offset_4|, thread2Thread1of1ForFork0_#t~post4#1=|v_thread2Thread1of1ForFork0_#t~post4#1_4|} AuxVars[] AssignedVars[thread2Thread1of1ForFork0_#res#1.offset, thread2Thread1of1ForFork0_assume_abort_if_not_#in~cond#1, thread2Thread1of1ForFork0_#t~post3#1, thread2Thread1of1ForFork0_assume_abort_if_not_~cond#1, thread2Thread1of1ForFork0_#in~_argptr#1.offset, thread2Thread1of1ForFork0_#res#1.base, thread2Thread1of1ForFork0_#in~_argptr#1.base, thread2Thread1of1ForFork0_thidvar2, thread2Thread1of1ForFork0_thidvar1, thread2Thread1of1ForFork0_~_argptr#1.base, thread2Thread1of1ForFork0_thidvar0, thread2Thread1of1ForFork0_~_argptr#1.offset, thread2Thread1of1ForFork0_#t~post4#1]" "[326] $Ultimate##0-->L56: Formula: (and (= |v_thread2Thread1of1ForFork0_~_argptr#1.base_1| |v_thread2Thread1of1ForFork0_#in~_argptr#1.base_1|) (= |v_thread2Thread1of1ForFork0_#in~_argptr#1.offset_1| |v_thread2Thread1of1ForFork0_~_argptr#1.offset_1|)) InVars {thread2Thread1of1ForFork0_#in~_argptr#1.offset=|v_thread2Thread1of1ForFork0_#in~_argptr#1.offset_1|, thread2Thread1of1ForFork0_#in~_argptr#1.base=|v_thread2Thread1of1ForFork0_#in~_argptr#1.base_1|} OutVars{thread2Thread1of1ForFork0_#in~_argptr#1.offset=|v_thread2Thread1of1ForFork0_#in~_argptr#1.offset_1|, thread2Thread1of1ForFork0_~_argptr#1.base=|v_thread2Thread1of1ForFork0_~_argptr#1.base_1|, thread2Thread1of1ForFork0_#in~_argptr#1.base=|v_thread2Thread1of1ForFork0_#in~_argptr#1.base_1|, thread2Thread1of1ForFork0_~_argptr#1.offset=|v_thread2Thread1of1ForFork0_~_argptr#1.offset_1|} AuxVars[] AssignedVars[thread2Thread1of1ForFork0_~_argptr#1.base, thread2Thread1of1ForFork0_~_argptr#1.offset]" "[327] L56-->L59: Formula: (<= v_~N2~0_1 v_~i2~0_3) InVars {~i2~0=v_~i2~0_3, ~N2~0=v_~N2~0_1} OutVars{~i2~0=v_~i2~0_3, ~N2~0=v_~N2~0_1} AuxVars[] AssignedVars[]" "[329] L59-->thread2FINAL: Formula: (and (= |v_thread2Thread1of1ForFork0_#res#1.base_1| 0) (= |v_thread2Thread1of1ForFork0_#res#1.offset_1| 0)) InVars {} OutVars{thread2Thread1of1ForFork0_#res#1.offset=|v_thread2Thread1of1ForFork0_#res#1.offset_1|, thread2Thread1of1ForFork0_#res#1.base=|v_thread2Thread1of1ForFork0_#res#1.base_1|} AuxVars[] AssignedVars[thread2Thread1of1ForFork0_#res#1.base, thread2Thread1of1ForFork0_#res#1.offset]" "[331] thread2FINAL-->thread2EXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[]" "[280] L96-4-->L96-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre15#1=|v_ULTIMATE.start_main_#t~pre15#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre15#1]" "[294] L96-5-->L97: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet16#1=|v_ULTIMATE.start_main_#t~nondet16#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet16#1]" "[268] L97-->L97-1: Formula: (= |v_ULTIMATE.start_main_#t~pre17#1_3| |v_#pthreadsForks_7|) InVars {#pthreadsForks=|v_#pthreadsForks_7|} OutVars{#pthreadsForks=|v_#pthreadsForks_7|, ULTIMATE.start_main_#t~pre17#1=|v_ULTIMATE.start_main_#t~pre17#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre17#1]" "[276] L97-1-->L97-2: Formula: (= (+ 1 |v_#pthreadsForks_9|) |v_#pthreadsForks_8|) InVars {#pthreadsForks=|v_#pthreadsForks_9|} OutVars{#pthreadsForks=|v_#pthreadsForks_8|} AuxVars[] AssignedVars[#pthreadsForks]" "[307] L97-2-->L97-3: Formula: (= |v_ULTIMATE.start_main_~t3~0#1_4| |v_ULTIMATE.start_main_#t~pre17#1_4|) InVars {ULTIMATE.start_main_#t~pre17#1=|v_ULTIMATE.start_main_#t~pre17#1_4|} OutVars{ULTIMATE.start_main_#t~pre17#1=|v_ULTIMATE.start_main_#t~pre17#1_4|, ULTIMATE.start_main_~t3~0#1=|v_ULTIMATE.start_main_~t3~0#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t3~0#1]" "[349] L97-3-->$Ultimate##0: Formula: (and (= |v_thread3Thread1of1ForFork1_#in~_argptr.base_4| 0) (= v_thread3Thread1of1ForFork1_thidvar0_2 |v_ULTIMATE.start_main_#t~pre17#1_7|) (= 0 v_thread3Thread1of1ForFork1_thidvar1_2) (= 0 v_thread3Thread1of1ForFork1_thidvar2_2) (= |v_thread3Thread1of1ForFork1_#in~_argptr.offset_4| 0) (= 0 v_thread3Thread1of1ForFork1_thidvar3_2)) InVars {ULTIMATE.start_main_#t~pre17#1=|v_ULTIMATE.start_main_#t~pre17#1_7|} OutVars{thread3Thread1of1ForFork1_#in~_argptr.base=|v_thread3Thread1of1ForFork1_#in~_argptr.base_4|, thread3Thread1of1ForFork1_#res.offset=|v_thread3Thread1of1ForFork1_#res.offset_4|, thread3Thread1of1ForFork1_thidvar0=v_thread3Thread1of1ForFork1_thidvar0_2, thread3Thread1of1ForFork1_#res.base=|v_thread3Thread1of1ForFork1_#res.base_4|, thread3Thread1of1ForFork1_thidvar3=v_thread3Thread1of1ForFork1_thidvar3_2, thread3Thread1of1ForFork1_~_argptr.base=v_thread3Thread1of1ForFork1_~_argptr.base_4, ULTIMATE.start_main_#t~pre17#1=|v_ULTIMATE.start_main_#t~pre17#1_7|, thread3Thread1of1ForFork1_thidvar1=v_thread3Thread1of1ForFork1_thidvar1_2, thread3Thread1of1ForFork1_thidvar2=v_thread3Thread1of1ForFork1_thidvar2_2, thread3Thread1of1ForFork1_~_argptr.offset=v_thread3Thread1of1ForFork1_~_argptr.offset_4, thread3Thread1of1ForFork1_#t~post6=|v_thread3Thread1of1ForFork1_#t~post6_4|, thread3Thread1of1ForFork1_#t~post5=|v_thread3Thread1of1ForFork1_#t~post5_4|, thread3Thread1of1ForFork1_#in~_argptr.offset=|v_thread3Thread1of1ForFork1_#in~_argptr.offset_4|} AuxVars[] AssignedVars[thread3Thread1of1ForFork1_~_argptr.offset, thread3Thread1of1ForFork1_#in~_argptr.base, thread3Thread1of1ForFork1_#t~post6, thread3Thread1of1ForFork1_#res.offset, thread3Thread1of1ForFork1_thidvar0, thread3Thread1of1ForFork1_#t~post5, thread3Thread1of1ForFork1_#in~_argptr.offset, thread3Thread1of1ForFork1_#res.base, thread3Thread1of1ForFork1_thidvar3, thread3Thread1of1ForFork1_~_argptr.base, thread3Thread1of1ForFork1_thidvar1, thread3Thread1of1ForFork1_thidvar2]" "[332] $Ultimate##0-->L67: Formula: (and (= v_thread3Thread1of1ForFork1_~_argptr.offset_1 |v_thread3Thread1of1ForFork1_#in~_argptr.offset_1|) (= |v_thread3Thread1of1ForFork1_#in~_argptr.base_1| v_thread3Thread1of1ForFork1_~_argptr.base_1)) InVars {thread3Thread1of1ForFork1_#in~_argptr.base=|v_thread3Thread1of1ForFork1_#in~_argptr.base_1|, thread3Thread1of1ForFork1_#in~_argptr.offset=|v_thread3Thread1of1ForFork1_#in~_argptr.offset_1|} OutVars{thread3Thread1of1ForFork1_~_argptr.offset=v_thread3Thread1of1ForFork1_~_argptr.offset_1, thread3Thread1of1ForFork1_#in~_argptr.base=|v_thread3Thread1of1ForFork1_#in~_argptr.base_1|, thread3Thread1of1ForFork1_#in~_argptr.offset=|v_thread3Thread1of1ForFork1_#in~_argptr.offset_1|, thread3Thread1of1ForFork1_~_argptr.base=v_thread3Thread1of1ForFork1_~_argptr.base_1} AuxVars[] AssignedVars[thread3Thread1of1ForFork1_~_argptr.offset, thread3Thread1of1ForFork1_~_argptr.base]" "[334] L67-->L64: Formula: (< v_~j1~0_4 v_~M1~0_2) InVars {~j1~0=v_~j1~0_4, ~M1~0=v_~M1~0_2} OutVars{~j1~0=v_~j1~0_4, ~M1~0=v_~M1~0_2} AuxVars[] AssignedVars[]" "[336] L64-->L67: Formula: (and (= (+ v_~j1~0_15 1) v_~j1~0_14) (= (+ v_~counter~0_62 1) v_~counter~0_61)) InVars {~counter~0=v_~counter~0_62, ~j1~0=v_~j1~0_15} OutVars{thread3Thread1of1ForFork1_#t~post6=|v_thread3Thread1of1ForFork1_#t~post6_1|, ~counter~0=v_~counter~0_61, thread3Thread1of1ForFork1_#t~post5=|v_thread3Thread1of1ForFork1_#t~post5_1|, ~j1~0=v_~j1~0_14} AuxVars[] AssignedVars[~counter~0, thread3Thread1of1ForFork1_#t~post6, thread3Thread1of1ForFork1_#t~post5, ~j1~0]" "[333] L67-->L70: Formula: (<= v_~M1~0_1 v_~j1~0_3) InVars {~j1~0=v_~j1~0_3, ~M1~0=v_~M1~0_1} OutVars{~j1~0=v_~j1~0_3, ~M1~0=v_~M1~0_1} AuxVars[] AssignedVars[]" "[335] L70-->thread3FINAL: Formula: (and (= |v_thread3Thread1of1ForFork1_#res.offset_1| 0) (= |v_thread3Thread1of1ForFork1_#res.base_1| 0)) InVars {} OutVars{thread3Thread1of1ForFork1_#res.offset=|v_thread3Thread1of1ForFork1_#res.offset_1|, thread3Thread1of1ForFork1_#res.base=|v_thread3Thread1of1ForFork1_#res.base_1|} AuxVars[] AssignedVars[thread3Thread1of1ForFork1_#res.offset, thread3Thread1of1ForFork1_#res.base]" "[337] thread3FINAL-->thread3EXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[]" "[262] L97-4-->L97-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre17#1=|v_ULTIMATE.start_main_#t~pre17#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre17#1]" "[225] L97-5-->L98: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet18#1=|v_ULTIMATE.start_main_#t~nondet18#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet18#1]" "[291] L98-->L98-1: Formula: (= |v_#pthreadsForks_10| |v_ULTIMATE.start_main_#t~pre19#1_3|) InVars {#pthreadsForks=|v_#pthreadsForks_10|} OutVars{#pthreadsForks=|v_#pthreadsForks_10|, ULTIMATE.start_main_#t~pre19#1=|v_ULTIMATE.start_main_#t~pre19#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre19#1]" "[219] L98-1-->L98-2: Formula: (= (+ |v_#pthreadsForks_12| 1) |v_#pthreadsForks_11|) InVars {#pthreadsForks=|v_#pthreadsForks_12|} OutVars{#pthreadsForks=|v_#pthreadsForks_11|} AuxVars[] AssignedVars[#pthreadsForks]" "[272] L98-2-->L98-3: Formula: (= |v_ULTIMATE.start_main_~t4~0#1_4| |v_ULTIMATE.start_main_#t~pre19#1_4|) InVars {ULTIMATE.start_main_#t~pre19#1=|v_ULTIMATE.start_main_#t~pre19#1_4|} OutVars{ULTIMATE.start_main_~t4~0#1=|v_ULTIMATE.start_main_~t4~0#1_4|, ULTIMATE.start_main_#t~pre19#1=|v_ULTIMATE.start_main_#t~pre19#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~t4~0#1]" "[355] L98-3-->$Ultimate##0: Formula: (and (= v_thread4Thread1of1ForFork3_thidvar0_2 |v_ULTIMATE.start_main_#t~pre19#1_7|) (= |v_thread4Thread1of1ForFork3_#in~_argptr#1.offset_4| 0) (= |v_thread4Thread1of1ForFork3_#in~_argptr#1.base_4| 0) (= v_thread4Thread1of1ForFork3_thidvar3_2 0) (= v_thread4Thread1of1ForFork3_thidvar2_2 0) (= v_thread4Thread1of1ForFork3_thidvar4_2 0) (= v_thread4Thread1of1ForFork3_thidvar1_2 0)) InVars {ULTIMATE.start_main_#t~pre19#1=|v_ULTIMATE.start_main_#t~pre19#1_7|} OutVars{thread4Thread1of1ForFork3_#in~_argptr#1.base=|v_thread4Thread1of1ForFork3_#in~_argptr#1.base_4|, thread4Thread1of1ForFork3_#res#1.base=|v_thread4Thread1of1ForFork3_#res#1.base_4|, thread4Thread1of1ForFork3_#in~_argptr#1.offset=|v_thread4Thread1of1ForFork3_#in~_argptr#1.offset_4|, thread4Thread1of1ForFork3_assume_abort_if_not_~cond#1=|v_thread4Thread1of1ForFork3_assume_abort_if_not_~cond#1_4|, thread4Thread1of1ForFork3_#t~post7#1=|v_thread4Thread1of1ForFork3_#t~post7#1_4|, thread4Thread1of1ForFork3_assume_abort_if_not_#in~cond#1=|v_thread4Thread1of1ForFork3_assume_abort_if_not_#in~cond#1_4|, thread4Thread1of1ForFork3_~_argptr#1.base=|v_thread4Thread1of1ForFork3_~_argptr#1.base_4|, ULTIMATE.start_main_#t~pre19#1=|v_ULTIMATE.start_main_#t~pre19#1_7|, thread4Thread1of1ForFork3_thidvar1=v_thread4Thread1of1ForFork3_thidvar1_2, thread4Thread1of1ForFork3_thidvar0=v_thread4Thread1of1ForFork3_thidvar0_2, thread4Thread1of1ForFork3_thidvar3=v_thread4Thread1of1ForFork3_thidvar3_2, thread4Thread1of1ForFork3_thidvar2=v_thread4Thread1of1ForFork3_thidvar2_2, thread4Thread1of1ForFork3_thidvar4=v_thread4Thread1of1ForFork3_thidvar4_2, thread4Thread1of1ForFork3_#t~post8#1=|v_thread4Thread1of1ForFork3_#t~post8#1_4|, thread4Thread1of1ForFork3_~_argptr#1.offset=|v_thread4Thread1of1ForFork3_~_argptr#1.offset_4|, thread4Thread1of1ForFork3_#res#1.offset=|v_thread4Thread1of1ForFork3_#res#1.offset_4|} AuxVars[] AssignedVars[thread4Thread1of1ForFork3_#in~_argptr#1.base, thread4Thread1of1ForFork3_#res#1.base, thread4Thread1of1ForFork3_#in~_argptr#1.offset, thread4Thread1of1ForFork3_assume_abort_if_not_~cond#1, thread4Thread1of1ForFork3_#t~post7#1, thread4Thread1of1ForFork3_assume_abort_if_not_#in~cond#1, thread4Thread1of1ForFork3_~_argptr#1.base, thread4Thread1of1ForFork3_thidvar1, thread4Thread1of1ForFork3_thidvar0, thread4Thread1of1ForFork3_thidvar3, thread4Thread1of1ForFork3_thidvar2, thread4Thread1of1ForFork3_thidvar4, thread4Thread1of1ForFork3_#t~post8#1, thread4Thread1of1ForFork3_~_argptr#1.offset, thread4Thread1of1ForFork3_#res#1.offset]" "[338] $Ultimate##0-->L79: Formula: (and (= |v_thread4Thread1of1ForFork3_#in~_argptr#1.base_1| |v_thread4Thread1of1ForFork3_~_argptr#1.base_1|) (= |v_thread4Thread1of1ForFork3_#in~_argptr#1.offset_1| |v_thread4Thread1of1ForFork3_~_argptr#1.offset_1|)) InVars {thread4Thread1of1ForFork3_#in~_argptr#1.base=|v_thread4Thread1of1ForFork3_#in~_argptr#1.base_1|, thread4Thread1of1ForFork3_#in~_argptr#1.offset=|v_thread4Thread1of1ForFork3_#in~_argptr#1.offset_1|} OutVars{thread4Thread1of1ForFork3_#in~_argptr#1.base=|v_thread4Thread1of1ForFork3_#in~_argptr#1.base_1|, thread4Thread1of1ForFork3_#in~_argptr#1.offset=|v_thread4Thread1of1ForFork3_#in~_argptr#1.offset_1|, thread4Thread1of1ForFork3_~_argptr#1.base=|v_thread4Thread1of1ForFork3_~_argptr#1.base_1|, thread4Thread1of1ForFork3_~_argptr#1.offset=|v_thread4Thread1of1ForFork3_~_argptr#1.offset_1|} AuxVars[] AssignedVars[thread4Thread1of1ForFork3_~_argptr#1.base, thread4Thread1of1ForFork3_~_argptr#1.offset]" [2025-04-26 18:32:17,281 INFO L754 eck$LassoCheckResult]: Loop: "[340] L79-->L75: Formula: (< v_~j2~0_5 v_~M2~0_5) InVars {~M2~0=v_~M2~0_5, ~j2~0=v_~j2~0_5} OutVars{~M2~0=v_~M2~0_5, ~j2~0=v_~j2~0_5} AuxVars[] AssignedVars[]" "[342] L75-->L79: Formula: (and (= v_~counter~0_102 (+ v_~counter~0_101 1)) (not (= (ite (< 0 v_~counter~0_102) 1 0) 0)) (= v_~j2~0_20 (+ v_~j2~0_21 1))) InVars {~counter~0=v_~counter~0_102, ~j2~0=v_~j2~0_21} OutVars{thread4Thread1of1ForFork3_#t~post8#1=|v_thread4Thread1of1ForFork3_#t~post8#1_1|, thread4Thread1of1ForFork3_assume_abort_if_not_#in~cond#1=|v_thread4Thread1of1ForFork3_assume_abort_if_not_#in~cond#1_1|, ~counter~0=v_~counter~0_101, ~j2~0=v_~j2~0_20, thread4Thread1of1ForFork3_assume_abort_if_not_~cond#1=|v_thread4Thread1of1ForFork3_assume_abort_if_not_~cond#1_1|, thread4Thread1of1ForFork3_#t~post7#1=|v_thread4Thread1of1ForFork3_#t~post7#1_1|} AuxVars[] AssignedVars[~counter~0, thread4Thread1of1ForFork3_assume_abort_if_not_~cond#1, thread4Thread1of1ForFork3_#t~post7#1, thread4Thread1of1ForFork3_#t~post8#1, thread4Thread1of1ForFork3_assume_abort_if_not_#in~cond#1, ~j2~0]" [2025-04-26 18:32:17,282 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 18:32:17,282 INFO L85 PathProgramCache]: Analyzing trace with hash -1026140491, now seen corresponding path program 1 times [2025-04-26 18:32:17,282 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 18:32:17,282 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [755537923] [2025-04-26 18:32:17,282 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 18:32:17,282 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 18:32:17,289 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 76 statements into 1 equivalence classes. [2025-04-26 18:32:17,292 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 76 of 76 statements. [2025-04-26 18:32:17,292 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:17,292 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 18:32:17,421 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-04-26 18:32:17,421 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-04-26 18:32:17,421 INFO L324 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [755537923] [2025-04-26 18:32:17,421 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [755537923] provided 1 perfect and 0 imperfect interpolant sequences [2025-04-26 18:32:17,421 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-04-26 18:32:17,421 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2025-04-26 18:32:17,421 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1717927381] [2025-04-26 18:32:17,421 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-04-26 18:32:17,421 INFO L757 eck$LassoCheckResult]: stem already infeasible [2025-04-26 18:32:17,421 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 18:32:17,422 INFO L85 PathProgramCache]: Analyzing trace with hash 11843, now seen corresponding path program 1 times [2025-04-26 18:32:17,422 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 18:32:17,422 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1308402493] [2025-04-26 18:32:17,422 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 18:32:17,422 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 18:32:17,424 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 18:32:17,426 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 18:32:17,426 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:17,426 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 18:32:17,426 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 18:32:17,427 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 18:32:17,428 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 18:32:17,428 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:17,428 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 18:32:17,429 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 18:32:17,448 INFO L206 LassoAnalysis]: Preferences: [2025-04-26 18:32:17,448 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-04-26 18:32:17,448 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-04-26 18:32:17,448 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-04-26 18:32:17,448 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2025-04-26 18:32:17,448 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:17,448 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-04-26 18:32:17,448 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-04-26 18:32:17,448 INFO L132 ssoRankerPreferences]: Filename of dumped script: popl20-proofs-counter-add-4-semi-Q67.wvr.c_petrified1_Iteration8_Loop [2025-04-26 18:32:17,448 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-04-26 18:32:17,448 INFO L243 LassoAnalysis]: Starting lasso preprocessing... [2025-04-26 18:32:17,449 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:17,454 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:17,455 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:17,458 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:17,465 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:17,475 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:17,477 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:17,479 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:17,480 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:17,482 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:17,483 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:17,485 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:17,489 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:17,491 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:17,559 INFO L261 LassoAnalysis]: Preprocessing complete. [2025-04-26 18:32:17,559 INFO L367 LassoAnalysis]: Checking for nontermination... [2025-04-26 18:32:17,559 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:17,559 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:17,561 INFO L229 MonitoredProcess]: Starting monitored process 78 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:17,561 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (78)] Waiting until timeout for monitored process [2025-04-26 18:32:17,562 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 18:32:17,562 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:17,579 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 18:32:17,579 INFO L403 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {v_rep#funAddr~thread4.offset_15=3} Honda state: {v_rep#funAddr~thread4.offset_15=3} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-04-26 18:32:17,584 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (78)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:17,584 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:17,584 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:17,585 INFO L229 MonitoredProcess]: Starting monitored process 79 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:17,586 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (79)] Waiting until timeout for monitored process [2025-04-26 18:32:17,587 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 18:32:17,587 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:17,597 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 18:32:17,597 INFO L403 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {thread4Thread1of1ForFork3_#t~post7#1=0} Honda state: {thread4Thread1of1ForFork3_#t~post7#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-04-26 18:32:17,603 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (79)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:17,603 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:17,603 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:17,604 INFO L229 MonitoredProcess]: Starting monitored process 80 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:17,605 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (80)] Waiting until timeout for monitored process [2025-04-26 18:32:17,606 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 18:32:17,606 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:17,622 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (80)] Ended with exit code 0 [2025-04-26 18:32:17,622 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:17,622 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:17,624 INFO L229 MonitoredProcess]: Starting monitored process 81 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:17,624 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (81)] Waiting until timeout for monitored process [2025-04-26 18:32:17,626 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2025-04-26 18:32:17,626 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 18:32:17,693 INFO L407 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2025-04-26 18:32:17,698 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (81)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:17,698 INFO L206 LassoAnalysis]: Preferences: [2025-04-26 18:32:17,698 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-04-26 18:32:17,698 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-04-26 18:32:17,698 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-04-26 18:32:17,698 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-04-26 18:32:17,698 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:17,698 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-04-26 18:32:17,698 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-04-26 18:32:17,698 INFO L132 ssoRankerPreferences]: Filename of dumped script: popl20-proofs-counter-add-4-semi-Q67.wvr.c_petrified1_Iteration8_Loop [2025-04-26 18:32:17,698 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-04-26 18:32:17,698 INFO L243 LassoAnalysis]: Starting lasso preprocessing... [2025-04-26 18:32:17,699 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:17,702 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:17,703 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:17,707 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:17,709 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:17,711 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:17,712 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:17,714 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:17,716 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:17,717 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:17,719 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:17,721 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:17,724 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:17,726 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 18:32:17,797 INFO L261 LassoAnalysis]: Preprocessing complete. [2025-04-26 18:32:17,797 INFO L453 LassoAnalysis]: Using template 'affine'. [2025-04-26 18:32:17,797 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:17,797 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:17,799 INFO L229 MonitoredProcess]: Starting monitored process 82 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:17,801 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (82)] Waiting until timeout for monitored process [2025-04-26 18:32:17,801 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 [2025-04-26 18:32:17,812 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 18:32:17,812 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 18:32:17,812 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 18:32:17,812 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 18:32:17,813 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 18:32:17,813 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 18:32:17,818 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 18:32:17,824 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (82)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:17,825 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:17,825 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:17,826 INFO L229 MonitoredProcess]: Starting monitored process 83 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:17,827 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (83)] Waiting until timeout for monitored process [2025-04-26 18:32:17,829 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 [2025-04-26 18:32:17,839 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 18:32:17,839 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-04-26 18:32:17,839 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 18:32:17,839 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 18:32:17,839 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 18:32:17,840 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-04-26 18:32:17,840 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-04-26 18:32:17,841 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 18:32:17,847 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (83)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:17,847 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:17,847 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:17,850 INFO L229 MonitoredProcess]: Starting monitored process 84 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:17,851 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (84)] Waiting until timeout for monitored process [2025-04-26 18:32:17,851 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 [2025-04-26 18:32:17,861 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 18:32:17,862 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-04-26 18:32:17,862 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 18:32:17,862 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 18:32:17,862 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 18:32:17,862 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-04-26 18:32:17,862 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-04-26 18:32:17,864 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-04-26 18:32:17,865 INFO L436 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2025-04-26 18:32:17,865 INFO L437 ModelExtractionUtils]: 1 out of 4 variables were initially zero. Simplification set additionally 0 variables to zero. [2025-04-26 18:32:17,865 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 18:32:17,865 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 18:32:17,867 INFO L229 MonitoredProcess]: Starting monitored process 85 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 18:32:17,869 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (85)] Waiting until timeout for monitored process [2025-04-26 18:32:17,870 INFO L436 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-04-26 18:32:17,873 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (85)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:17,873 INFO L439 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2025-04-26 18:32:17,873 INFO L476 LassoAnalysis]: Proved termination. [2025-04-26 18:32:17,873 INFO L478 LassoAnalysis]: Termination argument consisting of: Ranking function f(~M2~0, ~j2~0) = 1*~M2~0 - 1*~j2~0 Supporting invariants [] [2025-04-26 18:32:17,879 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (84)] Ended with exit code 0 [2025-04-26 18:32:17,879 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2025-04-26 18:32:17,889 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 18:32:17,906 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 76 statements into 1 equivalence classes. [2025-04-26 18:32:17,918 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 76 of 76 statements. [2025-04-26 18:32:17,918 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:17,918 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 18:32:17,919 INFO L256 TraceCheckSpWp]: Trace formula consists of 178 conjuncts, 2 conjuncts are in the unsatisfiable core [2025-04-26 18:32:17,919 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 18:32:17,985 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 18:32:17,985 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 18:32:17,985 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 18:32:17,986 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 18:32:17,986 WARN L254 TraceCheckSpWp]: Trace formula consists of 8 conjuncts, 4 conjuncts are in the unsatisfiable core [2025-04-26 18:32:17,986 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 18:32:17,993 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-04-26 18:32:17,993 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 [2025-04-26 18:32:17,993 INFO L70 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 4609 states and 10315 transitions. cyclomatic complexity: 6215 Second operand has 3 states, 3 states have (on average 26.0) internal successors, (in total 78), 3 states have internal predecessors, (78), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:18,051 INFO L74 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 4609 states and 10315 transitions. cyclomatic complexity: 6215. Second operand has 3 states, 3 states have (on average 26.0) internal successors, (in total 78), 3 states have internal predecessors, (78), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) Result 7956 states and 18151 transitions. Complement of second has 6 states. [2025-04-26 18:32:18,051 INFO L140 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 4 states 1 stem states 2 non-accepting loop states 1 accepting loop states [2025-04-26 18:32:18,052 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 26.0) internal successors, (in total 78), 3 states have internal predecessors, (78), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:18,052 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 138 transitions. [2025-04-26 18:32:18,052 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 4 states and 138 transitions. Stem has 76 letters. Loop has 2 letters. [2025-04-26 18:32:18,052 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 18:32:18,052 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 4 states and 138 transitions. Stem has 78 letters. Loop has 2 letters. [2025-04-26 18:32:18,052 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 18:32:18,052 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 4 states and 138 transitions. Stem has 76 letters. Loop has 4 letters. [2025-04-26 18:32:18,052 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 18:32:18,052 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 7956 states and 18151 transitions. [2025-04-26 18:32:18,117 INFO L131 ngComponentsAnalysis]: Automaton has 0 accepting balls. 0 [2025-04-26 18:32:18,117 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 7956 states to 0 states and 0 transitions. [2025-04-26 18:32:18,117 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 0 [2025-04-26 18:32:18,117 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 0 [2025-04-26 18:32:18,117 INFO L74 IsDeterministic]: Start isDeterministic. Operand 0 states and 0 transitions. [2025-04-26 18:32:18,117 INFO L81 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2025-04-26 18:32:18,117 INFO L218 hiAutomatonCegarLoop]: Abstraction has 0 states and 0 transitions. [2025-04-26 18:32:18,117 INFO L240 hiAutomatonCegarLoop]: Abstraction has 0 states and 0 transitions. [2025-04-26 18:32:18,117 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-04-26 18:32:18,118 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2025-04-26 18:32:18,118 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=50, Unknown=0, NotChecked=0, Total=72 [2025-04-26 18:32:18,118 INFO L87 Difference]: Start difference. First operand 0 states and 0 transitions. Second operand has 9 states, 9 states have (on average 8.444444444444445) internal successors, (in total 76), 9 states have internal predecessors, (76), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 18:32:18,118 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-04-26 18:32:18,118 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2025-04-26 18:32:18,118 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 0 states and 0 transitions. [2025-04-26 18:32:18,118 INFO L131 ngComponentsAnalysis]: Automaton has 0 accepting balls. 0 [2025-04-26 18:32:18,118 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 0 states to 0 states and 0 transitions. [2025-04-26 18:32:18,118 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 0 [2025-04-26 18:32:18,118 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 0 [2025-04-26 18:32:18,118 INFO L74 IsDeterministic]: Start isDeterministic. Operand 0 states and 0 transitions. [2025-04-26 18:32:18,118 INFO L81 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2025-04-26 18:32:18,118 INFO L218 hiAutomatonCegarLoop]: Abstraction has 0 states and 0 transitions. [2025-04-26 18:32:18,118 INFO L240 hiAutomatonCegarLoop]: Abstraction has 0 states and 0 transitions. [2025-04-26 18:32:18,118 INFO L140 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-04-26 18:32:18,119 INFO L438 stractBuchiCegarLoop]: Abstraction has 0 states and 0 transitions. [2025-04-26 18:32:18,119 INFO L340 stractBuchiCegarLoop]: ======== Iteration 9 ============ [2025-04-26 18:32:18,119 INFO L73 BuchiIsEmpty]: Start buchiIsEmpty. Operand 0 states and 0 transitions. [2025-04-26 18:32:18,119 INFO L131 ngComponentsAnalysis]: Automaton has 0 accepting balls. 0 [2025-04-26 18:32:18,119 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty Result is true [2025-04-26 18:32:18,129 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 (2)] Forceful destruction successful, exit code 0 [2025-04-26 18:32:18,131 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer CFG 26.04 06:32:18 BoogieIcfgContainer [2025-04-26 18:32:18,131 INFO L131 PluginConnector]: ------------------------ END BuchiAutomizer---------------------------- [2025-04-26 18:32:18,131 INFO L158 Benchmark]: Toolchain (without parser) took 11813.86ms. Allocated memory was 142.6MB in the beginning and 411.0MB in the end (delta: 268.4MB). Free memory was 100.9MB in the beginning and 269.2MB in the end (delta: -168.3MB). Peak memory consumption was 97.7MB. Max. memory is 8.0GB. [2025-04-26 18:32:18,131 INFO L158 Benchmark]: CDTParser took 0.18ms. Allocated memory is still 155.2MB. Free memory is still 84.0MB. There was no memory consumed. Max. memory is 8.0GB. [2025-04-26 18:32:18,131 INFO L158 Benchmark]: CACSL2BoogieTranslator took 280.13ms. Allocated memory is still 142.6MB. Free memory was 100.9MB in the beginning and 86.8MB in the end (delta: 14.1MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2025-04-26 18:32:18,132 INFO L158 Benchmark]: Boogie Procedure Inliner took 38.52ms. Allocated memory is still 142.6MB. Free memory was 86.8MB in the beginning and 85.1MB in the end (delta: 1.7MB). There was no memory consumed. Max. memory is 8.0GB. [2025-04-26 18:32:18,132 INFO L158 Benchmark]: Boogie Preprocessor took 30.86ms. Allocated memory is still 142.6MB. Free memory was 85.1MB in the beginning and 84.3MB in the end (delta: 810.9kB). Peak memory consumption was 4.2MB. Max. memory is 8.0GB. [2025-04-26 18:32:18,132 INFO L158 Benchmark]: RCFGBuilder took 414.20ms. Allocated memory is still 142.6MB. Free memory was 84.3MB in the beginning and 65.3MB in the end (delta: 19.0MB). Peak memory consumption was 16.8MB. Max. memory is 8.0GB. [2025-04-26 18:32:18,132 INFO L158 Benchmark]: BuchiAutomizer took 11044.82ms. Allocated memory was 142.6MB in the beginning and 411.0MB in the end (delta: 268.4MB). Free memory was 64.7MB in the beginning and 269.2MB in the end (delta: -204.5MB). Peak memory consumption was 64.2MB. Max. memory is 8.0GB. [2025-04-26 18:32:18,133 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.18ms. Allocated memory is still 155.2MB. Free memory is still 84.0MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 280.13ms. Allocated memory is still 142.6MB. Free memory was 100.9MB in the beginning and 86.8MB in the end (delta: 14.1MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * Boogie Procedure Inliner took 38.52ms. Allocated memory is still 142.6MB. Free memory was 86.8MB in the beginning and 85.1MB in the end (delta: 1.7MB). There was no memory consumed. Max. memory is 8.0GB. * Boogie Preprocessor took 30.86ms. Allocated memory is still 142.6MB. Free memory was 85.1MB in the beginning and 84.3MB in the end (delta: 810.9kB). Peak memory consumption was 4.2MB. Max. memory is 8.0GB. * RCFGBuilder took 414.20ms. Allocated memory is still 142.6MB. Free memory was 84.3MB in the beginning and 65.3MB in the end (delta: 19.0MB). Peak memory consumption was 16.8MB. Max. memory is 8.0GB. * BuchiAutomizer took 11044.82ms. Allocated memory was 142.6MB in the beginning and 411.0MB in the end (delta: 268.4MB). Free memory was 64.7MB in the beginning and 269.2MB in the end (delta: -204.5MB). Peak memory consumption was 64.2MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: Timing statistics BüchiAutomizer plugin needed 10.9s and 9 iterations. TraceHistogramMax:4. Analysis of lassos took 5.7s. Construction of modules took 0.4s. Büchi inclusion checks took 2.4s. Highest rank in rank-based complementation 3. Minimization of det autom 2. Minimization of nondet autom 10. Automata minimization 0.7s AutomataMinimizationTime, 10 MinimizatonAttempts, 5240 StatesRemovedByMinimization, 10 NontrivialMinimizations. Non-live state removal took 0.7s Buchi closure took 0.0s. Biggest automaton had -1 states and ocurred in iteration -1. Nontrivial modules had stage [7, 0, 1, 0, 0]. InterpolantCoveringCapabilityFinite: 0/0 InterpolantCoveringCapabilityBuchi: 0/0 HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 1951 SdHoareTripleChecker+Valid, 0.6s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 1941 mSDsluCounter, 2610 SdHoareTripleChecker+Invalid, 0.4s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 1316 mSDsCounter, 32 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 677 IncrementalHoareTripleChecker+Invalid, 709 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 32 mSolverCounterUnsat, 1294 mSDtfsCounter, 677 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown LassoAnalysisResults: nont0 unkn0 SFLI0 SFLT4 conc0 concLT2 SILN0 SILU0 SILI0 SILT2 lasso0 LassoPreprocessingBenchmarks: Lassos: inital19 mio100 ax434 hnf100 lsp14 ukn100 mio100 lsp100 div100 bol100 ite100 ukn100 eq150 hnf94 smp100 dnf100 smp100 tf111 neg100 sie100 LassoTerminationAnalysisBenchmarks: ConstraintsSatisfiability: unsat Degree: 0 Time: 30ms VariablesStem: 1 VariablesLoop: 0 DisjunctsStem: 1 DisjunctsLoop: 1 SupportingInvariants: 2 MotzkinApplications: 6 LassoTerminationAnalysisBenchmarks: LassoNonterminationAnalysisSatFixpoint: 23 LassoNonterminationAnalysisSatUnbounded: 1 LassoNonterminationAnalysisUnsat: 8 LassoNonterminationAnalysisUnknown: 0 LassoNonterminationAnalysisTime: 1.2s InitialAbstractionConstructionTime: 0.8s InitialAbstraction: Time to compute Ample Reduction [ms]: 874, Number of transitions in reduction automaton: 6697, Number of states in reduction automaton: 3014, Underlying: - StatisticsResult: Constructed decomposition of program Your program was decomposed into 12 terminating modules (4 trivial, 7 deterministic, 1 nondeterministic). One deterministic module has affine ranking function (((long long) -1 * i1) + N1) and consists of 5 locations. One deterministic module has affine ranking function counter and consists of 3 locations. One deterministic module has affine ranking function counter and consists of 3 locations. One deterministic module has affine ranking function (((long long) -1 * j1) + M1) and consists of 4 locations. One deterministic module has affine ranking function (((long long) -1 * i2) + N2) and consists of 4 locations. One deterministic module has affine ranking function (((long long) -1 * i2) + N2) and consists of 4 locations. One deterministic module has affine ranking function (M2 + ((long long) -1 * j2)) and consists of 4 locations. One nondeterministic module has affine ranking function counter and consists of 3 locations. 4 modules have a trivial ranking function, the largest among these consists of 11 locations. - TerminationAnalysisResult: Termination proven Buchi Automizer proved that your program is terminating RESULT: Ultimate proved your program to be correct! [2025-04-26 18:32:18,148 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -smt2 -in -t:4000 (1)] Forceful destruction successful, exit code 0 Received shutdown request...