/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 16:44:44,410 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-04-26 16:44:44,456 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/settings/gemcutter/Termination.epf [2025-04-26 16:44:44,459 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-04-26 16:44:44,459 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-04-26 16:44:44,459 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.Check unreachability of error function in SV-COMP mode [2025-04-26 16:44:44,459 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.Translation Mode: [2025-04-26 16:44:44,472 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-04-26 16:44:44,472 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-04-26 16:44:44,472 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-04-26 16:44:44,472 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-04-26 16:44:44,472 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-04-26 16:44:44,472 INFO L153 SettingsManager]: * Use SBE=true [2025-04-26 16:44:44,473 INFO L151 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2025-04-26 16:44:44,473 INFO L153 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2025-04-26 16:44:44,473 INFO L153 SettingsManager]: * Use old map elimination=false [2025-04-26 16:44:44,473 INFO L153 SettingsManager]: * Use external solver (rank synthesis)=false [2025-04-26 16:44:44,473 INFO L153 SettingsManager]: * Use only trivial implications for array writes=true [2025-04-26 16:44:44,473 INFO L153 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2025-04-26 16:44:44,473 INFO L153 SettingsManager]: * Automaton type for concurrent programs=PARTIAL_ORDER_BA [2025-04-26 16:44:44,473 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-04-26 16:44:44,473 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2025-04-26 16:44:44,473 INFO L153 SettingsManager]: * sizeof long=4 [2025-04-26 16:44:44,473 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-04-26 16:44:44,473 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-04-26 16:44:44,473 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-04-26 16:44:44,473 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2025-04-26 16:44:44,473 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2025-04-26 16:44:44,473 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2025-04-26 16:44:44,473 INFO L153 SettingsManager]: * sizeof long double=12 [2025-04-26 16:44:44,474 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-04-26 16:44:44,474 INFO L153 SettingsManager]: * Assume nondeterminstic values are in range=false [2025-04-26 16:44:44,474 INFO L153 SettingsManager]: * Use constant arrays=true [2025-04-26 16:44:44,474 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2025-04-26 16:44:44,474 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-04-26 16:44:44,474 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -smt2 -in -t:4000 [2025-04-26 16:44:44,474 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-04-26 16:44:44,474 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-04-26 16:44:44,474 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-04-26 16:44:44,474 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-04-26 16:44:44,474 INFO L153 SettingsManager]: * Use conditional POR in concurrent analysis=false [2025-04-26 16:44:44,474 INFO L151 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2025-04-26 16:44:44,474 INFO L153 SettingsManager]: * TransformationType=MODULO_NEIGHBOR [2025-04-26 16:44:44,678 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-04-26 16:44:44,685 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-04-26 16:44:44,686 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-04-26 16:44:44,687 INFO L270 PluginConnector]: Initializing CDTParser... [2025-04-26 16:44:44,687 INFO L274 PluginConnector]: CDTParser initialized [2025-04-26 16:44:44,689 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 16:44:45,945 INFO L538 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/e0e6315cd/543664bd553944be8ab1e60ba927441b/FLAGa92f14c0a [2025-04-26 16:44:46,128 INFO L389 CDTParser]: Found 1 translation units. [2025-04-26 16:44:46,128 INFO L178 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/weaver/popl20-proofs-counter-add-4-semi-Q67.wvr.c [2025-04-26 16:44:46,134 INFO L432 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/e0e6315cd/543664bd553944be8ab1e60ba927441b/FLAGa92f14c0a [2025-04-26 16:44:46,995 INFO L440 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/e0e6315cd/543664bd553944be8ab1e60ba927441b [2025-04-26 16:44:46,997 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-04-26 16:44:46,998 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2025-04-26 16:44:46,999 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-04-26 16:44:46,999 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-04-26 16:44:47,002 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-04-26 16:44:47,003 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 26.04 04:44:46" (1/1) ... [2025-04-26 16:44:47,003 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@26c334c0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.04 04:44:47, skipping insertion in model container [2025-04-26 16:44:47,004 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 26.04 04:44:46" (1/1) ... [2025-04-26 16:44:47,018 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-04-26 16:44:47,172 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 16:44:47,177 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-04-26 16:44:47,184 INFO L200 MainTranslator]: Completed pre-run [2025-04-26 16:44:47,214 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 16:44:47,214 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-04-26 16:44:47,230 INFO L204 MainTranslator]: Completed translation [2025-04-26 16:44:47,231 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.04 04:44:47 WrapperNode [2025-04-26 16:44:47,231 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-04-26 16:44:47,232 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-04-26 16:44:47,232 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-04-26 16:44:47,232 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-04-26 16:44:47,236 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.04 04:44:47" (1/1) ... [2025-04-26 16:44:47,241 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.04 04:44:47" (1/1) ... [2025-04-26 16:44:47,254 INFO L138 Inliner]: procedures = 21, calls = 22, calls flagged for inlining = 6, calls inlined = 6, statements flattened = 104 [2025-04-26 16:44:47,256 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-04-26 16:44:47,256 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-04-26 16:44:47,256 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-04-26 16:44:47,256 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-04-26 16:44:47,261 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.04 04:44:47" (1/1) ... [2025-04-26 16:44:47,261 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.04 04:44:47" (1/1) ... [2025-04-26 16:44:47,262 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.04 04:44:47" (1/1) ... [2025-04-26 16:44:47,263 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.04 04:44:47" (1/1) ... [2025-04-26 16:44:47,266 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.04 04:44:47" (1/1) ... [2025-04-26 16:44:47,266 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.04 04:44:47" (1/1) ... [2025-04-26 16:44:47,271 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.04 04:44:47" (1/1) ... [2025-04-26 16:44:47,273 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.04 04:44:47" (1/1) ... [2025-04-26 16:44:47,273 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.04 04:44:47" (1/1) ... [2025-04-26 16:44:47,278 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-04-26 16:44:47,279 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2025-04-26 16:44:47,279 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2025-04-26 16:44:47,279 INFO L274 PluginConnector]: RCFGBuilder initialized [2025-04-26 16:44:47,280 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.04 04:44:47" (1/1) ... [2025-04-26 16:44:47,283 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -smt2 -in -t:4000 [2025-04-26 16:44:47,291 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:47,301 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 16:44:47,302 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 16:44:47,317 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-04-26 16:44:47,317 INFO L130 BoogieDeclarations]: Found specification of procedure thread1 [2025-04-26 16:44:47,317 INFO L138 BoogieDeclarations]: Found implementation of procedure thread1 [2025-04-26 16:44:47,317 INFO L130 BoogieDeclarations]: Found specification of procedure thread2 [2025-04-26 16:44:47,318 INFO L138 BoogieDeclarations]: Found implementation of procedure thread2 [2025-04-26 16:44:47,318 INFO L130 BoogieDeclarations]: Found specification of procedure thread3 [2025-04-26 16:44:47,318 INFO L138 BoogieDeclarations]: Found implementation of procedure thread3 [2025-04-26 16:44:47,318 INFO L130 BoogieDeclarations]: Found specification of procedure thread4 [2025-04-26 16:44:47,318 INFO L138 BoogieDeclarations]: Found implementation of procedure thread4 [2025-04-26 16:44:47,318 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2025-04-26 16:44:47,318 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2025-04-26 16:44:47,318 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2025-04-26 16:44:47,318 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-04-26 16:44:47,318 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-04-26 16:44:47,319 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 16:44:47,391 INFO L234 CfgBuilder]: Building ICFG [2025-04-26 16:44:47,392 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2025-04-26 16:44:47,556 INFO L279 CfgBuilder]: Omitted future-live optimization because the input is a concurrent program. [2025-04-26 16:44:47,556 INFO L283 CfgBuilder]: Performing block encoding [2025-04-26 16:44:47,622 INFO L307 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-04-26 16:44:47,623 INFO L312 CfgBuilder]: Removed 0 assume(true) statements. [2025-04-26 16:44:47,623 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 26.04 04:44:47 BoogieIcfgContainer [2025-04-26 16:44:47,623 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2025-04-26 16:44:47,624 INFO L112 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2025-04-26 16:44:47,624 INFO L270 PluginConnector]: Initializing BuchiAutomizer... [2025-04-26 16:44:47,630 INFO L274 PluginConnector]: BuchiAutomizer initialized [2025-04-26 16:44:47,631 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2025-04-26 16:44:47,631 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "CDTParser AST 26.04 04:44:46" (1/3) ... [2025-04-26 16:44:47,631 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@25911759 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 26.04 04:44:47, skipping insertion in model container [2025-04-26 16:44:47,632 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2025-04-26 16:44:47,632 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.04 04:44:47" (2/3) ... [2025-04-26 16:44:47,632 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@25911759 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 26.04 04:44:47, skipping insertion in model container [2025-04-26 16:44:47,632 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2025-04-26 16:44:47,632 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 26.04 04:44:47" (3/3) ... [2025-04-26 16:44:47,632 INFO L376 chiAutomizerObserver]: Analyzing ICFG popl20-proofs-counter-add-4-semi-Q67.wvr.c [2025-04-26 16:44:47,702 INFO L143 ThreadInstanceAdder]: Constructed 4 joinOtherThreadTransitions. [2025-04-26 16:44:47,729 INFO L125 denceProviderFactory]: Independence Relation #1: [IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-04-26 16:44:47,729 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 [2025-04-26 16:44:47,730 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:47,731 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 16:44:47,733 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 16:44:47,798 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 118 places, 115 transitions, 258 flow [2025-04-26 16:44:47,836 INFO L116 PetriNetUnfolderBase]: 6/107 cut-off events. [2025-04-26 16:44:47,837 INFO L117 PetriNetUnfolderBase]: For 4/4 co-relation queries the response was YES. [2025-04-26 16:44:47,842 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 16:44:47,842 INFO L82 GeneralOperation]: Start removeDead. Operand has 118 places, 115 transitions, 258 flow [2025-04-26 16:44:47,847 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 114 places, 107 transitions, 238 flow [2025-04-26 16:44:47,847 INFO L84 lAbstractionProvider]: Constructed initial Petri net abstraction that has has 114 places, 107 transitions, 238 flow [2025-04-26 16:44:47,852 INFO L135 AmpleReduction]: Starting ample reduction [2025-04-26 16:44:48,398 WARN L140 AmpleReduction]: Number of pruned transitions: 6201 [2025-04-26 16:44:48,398 WARN L141 AmpleReduction]: Loop nodes with "changing loop node status": 0 [2025-04-26 16:44:48,399 WARN L142 AmpleReduction]: Number of trivial sets caused by loops: 879 [2025-04-26 16:44:48,399 WARN L143 AmpleReduction]: Number of not loop caused trivial ample sets:102 [2025-04-26 16:44:48,399 WARN L144 AmpleReduction]: Number of initially assigned non-trivial ample sets:2032 [2025-04-26 16:44:48,399 WARN L145 AmpleReduction]: Times succ was already a loop node:1603 [2025-04-26 16:44:48,399 WARN L146 AmpleReduction]: Times some other node on the cycle already had a trivial ample set:108 [2025-04-26 16:44:48,399 INFO L149 AmpleReduction]: Finished ample reduction [2025-04-26 16:44:48,415 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 16:44:48,421 INFO L306 stractBuchiCegarLoop]: Interprodecural is true [2025-04-26 16:44:48,421 INFO L307 stractBuchiCegarLoop]: Hoare is None [2025-04-26 16:44:48,421 INFO L308 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2025-04-26 16:44:48,421 INFO L309 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2025-04-26 16:44:48,421 INFO L310 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2025-04-26 16:44:48,423 INFO L311 stractBuchiCegarLoop]: Difference is false [2025-04-26 16:44:48,423 INFO L312 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2025-04-26 16:44:48,423 INFO L316 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2025-04-26 16:44:48,430 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 16:44:48,491 INFO L131 ngComponentsAnalysis]: Automaton has 602 accepting balls. 1823 [2025-04-26 16:44:48,491 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-04-26 16:44:48,491 INFO L120 BuchiIsEmpty]: Starting construction of run [2025-04-26 16:44:48,496 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 16:44:48,496 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1] [2025-04-26 16:44:48,496 INFO L340 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2025-04-26 16:44:48,501 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 16:44:48,525 INFO L131 ngComponentsAnalysis]: Automaton has 602 accepting balls. 1823 [2025-04-26 16:44:48,526 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-04-26 16:44:48,526 INFO L120 BuchiIsEmpty]: Starting construction of run [2025-04-26 16:44:48,526 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 16:44:48,526 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1] [2025-04-26 16:44:48,532 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 16:44:48,533 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 16:44:48,537 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:44:48,537 INFO L85 PathProgramCache]: Analyzing trace with hash 1768587816, now seen corresponding path program 1 times [2025-04-26 16:44:48,541 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 16:44:48,542 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1841926698] [2025-04-26 16:44:48,542 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 16:44:48,542 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 16:44:48,602 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 44 statements into 1 equivalence classes. [2025-04-26 16:44:48,618 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 44 of 44 statements. [2025-04-26 16:44:48,618 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:48,618 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:44:48,619 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 16:44:48,627 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 44 statements into 1 equivalence classes. [2025-04-26 16:44:48,642 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 44 of 44 statements. [2025-04-26 16:44:48,642 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:48,642 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:44:48,665 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 16:44:48,667 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:44:48,667 INFO L85 PathProgramCache]: Analyzing trace with hash 11267, now seen corresponding path program 1 times [2025-04-26 16:44:48,667 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 16:44:48,667 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1082156445] [2025-04-26 16:44:48,667 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 16:44:48,667 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 16:44:48,672 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 16:44:48,674 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 16:44:48,674 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:48,674 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:44:48,674 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 16:44:48,676 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 16:44:48,677 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 16:44:48,677 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:48,677 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:44:48,680 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 16:44:48,681 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:44:48,682 INFO L85 PathProgramCache]: Analyzing trace with hash -1194147734, now seen corresponding path program 1 times [2025-04-26 16:44:48,682 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 16:44:48,682 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [395025668] [2025-04-26 16:44:48,682 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 16:44:48,682 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 16:44:48,689 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 46 statements into 1 equivalence classes. [2025-04-26 16:44:48,698 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 46 of 46 statements. [2025-04-26 16:44:48,698 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:48,698 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:44:48,698 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 16:44:48,702 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 46 statements into 1 equivalence classes. [2025-04-26 16:44:48,714 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 46 of 46 statements. [2025-04-26 16:44:48,715 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:48,715 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:44:48,723 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 16:44:48,764 INFO L206 LassoAnalysis]: Preferences: [2025-04-26 16:44:48,765 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-04-26 16:44:48,765 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-04-26 16:44:48,765 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-04-26 16:44:48,765 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2025-04-26 16:44:48,765 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:48,765 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-04-26 16:44:48,765 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-04-26 16:44:48,765 INFO L132 ssoRankerPreferences]: Filename of dumped script: popl20-proofs-counter-add-4-semi-Q67.wvr.c_petrified1_Iteration1_Loop [2025-04-26 16:44:48,765 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-04-26 16:44:48,765 INFO L243 LassoAnalysis]: Starting lasso preprocessing... [2025-04-26 16:44:48,777 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:48,785 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:48,789 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:48,791 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:48,794 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:48,797 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:48,801 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:48,804 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:48,809 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:48,815 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:48,817 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:48,819 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:48,940 INFO L261 LassoAnalysis]: Preprocessing complete. [2025-04-26 16:44:48,940 INFO L367 LassoAnalysis]: Checking for nontermination... [2025-04-26 16:44:48,941 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:48,942 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:48,946 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 16:44:48,948 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 16:44:48,949 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 16:44:48,949 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:48,970 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 16:44:48,971 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 16:44:48,978 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (3)] Forceful destruction successful, exit code 0 [2025-04-26 16:44:48,978 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:48,978 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:48,981 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 16:44:48,981 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 16:44:48,983 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 16:44:48,983 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:49,000 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 16:44:49,000 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 16:44:49,005 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 16:44:49,006 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:49,006 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:49,007 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 16:44:49,008 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 16:44:49,010 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 16:44:49,010 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:49,028 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 16:44:49,028 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 16:44:49,034 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (5)] Forceful destruction successful, exit code 0 [2025-04-26 16:44:49,034 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:49,034 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:49,036 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 16:44:49,037 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 16:44:49,039 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 16:44:49,039 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:49,058 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 16:44:49,058 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 16:44:49,063 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (6)] Forceful destruction successful, exit code 0 [2025-04-26 16:44:49,064 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:49,064 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:49,066 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 16:44:49,067 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 16:44:49,070 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 16:44:49,070 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:49,088 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 16:44:49,088 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 16:44:49,094 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 16:44:49,095 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:49,095 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:49,097 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 16:44:49,098 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 16:44:49,099 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 16:44:49,099 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:49,117 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 16:44:49,117 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:49,117 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:49,119 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 16:44:49,120 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 16:44:49,122 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2025-04-26 16:44:49,122 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:49,149 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 16:44:49,149 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 16:44:49,154 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (9)] Forceful destruction successful, exit code 0 [2025-04-26 16:44:49,154 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:49,154 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:49,156 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 16:44:49,157 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 16:44:49,158 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 16:44:49,158 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:49,175 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 16:44:49,176 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 16:44:49,181 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (10)] Forceful destruction successful, exit code 0 [2025-04-26 16:44:49,181 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:49,181 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:49,183 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 16:44:49,184 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 16:44:49,184 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 16:44:49,184 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:49,202 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 16:44:49,202 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 16:44:49,208 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 16:44:49,208 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:49,208 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:49,210 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 16:44:49,211 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 16:44:49,212 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 16:44:49,212 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:49,228 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 16:44:49,229 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:49,229 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:49,230 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 16:44:49,232 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 16:44:49,232 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2025-04-26 16:44:49,233 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:49,297 INFO L407 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2025-04-26 16:44:49,301 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (13)] Forceful destruction successful, exit code 0 [2025-04-26 16:44:49,301 INFO L206 LassoAnalysis]: Preferences: [2025-04-26 16:44:49,301 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-04-26 16:44:49,301 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-04-26 16:44:49,301 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-04-26 16:44:49,301 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-04-26 16:44:49,301 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:49,301 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-04-26 16:44:49,301 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-04-26 16:44:49,301 INFO L132 ssoRankerPreferences]: Filename of dumped script: popl20-proofs-counter-add-4-semi-Q67.wvr.c_petrified1_Iteration1_Loop [2025-04-26 16:44:49,301 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-04-26 16:44:49,302 INFO L243 LassoAnalysis]: Starting lasso preprocessing... [2025-04-26 16:44:49,305 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:49,307 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:49,310 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:49,315 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:49,319 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:49,321 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:49,324 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:49,326 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:49,331 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:49,333 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:49,335 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:49,337 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:49,420 INFO L261 LassoAnalysis]: Preprocessing complete. [2025-04-26 16:44:49,422 INFO L453 LassoAnalysis]: Using template 'affine'. [2025-04-26 16:44:49,423 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:49,423 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:49,425 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 16:44:49,426 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 16:44:49,427 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 16:44:49,438 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:44:49,438 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:44:49,438 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:44:49,438 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:44:49,443 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 16:44:49,443 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 16:44:49,446 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 16:44:49,453 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 16:44:49,453 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:49,453 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:49,455 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 16:44:49,456 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 16:44:49,457 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 16:44:49,467 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:44:49,467 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:44:49,467 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:44:49,467 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:44:49,469 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 16:44:49,470 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 16:44:49,472 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 16:44:49,478 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (15)] Forceful destruction successful, exit code 0 [2025-04-26 16:44:49,478 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:49,478 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:49,480 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 16:44:49,480 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 16:44:49,483 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 16:44:49,492 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:44:49,493 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:44:49,493 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:44:49,493 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:44:49,497 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 16:44:49,497 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 16:44:49,500 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 16:44:49,505 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 16:44:49,506 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:49,506 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:49,507 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 16:44:49,509 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 16:44:49,510 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 16:44:49,520 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:44:49,520 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:44:49,520 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:44:49,520 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:44:49,522 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 16:44:49,523 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 16:44:49,527 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 16:44:49,533 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 16:44:49,533 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:49,533 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:49,535 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 16:44:49,537 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 16:44:49,538 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 16:44:49,549 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:44:49,549 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:44:49,549 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:44:49,549 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:44:49,554 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 16:44:49,554 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 16:44:49,557 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 16:44:49,563 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 16:44:49,564 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:49,564 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:49,565 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 16:44:49,567 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 16:44:49,568 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 16:44:49,578 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:44:49,578 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-04-26 16:44:49,578 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:44:49,578 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:44:49,579 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:44:49,580 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-04-26 16:44:49,580 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-04-26 16:44:49,582 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 16:44:49,587 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (19)] Forceful destruction successful, exit code 0 [2025-04-26 16:44:49,587 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:49,587 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:49,589 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 16:44:49,590 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 16:44:49,591 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 16:44:49,601 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:44:49,601 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:44:49,602 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:44:49,602 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:44:49,604 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 16:44:49,604 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 16:44:49,607 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 16:44:49,613 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 16:44:49,613 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:49,613 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:49,615 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 16:44:49,616 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 16:44:49,618 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 16:44:49,627 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:44:49,628 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-04-26 16:44:49,628 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:44:49,628 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:44:49,628 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:44:49,628 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-04-26 16:44:49,628 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-04-26 16:44:49,631 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-04-26 16:44:49,638 INFO L436 ModelExtractionUtils]: Simplification made 4 calls to the SMT solver. [2025-04-26 16:44:49,638 INFO L437 ModelExtractionUtils]: 0 out of 4 variables were initially zero. Simplification set additionally 1 variables to zero. [2025-04-26 16:44:49,639 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:49,639 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:49,642 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 16:44:49,643 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 16:44:49,644 INFO L436 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-04-26 16:44:49,647 ERROR L418 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (22)] Exception during sending of exit command (exit): Broken pipe [2025-04-26 16:44:49,647 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 16:44:49,647 INFO L439 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2025-04-26 16:44:49,648 INFO L476 LassoAnalysis]: Proved termination. [2025-04-26 16:44:49,648 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 16:44:49,653 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (21)] Forceful destruction successful, exit code 0 [2025-04-26 16:44:49,655 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2025-04-26 16:44:49,683 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:44:49,699 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 44 statements into 1 equivalence classes. [2025-04-26 16:44:49,710 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 44 of 44 statements. [2025-04-26 16:44:49,710 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:49,710 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 16:44:49,711 INFO L256 TraceCheckSpWp]: Trace formula consists of 83 conjuncts, 2 conjuncts are in the unsatisfiable core [2025-04-26 16:44:49,712 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 16:44:49,771 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 16:44:49,772 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 16:44:49,772 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:49,772 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 16:44:49,772 WARN L254 TraceCheckSpWp]: Trace formula consists of 7 conjuncts, 4 conjuncts are in the unsatisfiable core [2025-04-26 16:44:49,773 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 16:44:49,789 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 16:44:49,802 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 16:44:49,808 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 16:44:50,034 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 16:44:50,035 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 16:44:50,039 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 16:44:50,043 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 239 transitions. [2025-04-26 16:44:50,046 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 5 states and 239 transitions. Stem has 44 letters. Loop has 2 letters. [2025-04-26 16:44:50,047 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 16:44:50,047 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 5 states and 239 transitions. Stem has 46 letters. Loop has 2 letters. [2025-04-26 16:44:50,047 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 16:44:50,047 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 5 states and 239 transitions. Stem has 44 letters. Loop has 4 letters. [2025-04-26 16:44:50,047 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 16:44:50,048 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 9802 states and 21812 transitions. [2025-04-26 16:44:50,144 INFO L131 ngComponentsAnalysis]: Automaton has 284 accepting balls. 701 [2025-04-26 16:44:50,185 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 9802 states to 3305 states and 7268 transitions. [2025-04-26 16:44:50,186 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1340 [2025-04-26 16:44:50,195 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 2075 [2025-04-26 16:44:50,195 INFO L74 IsDeterministic]: Start isDeterministic. Operand 3305 states and 7268 transitions. [2025-04-26 16:44:50,196 INFO L81 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-04-26 16:44:50,196 INFO L218 hiAutomatonCegarLoop]: Abstraction has 3305 states and 7268 transitions. [2025-04-26 16:44:50,216 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3305 states and 7268 transitions. [2025-04-26 16:44:50,348 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3305 to 3050. [2025-04-26 16:44:50,352 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 16:44:50,360 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3050 states to 3050 states and 7013 transitions. [2025-04-26 16:44:50,362 INFO L240 hiAutomatonCegarLoop]: Abstraction has 3050 states and 7013 transitions. [2025-04-26 16:44:50,362 INFO L438 stractBuchiCegarLoop]: Abstraction has 3050 states and 7013 transitions. [2025-04-26 16:44:50,362 INFO L340 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2025-04-26 16:44:50,362 INFO L73 BuchiIsEmpty]: Start buchiIsEmpty. Operand 3050 states and 7013 transitions. [2025-04-26 16:44:50,374 INFO L131 ngComponentsAnalysis]: Automaton has 284 accepting balls. 701 [2025-04-26 16:44:50,374 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-04-26 16:44:50,374 INFO L120 BuchiIsEmpty]: Starting construction of run [2025-04-26 16:44:50,375 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 16:44:50,375 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1] [2025-04-26 16:44:50,376 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 16:44:50,376 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 16:44:50,376 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:44:50,377 INFO L85 PathProgramCache]: Analyzing trace with hash -1985141229, now seen corresponding path program 1 times [2025-04-26 16:44:50,377 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 16:44:50,377 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1688661264] [2025-04-26 16:44:50,377 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 16:44:50,377 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 16:44:50,387 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 54 statements into 1 equivalence classes. [2025-04-26 16:44:50,396 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 54 of 54 statements. [2025-04-26 16:44:50,396 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:50,396 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:44:50,399 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 16:44:50,401 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 54 statements into 1 equivalence classes. [2025-04-26 16:44:50,409 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 54 of 54 statements. [2025-04-26 16:44:50,413 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:50,414 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:44:50,420 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 16:44:50,421 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:44:50,421 INFO L85 PathProgramCache]: Analyzing trace with hash 11459, now seen corresponding path program 1 times [2025-04-26 16:44:50,421 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 16:44:50,421 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [552868002] [2025-04-26 16:44:50,421 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 16:44:50,421 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 16:44:50,427 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 16:44:50,428 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 16:44:50,428 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:50,428 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:44:50,428 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 16:44:50,429 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 16:44:50,434 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 16:44:50,434 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:50,434 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:44:50,435 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 16:44:50,435 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:44:50,435 INFO L85 PathProgramCache]: Analyzing trace with hash -755231147, now seen corresponding path program 1 times [2025-04-26 16:44:50,435 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 16:44:50,435 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1854742894] [2025-04-26 16:44:50,435 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 16:44:50,435 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 16:44:50,447 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 56 statements into 1 equivalence classes. [2025-04-26 16:44:50,452 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 56 of 56 statements. [2025-04-26 16:44:50,452 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:50,452 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 16:44:50,568 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 16:44:50,568 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-04-26 16:44:50,569 INFO L324 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1854742894] [2025-04-26 16:44:50,569 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1854742894] provided 1 perfect and 0 imperfect interpolant sequences [2025-04-26 16:44:50,569 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-04-26 16:44:50,569 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2025-04-26 16:44:50,569 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [626215158] [2025-04-26 16:44:50,569 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-04-26 16:44:50,593 INFO L206 LassoAnalysis]: Preferences: [2025-04-26 16:44:50,593 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-04-26 16:44:50,593 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-04-26 16:44:50,593 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-04-26 16:44:50,593 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2025-04-26 16:44:50,593 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:50,593 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-04-26 16:44:50,593 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-04-26 16:44:50,593 INFO L132 ssoRankerPreferences]: Filename of dumped script: popl20-proofs-counter-add-4-semi-Q67.wvr.c_petrified1_Iteration2_Loop [2025-04-26 16:44:50,593 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-04-26 16:44:50,593 INFO L243 LassoAnalysis]: Starting lasso preprocessing... [2025-04-26 16:44:50,594 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:50,598 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:50,601 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:50,603 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:50,605 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:50,607 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:50,609 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:50,610 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:50,612 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:50,614 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:50,616 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:50,618 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:50,619 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:50,621 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:50,740 INFO L261 LassoAnalysis]: Preprocessing complete. [2025-04-26 16:44:50,740 INFO L367 LassoAnalysis]: Checking for nontermination... [2025-04-26 16:44:50,740 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:50,741 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:50,742 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 16:44:50,744 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 16:44:50,745 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 16:44:50,745 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:50,763 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (23)] Ended with exit code 0 [2025-04-26 16:44:50,763 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:50,764 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:50,766 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 16:44:50,767 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 16:44:50,767 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2025-04-26 16:44:50,767 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:50,789 INFO L407 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2025-04-26 16:44:50,793 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (24)] Forceful destruction successful, exit code 0 [2025-04-26 16:44:50,793 INFO L206 LassoAnalysis]: Preferences: [2025-04-26 16:44:50,793 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-04-26 16:44:50,793 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-04-26 16:44:50,793 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-04-26 16:44:50,793 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-04-26 16:44:50,793 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:50,793 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-04-26 16:44:50,794 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-04-26 16:44:50,794 INFO L132 ssoRankerPreferences]: Filename of dumped script: popl20-proofs-counter-add-4-semi-Q67.wvr.c_petrified1_Iteration2_Loop [2025-04-26 16:44:50,794 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-04-26 16:44:50,794 INFO L243 LassoAnalysis]: Starting lasso preprocessing... [2025-04-26 16:44:50,796 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:50,801 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:50,803 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:50,805 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:50,808 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:50,811 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:50,813 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:50,816 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:50,820 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:50,822 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:50,824 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:50,826 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:50,827 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:50,829 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:50,935 INFO L261 LassoAnalysis]: Preprocessing complete. [2025-04-26 16:44:50,935 INFO L453 LassoAnalysis]: Using template 'affine'. [2025-04-26 16:44:50,935 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:50,935 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:50,939 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 16:44:50,940 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 16:44:50,941 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 16:44:50,951 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:44:50,951 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-04-26 16:44:50,951 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:44:50,951 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:44:50,952 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:44:50,952 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-04-26 16:44:50,952 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-04-26 16:44:50,956 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-04-26 16:44:50,958 INFO L436 ModelExtractionUtils]: Simplification made 2 calls to the SMT solver. [2025-04-26 16:44:50,958 INFO L437 ModelExtractionUtils]: 1 out of 3 variables were initially zero. Simplification set additionally 0 variables to zero. [2025-04-26 16:44:50,958 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:50,958 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:50,960 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 16:44:50,962 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 16:44:50,963 INFO L436 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-04-26 16:44:50,965 ERROR L418 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (26)] Exception during sending of exit command (exit): Broken pipe [2025-04-26 16:44:50,970 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 16:44:50,970 INFO L439 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2025-04-26 16:44:50,970 INFO L476 LassoAnalysis]: Proved termination. [2025-04-26 16:44:50,970 INFO L478 LassoAnalysis]: Termination argument consisting of: Ranking function f(~counter~0) = 1*~counter~0 Supporting invariants [] [2025-04-26 16:44:50,978 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 16:44:50,979 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2025-04-26 16:44:50,998 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:44:51,010 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 54 statements into 1 equivalence classes. [2025-04-26 16:44:51,024 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 54 of 54 statements. [2025-04-26 16:44:51,024 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:51,024 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 16:44:51,024 INFO L256 TraceCheckSpWp]: Trace formula consists of 111 conjuncts, 2 conjuncts are in the unsatisfiable core [2025-04-26 16:44:51,026 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 16:44:51,097 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 16:44:51,098 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 16:44:51,098 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:51,098 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 16:44:51,098 WARN L254 TraceCheckSpWp]: Trace formula consists of 8 conjuncts, 4 conjuncts are in the unsatisfiable core [2025-04-26 16:44:51,099 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 16:44:51,100 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 16:44:51,101 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 16:44:51,101 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 16:44:51,172 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 16:44:51,173 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 16:44:51,174 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 16:44:51,174 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 114 transitions. [2025-04-26 16:44:51,174 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 3 states and 114 transitions. Stem has 54 letters. Loop has 2 letters. [2025-04-26 16:44:51,174 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 16:44:51,174 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 3 states and 114 transitions. Stem has 56 letters. Loop has 2 letters. [2025-04-26 16:44:51,176 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 16:44:51,176 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 3 states and 114 transitions. Stem has 54 letters. Loop has 4 letters. [2025-04-26 16:44:51,176 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 16:44:51,176 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 3867 states and 8443 transitions. [2025-04-26 16:44:51,198 INFO L131 ngComponentsAnalysis]: Automaton has 284 accepting balls. 701 [2025-04-26 16:44:51,219 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 3867 states to 3127 states and 7126 transitions. [2025-04-26 16:44:51,219 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1854 [2025-04-26 16:44:51,223 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 1871 [2025-04-26 16:44:51,223 INFO L74 IsDeterministic]: Start isDeterministic. Operand 3127 states and 7126 transitions. [2025-04-26 16:44:51,223 INFO L81 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-04-26 16:44:51,223 INFO L218 hiAutomatonCegarLoop]: Abstraction has 3127 states and 7126 transitions. [2025-04-26 16:44:51,227 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3127 states and 7126 transitions. [2025-04-26 16:44:51,278 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3127 to 3108. [2025-04-26 16:44:51,285 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 16:44:51,295 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3108 states to 3108 states and 7101 transitions. [2025-04-26 16:44:51,296 INFO L240 hiAutomatonCegarLoop]: Abstraction has 3108 states and 7101 transitions. [2025-04-26 16:44:51,296 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-04-26 16:44:51,297 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2025-04-26 16:44:51,297 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2025-04-26 16:44:51,298 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 16:44:51,346 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-04-26 16:44:51,346 INFO L93 Difference]: Finished difference Result 3151 states and 7148 transitions. [2025-04-26 16:44:51,346 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 3151 states and 7148 transitions. [2025-04-26 16:44:51,367 INFO L131 ngComponentsAnalysis]: Automaton has 284 accepting balls. 701 [2025-04-26 16:44:51,388 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 3151 states to 3142 states and 7139 transitions. [2025-04-26 16:44:51,389 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1889 [2025-04-26 16:44:51,392 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 1889 [2025-04-26 16:44:51,392 INFO L74 IsDeterministic]: Start isDeterministic. Operand 3142 states and 7139 transitions. [2025-04-26 16:44:51,392 INFO L81 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-04-26 16:44:51,392 INFO L218 hiAutomatonCegarLoop]: Abstraction has 3142 states and 7139 transitions. [2025-04-26 16:44:51,396 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3142 states and 7139 transitions. [2025-04-26 16:44:51,438 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3142 to 3118. [2025-04-26 16:44:51,446 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 16:44:51,455 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3118 states to 3118 states and 7112 transitions. [2025-04-26 16:44:51,455 INFO L240 hiAutomatonCegarLoop]: Abstraction has 3118 states and 7112 transitions. [2025-04-26 16:44:51,456 INFO L140 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2025-04-26 16:44:51,457 INFO L438 stractBuchiCegarLoop]: Abstraction has 3118 states and 7112 transitions. [2025-04-26 16:44:51,457 INFO L340 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2025-04-26 16:44:51,457 INFO L73 BuchiIsEmpty]: Start buchiIsEmpty. Operand 3118 states and 7112 transitions. [2025-04-26 16:44:51,469 INFO L131 ngComponentsAnalysis]: Automaton has 284 accepting balls. 701 [2025-04-26 16:44:51,469 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-04-26 16:44:51,469 INFO L120 BuchiIsEmpty]: Starting construction of run [2025-04-26 16:44:51,471 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 16:44:51,471 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1] [2025-04-26 16:44:51,472 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 16:44:51,472 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 16:44:51,472 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:44:51,472 INFO L85 PathProgramCache]: Analyzing trace with hash -1879923366, now seen corresponding path program 1 times [2025-04-26 16:44:51,472 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 16:44:51,472 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1635372704] [2025-04-26 16:44:51,472 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 16:44:51,472 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 16:44:51,482 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 61 statements into 1 equivalence classes. [2025-04-26 16:44:51,491 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 61 of 61 statements. [2025-04-26 16:44:51,492 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:51,492 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:44:51,492 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 16:44:51,494 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 61 statements into 1 equivalence classes. [2025-04-26 16:44:51,502 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 61 of 61 statements. [2025-04-26 16:44:51,502 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:51,502 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:44:51,513 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 16:44:51,514 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:44:51,514 INFO L85 PathProgramCache]: Analyzing trace with hash 11459, now seen corresponding path program 2 times [2025-04-26 16:44:51,514 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 16:44:51,514 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1138425404] [2025-04-26 16:44:51,514 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-04-26 16:44:51,514 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 16:44:51,519 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 2 statements into 1 equivalence classes. [2025-04-26 16:44:51,520 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 16:44:51,520 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2025-04-26 16:44:51,520 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:44:51,520 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 16:44:51,521 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 16:44:51,523 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 16:44:51,523 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:51,523 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:44:51,524 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 16:44:51,525 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:44:51,525 INFO L85 PathProgramCache]: Analyzing trace with hash 1574887388, now seen corresponding path program 1 times [2025-04-26 16:44:51,525 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 16:44:51,525 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [814497157] [2025-04-26 16:44:51,525 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 16:44:51,525 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 16:44:51,532 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 63 statements into 1 equivalence classes. [2025-04-26 16:44:51,542 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 63 of 63 statements. [2025-04-26 16:44:51,542 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:51,542 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:44:51,542 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 16:44:51,544 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 63 statements into 1 equivalence classes. [2025-04-26 16:44:51,557 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 63 of 63 statements. [2025-04-26 16:44:51,557 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:51,557 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:44:51,565 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 16:44:51,589 INFO L206 LassoAnalysis]: Preferences: [2025-04-26 16:44:51,590 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-04-26 16:44:51,590 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-04-26 16:44:51,590 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-04-26 16:44:51,590 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2025-04-26 16:44:51,590 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:51,590 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-04-26 16:44:51,590 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-04-26 16:44:51,590 INFO L132 ssoRankerPreferences]: Filename of dumped script: popl20-proofs-counter-add-4-semi-Q67.wvr.c_petrified1_Iteration3_Loop [2025-04-26 16:44:51,590 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-04-26 16:44:51,590 INFO L243 LassoAnalysis]: Starting lasso preprocessing... [2025-04-26 16:44:51,591 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:51,594 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:51,596 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:51,598 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:51,600 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:51,604 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:51,606 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:51,609 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:51,611 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:51,613 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:51,615 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:51,616 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:51,620 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:51,624 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:51,719 INFO L261 LassoAnalysis]: Preprocessing complete. [2025-04-26 16:44:51,719 INFO L367 LassoAnalysis]: Checking for nontermination... [2025-04-26 16:44:51,719 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:51,719 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:51,721 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 16:44:51,721 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 16:44:51,722 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 16:44:51,722 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:51,740 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 16:44:51,740 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 16:44:51,746 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (27)] Ended with exit code 0 [2025-04-26 16:44:51,746 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:51,746 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:51,748 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 16:44:51,748 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 16:44:51,749 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 16:44:51,749 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:51,767 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 16:44:51,767 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 16:44:51,772 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 16:44:51,772 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:51,773 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:51,775 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 16:44:51,776 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 16:44:51,777 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 16:44:51,777 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:51,794 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 16:44:51,794 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 16:44:51,800 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (29)] Ended with exit code 0 [2025-04-26 16:44:51,800 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:51,800 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:51,802 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 16:44:51,803 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 16:44:51,804 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 16:44:51,804 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:51,821 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 16:44:51,821 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 16:44:51,826 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (30)] Ended with exit code 0 [2025-04-26 16:44:51,827 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:51,827 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:51,828 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 16:44:51,829 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 16:44:51,830 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 16:44:51,830 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:51,845 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (31)] Ended with exit code 0 [2025-04-26 16:44:51,845 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:51,846 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:51,847 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 16:44:51,849 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 16:44:51,850 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2025-04-26 16:44:51,850 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:51,870 INFO L407 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2025-04-26 16:44:51,874 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 16:44:51,874 INFO L206 LassoAnalysis]: Preferences: [2025-04-26 16:44:51,874 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-04-26 16:44:51,874 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-04-26 16:44:51,874 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-04-26 16:44:51,874 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-04-26 16:44:51,874 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:51,874 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-04-26 16:44:51,874 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-04-26 16:44:51,874 INFO L132 ssoRankerPreferences]: Filename of dumped script: popl20-proofs-counter-add-4-semi-Q67.wvr.c_petrified1_Iteration3_Loop [2025-04-26 16:44:51,874 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-04-26 16:44:51,874 INFO L243 LassoAnalysis]: Starting lasso preprocessing... [2025-04-26 16:44:51,876 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:51,880 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:51,882 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:51,884 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:51,886 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:51,890 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:51,892 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:51,894 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:51,896 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:51,897 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:51,900 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:51,902 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:51,904 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:51,908 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:51,984 INFO L261 LassoAnalysis]: Preprocessing complete. [2025-04-26 16:44:51,984 INFO L453 LassoAnalysis]: Using template 'affine'. [2025-04-26 16:44:51,984 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:51,984 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:51,986 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 16:44:51,987 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 16:44:51,989 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 16:44:51,999 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:44:51,999 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:44:51,999 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:44:51,999 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:44:52,000 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 16:44:52,001 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 16:44:52,003 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 16:44:52,009 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 16:44:52,009 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:52,009 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:52,011 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 16:44:52,012 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 16:44:52,014 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 16:44:52,023 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:44:52,024 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:44:52,024 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:44:52,024 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:44:52,025 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 16:44:52,025 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 16:44:52,028 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 16:44:52,033 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 16:44:52,034 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:52,034 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:52,036 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 16:44:52,037 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 16:44:52,037 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 16:44:52,047 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:44:52,048 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:44:52,048 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:44:52,048 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:44:52,050 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 16:44:52,050 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 16:44:52,052 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 16:44:52,058 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 16:44:52,058 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:52,058 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:52,060 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 16:44:52,061 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 16:44:52,064 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 16:44:52,074 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:44:52,074 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:44:52,074 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:44:52,074 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:44:52,076 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 16:44:52,076 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 16:44:52,079 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 16:44:52,084 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 16:44:52,084 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:52,084 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:52,086 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 16:44:52,088 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 16:44:52,089 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 16:44:52,100 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:44:52,100 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-04-26 16:44:52,100 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:44:52,100 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:44:52,100 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:44:52,101 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-04-26 16:44:52,101 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-04-26 16:44:52,103 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-04-26 16:44:52,105 INFO L436 ModelExtractionUtils]: Simplification made 2 calls to the SMT solver. [2025-04-26 16:44:52,105 INFO L437 ModelExtractionUtils]: 1 out of 3 variables were initially zero. Simplification set additionally 0 variables to zero. [2025-04-26 16:44:52,105 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:52,105 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:52,107 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 16:44:52,108 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 16:44:52,109 INFO L436 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-04-26 16:44:52,111 ERROR L418 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (38)] Exception during sending of exit command (exit): Broken pipe [2025-04-26 16:44:52,112 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 16:44:52,112 INFO L439 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2025-04-26 16:44:52,112 INFO L476 LassoAnalysis]: Proved termination. [2025-04-26 16:44:52,112 INFO L478 LassoAnalysis]: Termination argument consisting of: Ranking function f(~counter~0) = 1*~counter~0 Supporting invariants [] [2025-04-26 16:44:52,119 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (37)] Forceful destruction successful, exit code 0 [2025-04-26 16:44:52,120 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2025-04-26 16:44:52,132 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:44:52,146 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 61 statements into 1 equivalence classes. [2025-04-26 16:44:52,160 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 61 of 61 statements. [2025-04-26 16:44:52,160 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:52,160 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 16:44:52,160 INFO L256 TraceCheckSpWp]: Trace formula consists of 130 conjuncts, 2 conjuncts are in the unsatisfiable core [2025-04-26 16:44:52,161 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 16:44:52,231 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 16:44:52,232 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 16:44:52,232 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:52,232 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 16:44:52,232 WARN L254 TraceCheckSpWp]: Trace formula consists of 8 conjuncts, 4 conjuncts are in the unsatisfiable core [2025-04-26 16:44:52,233 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 16:44:52,235 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 16:44:52,235 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 16:44:52,235 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 16:44:52,334 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 16:44:52,335 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 16:44:52,336 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 16:44:52,336 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 155 transitions. [2025-04-26 16:44:52,336 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 3 states and 155 transitions. Stem has 61 letters. Loop has 2 letters. [2025-04-26 16:44:52,336 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 16:44:52,336 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 3 states and 155 transitions. Stem has 63 letters. Loop has 2 letters. [2025-04-26 16:44:52,336 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 16:44:52,336 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 3 states and 155 transitions. Stem has 61 letters. Loop has 4 letters. [2025-04-26 16:44:52,336 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 16:44:52,336 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 5938 states and 13558 transitions. [2025-04-26 16:44:52,366 INFO L131 ngComponentsAnalysis]: Automaton has 275 accepting balls. 683 [2025-04-26 16:44:52,381 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 5938 states to 3055 states and 6595 transitions. [2025-04-26 16:44:52,382 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1867 [2025-04-26 16:44:52,385 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 2273 [2025-04-26 16:44:52,385 INFO L74 IsDeterministic]: Start isDeterministic. Operand 3055 states and 6595 transitions. [2025-04-26 16:44:52,385 INFO L81 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-04-26 16:44:52,385 INFO L218 hiAutomatonCegarLoop]: Abstraction has 3055 states and 6595 transitions. [2025-04-26 16:44:52,388 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3055 states and 6595 transitions. [2025-04-26 16:44:52,415 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3055 to 2394. [2025-04-26 16:44:52,421 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 16:44:52,426 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2394 states to 2394 states and 5378 transitions. [2025-04-26 16:44:52,426 INFO L240 hiAutomatonCegarLoop]: Abstraction has 2394 states and 5378 transitions. [2025-04-26 16:44:52,426 INFO L438 stractBuchiCegarLoop]: Abstraction has 2394 states and 5378 transitions. [2025-04-26 16:44:52,426 INFO L340 stractBuchiCegarLoop]: ======== Iteration 4 ============ [2025-04-26 16:44:52,426 INFO L73 BuchiIsEmpty]: Start buchiIsEmpty. Operand 2394 states and 5378 transitions. [2025-04-26 16:44:52,432 INFO L131 ngComponentsAnalysis]: Automaton has 275 accepting balls. 683 [2025-04-26 16:44:52,432 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-04-26 16:44:52,432 INFO L120 BuchiIsEmpty]: Starting construction of run [2025-04-26 16:44:52,434 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 16:44:52,434 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1] [2025-04-26 16:44:52,435 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 16:44:52,435 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 16:44:52,435 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:44:52,435 INFO L85 PathProgramCache]: Analyzing trace with hash -737920007, now seen corresponding path program 1 times [2025-04-26 16:44:52,435 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 16:44:52,435 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1930819609] [2025-04-26 16:44:52,435 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 16:44:52,435 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 16:44:52,440 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 64 statements into 1 equivalence classes. [2025-04-26 16:44:52,450 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 64 of 64 statements. [2025-04-26 16:44:52,451 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:52,451 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 16:44:52,689 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 16:44:52,690 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-04-26 16:44:52,690 INFO L324 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1930819609] [2025-04-26 16:44:52,690 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1930819609] provided 1 perfect and 0 imperfect interpolant sequences [2025-04-26 16:44:52,690 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-04-26 16:44:52,690 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2025-04-26 16:44:52,690 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [485331465] [2025-04-26 16:44:52,690 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-04-26 16:44:52,690 INFO L757 eck$LassoCheckResult]: stem already infeasible [2025-04-26 16:44:52,690 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:44:52,690 INFO L85 PathProgramCache]: Analyzing trace with hash 11651, now seen corresponding path program 1 times [2025-04-26 16:44:52,690 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 16:44:52,690 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1677270387] [2025-04-26 16:44:52,690 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 16:44:52,691 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 16:44:52,692 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 16:44:52,693 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 16:44:52,693 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:52,693 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:44:52,694 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 16:44:52,695 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 16:44:52,696 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 16:44:52,696 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:52,696 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:44:52,697 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 16:44:52,715 INFO L206 LassoAnalysis]: Preferences: [2025-04-26 16:44:52,715 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-04-26 16:44:52,715 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-04-26 16:44:52,715 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-04-26 16:44:52,715 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2025-04-26 16:44:52,715 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:52,715 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-04-26 16:44:52,715 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-04-26 16:44:52,715 INFO L132 ssoRankerPreferences]: Filename of dumped script: popl20-proofs-counter-add-4-semi-Q67.wvr.c_petrified1_Iteration4_Loop [2025-04-26 16:44:52,715 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-04-26 16:44:52,715 INFO L243 LassoAnalysis]: Starting lasso preprocessing... [2025-04-26 16:44:52,716 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:52,721 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:52,723 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:52,725 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:52,726 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:52,728 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:52,731 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:52,733 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:52,734 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:52,736 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:52,737 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:52,739 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:52,804 INFO L261 LassoAnalysis]: Preprocessing complete. [2025-04-26 16:44:52,804 INFO L367 LassoAnalysis]: Checking for nontermination... [2025-04-26 16:44:52,804 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:52,804 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:52,807 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 16:44:52,808 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 16:44:52,809 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 16:44:52,809 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:52,826 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (39)] Ended with exit code 0 [2025-04-26 16:44:52,826 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:52,826 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:52,828 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 16:44:52,830 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 16:44:52,831 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2025-04-26 16:44:52,831 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:52,897 INFO L407 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2025-04-26 16:44:52,902 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 16:44:52,902 INFO L206 LassoAnalysis]: Preferences: [2025-04-26 16:44:52,902 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-04-26 16:44:52,902 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-04-26 16:44:52,902 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-04-26 16:44:52,902 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-04-26 16:44:52,902 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:52,902 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-04-26 16:44:52,902 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-04-26 16:44:52,902 INFO L132 ssoRankerPreferences]: Filename of dumped script: popl20-proofs-counter-add-4-semi-Q67.wvr.c_petrified1_Iteration4_Loop [2025-04-26 16:44:52,902 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-04-26 16:44:52,902 INFO L243 LassoAnalysis]: Starting lasso preprocessing... [2025-04-26 16:44:52,903 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:52,908 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:52,910 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:52,913 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:52,916 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:52,918 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:52,920 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:52,922 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:52,923 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:52,925 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:52,927 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:52,929 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:52,997 INFO L261 LassoAnalysis]: Preprocessing complete. [2025-04-26 16:44:52,997 INFO L453 LassoAnalysis]: Using template 'affine'. [2025-04-26 16:44:52,997 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:52,997 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:52,999 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 16:44:53,000 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 16:44:53,001 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 16:44:53,011 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:44:53,011 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:44:53,011 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:44:53,011 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:44:53,012 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 16:44:53,012 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 16:44:53,015 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 16:44:53,020 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 16:44:53,020 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:53,021 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:53,022 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 16:44:53,024 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 16:44:53,024 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 16:44:53,034 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:44:53,034 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:44:53,034 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:44:53,034 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:44:53,035 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 16:44:53,035 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 16:44:53,039 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 16:44:53,045 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (42)] Ended with exit code 0 [2025-04-26 16:44:53,045 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:53,045 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:53,047 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 16:44:53,048 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 16:44:53,049 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 16:44:53,059 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:44:53,059 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-04-26 16:44:53,059 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:44:53,059 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:44:53,059 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:44:53,060 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-04-26 16:44:53,060 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-04-26 16:44:53,063 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-04-26 16:44:53,066 INFO L436 ModelExtractionUtils]: Simplification made 4 calls to the SMT solver. [2025-04-26 16:44:53,066 INFO L437 ModelExtractionUtils]: 0 out of 4 variables were initially zero. Simplification set additionally 1 variables to zero. [2025-04-26 16:44:53,067 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:53,067 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:53,068 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 16:44:53,071 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 16:44:53,072 INFO L436 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-04-26 16:44:53,075 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 16:44:53,075 INFO L439 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2025-04-26 16:44:53,075 INFO L476 LassoAnalysis]: Proved termination. [2025-04-26 16:44:53,075 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 16:44:53,080 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (43)] Forceful destruction successful, exit code 0 [2025-04-26 16:44:53,080 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2025-04-26 16:44:53,099 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:44:53,109 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 64 statements into 1 equivalence classes. [2025-04-26 16:44:53,121 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 64 of 64 statements. [2025-04-26 16:44:53,121 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:53,121 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 16:44:53,121 INFO L256 TraceCheckSpWp]: Trace formula consists of 141 conjuncts, 2 conjuncts are in the unsatisfiable core [2025-04-26 16:44:53,122 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 16:44:53,182 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 16:44:53,182 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 16:44:53,182 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:53,182 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 16:44:53,183 WARN L254 TraceCheckSpWp]: Trace formula consists of 7 conjuncts, 4 conjuncts are in the unsatisfiable core [2025-04-26 16:44:53,183 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 16:44:53,192 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 16:44:53,192 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 16:44:53,193 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 16:44:53,255 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 16:44:53,256 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 16:44:53,256 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 16:44:53,256 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 166 transitions. [2025-04-26 16:44:53,257 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 4 states and 166 transitions. Stem has 64 letters. Loop has 2 letters. [2025-04-26 16:44:53,257 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 16:44:53,257 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 4 states and 166 transitions. Stem has 66 letters. Loop has 2 letters. [2025-04-26 16:44:53,257 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 16:44:53,257 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 4 states and 166 transitions. Stem has 64 letters. Loop has 4 letters. [2025-04-26 16:44:53,257 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 16:44:53,257 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 6625 states and 15400 transitions. [2025-04-26 16:44:53,289 INFO L131 ngComponentsAnalysis]: Automaton has 198 accepting balls. 438 [2025-04-26 16:44:53,308 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 6625 states to 3774 states and 8429 transitions. [2025-04-26 16:44:53,308 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1750 [2025-04-26 16:44:53,310 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 1949 [2025-04-26 16:44:53,310 INFO L74 IsDeterministic]: Start isDeterministic. Operand 3774 states and 8429 transitions. [2025-04-26 16:44:53,310 INFO L81 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-04-26 16:44:53,310 INFO L218 hiAutomatonCegarLoop]: Abstraction has 3774 states and 8429 transitions. [2025-04-26 16:44:53,314 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3774 states and 8429 transitions. [2025-04-26 16:44:53,357 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3774 to 3444. [2025-04-26 16:44:53,360 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 16:44:53,367 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3444 states to 3444 states and 7961 transitions. [2025-04-26 16:44:53,367 INFO L240 hiAutomatonCegarLoop]: Abstraction has 3444 states and 7961 transitions. [2025-04-26 16:44:53,367 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-04-26 16:44:53,367 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2025-04-26 16:44:53,368 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=50, Unknown=0, NotChecked=0, Total=72 [2025-04-26 16:44:53,368 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 16:44:53,531 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-04-26 16:44:53,532 INFO L93 Difference]: Finished difference Result 3567 states and 8156 transitions. [2025-04-26 16:44:53,532 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 3567 states and 8156 transitions. [2025-04-26 16:44:53,543 INFO L131 ngComponentsAnalysis]: Automaton has 209 accepting balls. 460 [2025-04-26 16:44:53,565 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 3567 states to 3567 states and 8156 transitions. [2025-04-26 16:44:53,565 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1821 [2025-04-26 16:44:53,567 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 1821 [2025-04-26 16:44:53,567 INFO L74 IsDeterministic]: Start isDeterministic. Operand 3567 states and 8156 transitions. [2025-04-26 16:44:53,567 INFO L81 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-04-26 16:44:53,567 INFO L218 hiAutomatonCegarLoop]: Abstraction has 3567 states and 8156 transitions. [2025-04-26 16:44:53,570 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3567 states and 8156 transitions. [2025-04-26 16:44:53,600 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3567 to 3452. [2025-04-26 16:44:53,602 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 16:44:53,607 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3452 states to 3452 states and 7969 transitions. [2025-04-26 16:44:53,608 INFO L240 hiAutomatonCegarLoop]: Abstraction has 3452 states and 7969 transitions. [2025-04-26 16:44:53,608 INFO L140 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2025-04-26 16:44:53,608 INFO L438 stractBuchiCegarLoop]: Abstraction has 3452 states and 7969 transitions. [2025-04-26 16:44:53,608 INFO L340 stractBuchiCegarLoop]: ======== Iteration 5 ============ [2025-04-26 16:44:53,608 INFO L73 BuchiIsEmpty]: Start buchiIsEmpty. Operand 3452 states and 7969 transitions. [2025-04-26 16:44:53,617 INFO L131 ngComponentsAnalysis]: Automaton has 198 accepting balls. 438 [2025-04-26 16:44:53,618 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-04-26 16:44:53,618 INFO L120 BuchiIsEmpty]: Starting construction of run [2025-04-26 16:44:53,618 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 16:44:53,619 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1] [2025-04-26 16:44:53,620 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 16:44:53,620 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 16:44:53,621 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:44:53,621 INFO L85 PathProgramCache]: Analyzing trace with hash -1050364588, now seen corresponding path program 1 times [2025-04-26 16:44:53,621 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 16:44:53,621 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1280822699] [2025-04-26 16:44:53,621 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 16:44:53,621 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 16:44:53,626 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 67 statements into 1 equivalence classes. [2025-04-26 16:44:53,632 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 67 of 67 statements. [2025-04-26 16:44:53,633 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:53,633 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:44:53,633 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 16:44:53,635 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 67 statements into 1 equivalence classes. [2025-04-26 16:44:53,640 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 67 of 67 statements. [2025-04-26 16:44:53,640 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:53,640 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:44:53,645 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 16:44:53,646 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:44:53,646 INFO L85 PathProgramCache]: Analyzing trace with hash 11519, now seen corresponding path program 3 times [2025-04-26 16:44:53,646 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 16:44:53,646 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1207054873] [2025-04-26 16:44:53,646 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-04-26 16:44:53,646 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 16:44:53,648 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 2 statements into 1 equivalence classes. [2025-04-26 16:44:53,649 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 16:44:53,649 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) [2025-04-26 16:44:53,649 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:44:53,649 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 16:44:53,649 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 16:44:53,650 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 16:44:53,650 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:53,650 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:44:53,651 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 16:44:53,651 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:44:53,651 INFO L85 PathProgramCache]: Analyzing trace with hash -83043950, now seen corresponding path program 1 times [2025-04-26 16:44:53,651 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 16:44:53,651 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1535882940] [2025-04-26 16:44:53,651 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 16:44:53,651 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 16:44:53,656 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 69 statements into 1 equivalence classes. [2025-04-26 16:44:53,664 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 69 of 69 statements. [2025-04-26 16:44:53,664 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:53,664 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 16:44:53,858 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 16:44:53,859 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-04-26 16:44:53,859 INFO L324 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1535882940] [2025-04-26 16:44:53,859 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1535882940] provided 1 perfect and 0 imperfect interpolant sequences [2025-04-26 16:44:53,859 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-04-26 16:44:53,859 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2025-04-26 16:44:53,859 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1128354987] [2025-04-26 16:44:53,859 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-04-26 16:44:53,875 INFO L206 LassoAnalysis]: Preferences: [2025-04-26 16:44:53,875 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-04-26 16:44:53,875 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-04-26 16:44:53,875 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-04-26 16:44:53,875 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2025-04-26 16:44:53,875 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:53,875 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-04-26 16:44:53,875 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-04-26 16:44:53,875 INFO L132 ssoRankerPreferences]: Filename of dumped script: popl20-proofs-counter-add-4-semi-Q67.wvr.c_petrified1_Iteration5_Loop [2025-04-26 16:44:53,875 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-04-26 16:44:53,875 INFO L243 LassoAnalysis]: Starting lasso preprocessing... [2025-04-26 16:44:53,876 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:53,879 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:53,882 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:53,884 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:53,886 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:53,887 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:53,889 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:53,890 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:53,892 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:53,894 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:53,895 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:53,899 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:53,902 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:53,903 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:53,964 INFO L261 LassoAnalysis]: Preprocessing complete. [2025-04-26 16:44:53,965 INFO L367 LassoAnalysis]: Checking for nontermination... [2025-04-26 16:44:53,965 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:53,965 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:53,966 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 16:44:53,967 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 16:44:53,968 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 16:44:53,968 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:53,985 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 16:44:53,985 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 16:44:53,990 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (45)] Ended with exit code 0 [2025-04-26 16:44:53,990 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:53,990 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:53,991 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 16:44:53,992 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 16:44:53,993 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 16:44:53,993 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:54,008 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (46)] Ended with exit code 0 [2025-04-26 16:44:54,009 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:54,009 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:54,010 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 16:44:54,012 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 16:44:54,013 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2025-04-26 16:44:54,013 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:54,096 INFO L407 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2025-04-26 16:44:54,101 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 16:44:54,101 INFO L206 LassoAnalysis]: Preferences: [2025-04-26 16:44:54,101 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-04-26 16:44:54,101 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-04-26 16:44:54,101 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-04-26 16:44:54,101 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-04-26 16:44:54,101 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:54,101 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-04-26 16:44:54,101 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-04-26 16:44:54,101 INFO L132 ssoRankerPreferences]: Filename of dumped script: popl20-proofs-counter-add-4-semi-Q67.wvr.c_petrified1_Iteration5_Loop [2025-04-26 16:44:54,101 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-04-26 16:44:54,101 INFO L243 LassoAnalysis]: Starting lasso preprocessing... [2025-04-26 16:44:54,102 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:54,113 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:54,114 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:54,115 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:54,117 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:54,118 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:54,119 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:54,121 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:54,125 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:54,126 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:54,140 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:54,144 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:54,147 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:54,149 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:54,216 INFO L261 LassoAnalysis]: Preprocessing complete. [2025-04-26 16:44:54,216 INFO L453 LassoAnalysis]: Using template 'affine'. [2025-04-26 16:44:54,216 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:54,217 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:54,219 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 16:44:54,220 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 16:44:54,221 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 16:44:54,231 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:44:54,231 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-04-26 16:44:54,231 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:44:54,231 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:44:54,231 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:44:54,232 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-04-26 16:44:54,232 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-04-26 16:44:54,233 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-04-26 16:44:54,235 INFO L436 ModelExtractionUtils]: Simplification made 4 calls to the SMT solver. [2025-04-26 16:44:54,235 INFO L437 ModelExtractionUtils]: 0 out of 4 variables were initially zero. Simplification set additionally 1 variables to zero. [2025-04-26 16:44:54,235 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:54,235 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:54,237 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 16:44:54,238 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 16:44:54,239 INFO L436 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-04-26 16:44:54,242 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 16:44:54,242 INFO L439 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2025-04-26 16:44:54,242 INFO L476 LassoAnalysis]: Proved termination. [2025-04-26 16:44:54,242 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 16:44:54,247 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (48)] Ended with exit code 0 [2025-04-26 16:44:54,247 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2025-04-26 16:44:54,258 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:44:54,267 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 67 statements into 1 equivalence classes. [2025-04-26 16:44:54,286 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 67 of 67 statements. [2025-04-26 16:44:54,286 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:54,286 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 16:44:54,286 INFO L256 TraceCheckSpWp]: Trace formula consists of 147 conjuncts, 2 conjuncts are in the unsatisfiable core [2025-04-26 16:44:54,287 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 16:44:54,352 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 16:44:54,353 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 16:44:54,353 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:54,353 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 16:44:54,353 WARN L254 TraceCheckSpWp]: Trace formula consists of 8 conjuncts, 4 conjuncts are in the unsatisfiable core [2025-04-26 16:44:54,353 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 16:44:54,371 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 16:44:54,372 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 16:44:54,372 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 16:44:54,425 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 16:44:54,425 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 16:44:54,426 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 16:44:54,426 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 147 transitions. [2025-04-26 16:44:54,426 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 4 states and 147 transitions. Stem has 67 letters. Loop has 2 letters. [2025-04-26 16:44:54,426 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 16:44:54,426 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 4 states and 147 transitions. Stem has 69 letters. Loop has 2 letters. [2025-04-26 16:44:54,426 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 16:44:54,427 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 4 states and 147 transitions. Stem has 67 letters. Loop has 4 letters. [2025-04-26 16:44:54,427 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 16:44:54,427 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 4386 states and 9952 transitions. [2025-04-26 16:44:54,441 INFO L131 ngComponentsAnalysis]: Automaton has 109 accepting balls. 218 [2025-04-26 16:44:54,455 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 4386 states to 3753 states and 8532 transitions. [2025-04-26 16:44:54,456 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1674 [2025-04-26 16:44:54,458 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 1848 [2025-04-26 16:44:54,458 INFO L74 IsDeterministic]: Start isDeterministic. Operand 3753 states and 8532 transitions. [2025-04-26 16:44:54,458 INFO L81 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-04-26 16:44:54,458 INFO L218 hiAutomatonCegarLoop]: Abstraction has 3753 states and 8532 transitions. [2025-04-26 16:44:54,462 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3753 states and 8532 transitions. [2025-04-26 16:44:54,493 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3753 to 3514. [2025-04-26 16:44:54,496 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 16:44:54,501 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3514 states to 3514 states and 8093 transitions. [2025-04-26 16:44:54,501 INFO L240 hiAutomatonCegarLoop]: Abstraction has 3514 states and 8093 transitions. [2025-04-26 16:44:54,501 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-04-26 16:44:54,501 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2025-04-26 16:44:54,501 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=27, Invalid=83, Unknown=0, NotChecked=0, Total=110 [2025-04-26 16:44:54,502 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 16:44:54,706 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-04-26 16:44:54,706 INFO L93 Difference]: Finished difference Result 4057 states and 8987 transitions. [2025-04-26 16:44:54,706 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 4057 states and 8987 transitions. [2025-04-26 16:44:54,718 INFO L131 ngComponentsAnalysis]: Automaton has 100 accepting balls. 200 [2025-04-26 16:44:54,729 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 4057 states to 3927 states and 8788 transitions. [2025-04-26 16:44:54,730 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1860 [2025-04-26 16:44:54,731 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 1884 [2025-04-26 16:44:54,731 INFO L74 IsDeterministic]: Start isDeterministic. Operand 3927 states and 8788 transitions. [2025-04-26 16:44:54,731 INFO L81 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-04-26 16:44:54,731 INFO L218 hiAutomatonCegarLoop]: Abstraction has 3927 states and 8788 transitions. [2025-04-26 16:44:54,735 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3927 states and 8788 transitions. [2025-04-26 16:44:54,763 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3927 to 3639. [2025-04-26 16:44:54,766 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 16:44:54,770 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3639 states to 3639 states and 8322 transitions. [2025-04-26 16:44:54,770 INFO L240 hiAutomatonCegarLoop]: Abstraction has 3639 states and 8322 transitions. [2025-04-26 16:44:54,771 INFO L140 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2025-04-26 16:44:54,771 INFO L438 stractBuchiCegarLoop]: Abstraction has 3639 states and 8322 transitions. [2025-04-26 16:44:54,771 INFO L340 stractBuchiCegarLoop]: ======== Iteration 6 ============ [2025-04-26 16:44:54,771 INFO L73 BuchiIsEmpty]: Start buchiIsEmpty. Operand 3639 states and 8322 transitions. [2025-04-26 16:44:54,779 INFO L131 ngComponentsAnalysis]: Automaton has 78 accepting balls. 156 [2025-04-26 16:44:54,779 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-04-26 16:44:54,779 INFO L120 BuchiIsEmpty]: Starting construction of run [2025-04-26 16:44:54,780 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 16:44:54,780 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1] [2025-04-26 16:44:54,780 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 16:44:54,780 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 16:44:54,781 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:44:54,781 INFO L85 PathProgramCache]: Analyzing trace with hash 1361519063, now seen corresponding path program 1 times [2025-04-26 16:44:54,781 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 16:44:54,781 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [22123092] [2025-04-26 16:44:54,781 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 16:44:54,781 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 16:44:54,784 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 69 statements into 1 equivalence classes. [2025-04-26 16:44:54,789 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 69 of 69 statements. [2025-04-26 16:44:54,789 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:54,789 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:44:54,789 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 16:44:54,790 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 69 statements into 1 equivalence classes. [2025-04-26 16:44:54,796 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 69 of 69 statements. [2025-04-26 16:44:54,796 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:54,797 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:44:54,803 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 16:44:54,803 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:44:54,803 INFO L85 PathProgramCache]: Analyzing trace with hash 11519, now seen corresponding path program 4 times [2025-04-26 16:44:54,804 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 16:44:54,804 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [154231553] [2025-04-26 16:44:54,804 INFO L95 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2025-04-26 16:44:54,804 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 16:44:54,806 INFO L108 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST partitioned 2 statements into 2 equivalence classes. [2025-04-26 16:44:54,807 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 16:44:54,807 INFO L114 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) [2025-04-26 16:44:54,808 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:44:54,808 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 16:44:54,808 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 16:44:54,808 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 16:44:54,808 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:54,808 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:44:54,809 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 16:44:54,809 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:44:54,809 INFO L85 PathProgramCache]: Analyzing trace with hash -1545195179, now seen corresponding path program 1 times [2025-04-26 16:44:54,809 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 16:44:54,809 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [560640614] [2025-04-26 16:44:54,809 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 16:44:54,810 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 16:44:54,812 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 71 statements into 1 equivalence classes. [2025-04-26 16:44:54,816 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 71 of 71 statements. [2025-04-26 16:44:54,816 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:54,816 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:44:54,816 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 16:44:54,817 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 71 statements into 1 equivalence classes. [2025-04-26 16:44:54,822 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 71 of 71 statements. [2025-04-26 16:44:54,822 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:54,822 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:44:54,825 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 16:44:54,843 INFO L206 LassoAnalysis]: Preferences: [2025-04-26 16:44:54,843 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-04-26 16:44:54,843 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-04-26 16:44:54,843 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-04-26 16:44:54,843 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2025-04-26 16:44:54,843 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:54,843 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-04-26 16:44:54,844 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-04-26 16:44:54,844 INFO L132 ssoRankerPreferences]: Filename of dumped script: popl20-proofs-counter-add-4-semi-Q67.wvr.c_petrified1_Iteration6_Loop [2025-04-26 16:44:54,844 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-04-26 16:44:54,844 INFO L243 LassoAnalysis]: Starting lasso preprocessing... [2025-04-26 16:44:54,844 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:54,846 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:54,847 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:54,850 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:54,852 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:54,853 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:54,855 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:54,857 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:54,858 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:54,859 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:54,861 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:54,864 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:54,866 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:54,867 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:54,937 INFO L261 LassoAnalysis]: Preprocessing complete. [2025-04-26 16:44:54,937 INFO L367 LassoAnalysis]: Checking for nontermination... [2025-04-26 16:44:54,937 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:54,937 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:54,939 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 16:44:54,941 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 16:44:54,942 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 16:44:54,942 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:54,952 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 16:44:54,953 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 16:44:54,958 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (50)] Forceful destruction successful, exit code 0 [2025-04-26 16:44:54,958 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:54,958 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:54,960 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 16:44:54,961 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 16:44:54,961 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 16:44:54,961 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:54,972 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 16:44:54,972 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 16:44:54,977 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 16:44:54,977 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:54,977 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:54,979 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 16:44:54,980 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 16:44:54,980 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 16:44:54,980 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:54,996 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (52)] Forceful destruction successful, exit code 0 [2025-04-26 16:44:54,996 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:54,996 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:54,998 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 16:44:54,998 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 16:44:54,999 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2025-04-26 16:44:55,000 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:55,021 INFO L407 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2025-04-26 16:44:55,025 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 16:44:55,025 INFO L206 LassoAnalysis]: Preferences: [2025-04-26 16:44:55,025 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-04-26 16:44:55,025 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-04-26 16:44:55,025 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-04-26 16:44:55,025 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-04-26 16:44:55,025 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:55,025 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-04-26 16:44:55,025 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-04-26 16:44:55,025 INFO L132 ssoRankerPreferences]: Filename of dumped script: popl20-proofs-counter-add-4-semi-Q67.wvr.c_petrified1_Iteration6_Loop [2025-04-26 16:44:55,025 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-04-26 16:44:55,025 INFO L243 LassoAnalysis]: Starting lasso preprocessing... [2025-04-26 16:44:55,026 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:55,030 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:55,031 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:55,033 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:55,035 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:55,039 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:55,040 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:55,042 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:55,043 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:55,044 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:55,047 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:55,048 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:55,053 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:55,054 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:55,120 INFO L261 LassoAnalysis]: Preprocessing complete. [2025-04-26 16:44:55,120 INFO L453 LassoAnalysis]: Using template 'affine'. [2025-04-26 16:44:55,120 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:55,120 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:55,121 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 16:44:55,123 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 16:44:55,124 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 16:44:55,134 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:44:55,134 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-04-26 16:44:55,134 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:44:55,134 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:44:55,134 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:44:55,134 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-04-26 16:44:55,134 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-04-26 16:44:55,135 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 16:44:55,140 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (54)] Forceful destruction successful, exit code 0 [2025-04-26 16:44:55,140 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:55,140 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:55,142 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 16:44:55,143 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 16:44:55,143 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 16:44:55,153 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:44:55,153 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-04-26 16:44:55,153 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:44:55,153 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:44:55,153 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:44:55,153 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-04-26 16:44:55,153 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-04-26 16:44:55,154 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 16:44:55,159 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 16:44:55,159 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:55,159 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:55,161 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 16:44:55,161 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 16:44:55,162 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 16:44:55,172 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:44:55,172 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:44:55,172 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:44:55,172 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:44:55,173 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 16:44:55,173 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 16:44:55,175 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 16:44:55,181 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (56)] Ended with exit code 0 [2025-04-26 16:44:55,181 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:55,181 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:55,183 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 16:44:55,184 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 16:44:55,185 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 16:44:55,195 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:44:55,195 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:44:55,195 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:44:55,195 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:44:55,196 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 16:44:55,196 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 16:44:55,198 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 16:44:55,204 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 16:44:55,204 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:55,204 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:55,206 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 16:44:55,206 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 16:44:55,207 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 16:44:55,216 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:44:55,217 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-04-26 16:44:55,217 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:44:55,217 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:44:55,217 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:44:55,217 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-04-26 16:44:55,217 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-04-26 16:44:55,219 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-04-26 16:44:55,221 INFO L436 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2025-04-26 16:44:55,221 INFO L437 ModelExtractionUtils]: 0 out of 3 variables were initially zero. Simplification set additionally 1 variables to zero. [2025-04-26 16:44:55,221 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:55,222 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:55,223 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 16:44:55,225 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 16:44:55,225 INFO L436 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-04-26 16:44:55,228 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 16:44:55,228 INFO L439 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2025-04-26 16:44:55,228 INFO L476 LassoAnalysis]: Proved termination. [2025-04-26 16:44:55,228 INFO L478 LassoAnalysis]: Termination argument consisting of: Ranking function f(~counter~0) = 1*~counter~0 Supporting invariants [] [2025-04-26 16:44:55,234 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 16:44:55,234 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2025-04-26 16:44:55,244 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:44:55,256 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 69 statements into 1 equivalence classes. [2025-04-26 16:44:55,266 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 69 of 69 statements. [2025-04-26 16:44:55,267 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:55,267 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 16:44:55,267 INFO L256 TraceCheckSpWp]: Trace formula consists of 152 conjuncts, 2 conjuncts are in the unsatisfiable core [2025-04-26 16:44:55,268 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 16:44:55,325 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 16:44:55,326 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 16:44:55,326 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:55,326 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 16:44:55,327 WARN L254 TraceCheckSpWp]: Trace formula consists of 8 conjuncts, 4 conjuncts are in the unsatisfiable core [2025-04-26 16:44:55,327 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 16:44:55,340 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 16:44:55,341 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 16:44:55,341 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 16:44:55,369 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 16:44:55,370 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 16:44:55,370 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 16:44:55,370 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 126 transitions. [2025-04-26 16:44:55,370 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 3 states and 126 transitions. Stem has 69 letters. Loop has 2 letters. [2025-04-26 16:44:55,370 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 16:44:55,370 INFO L699 stractBuchiCegarLoop]: Bad chosen interpolant automaton: word not accepted [2025-04-26 16:44:55,379 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:44:55,389 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 69 statements into 1 equivalence classes. [2025-04-26 16:44:55,402 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 69 of 69 statements. [2025-04-26 16:44:55,402 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:55,402 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 16:44:55,403 INFO L256 TraceCheckSpWp]: Trace formula consists of 152 conjuncts, 2 conjuncts are in the unsatisfiable core [2025-04-26 16:44:55,403 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 16:44:55,460 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 16:44:55,461 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 16:44:55,461 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:55,461 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 16:44:55,462 WARN L254 TraceCheckSpWp]: Trace formula consists of 8 conjuncts, 4 conjuncts are in the unsatisfiable core [2025-04-26 16:44:55,462 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 16:44:55,471 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 16:44:55,472 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 16:44:55,472 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 16:44:55,521 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 16:44:55,522 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 16:44:55,522 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 16:44:55,522 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 161 transitions. [2025-04-26 16:44:55,522 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 4 states and 161 transitions. Stem has 69 letters. Loop has 2 letters. [2025-04-26 16:44:55,522 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 16:44:55,522 INFO L699 stractBuchiCegarLoop]: Bad chosen interpolant automaton: word not accepted [2025-04-26 16:44:55,530 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:44:55,540 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 69 statements into 1 equivalence classes. [2025-04-26 16:44:55,551 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 69 of 69 statements. [2025-04-26 16:44:55,551 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:55,551 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 16:44:55,551 INFO L256 TraceCheckSpWp]: Trace formula consists of 152 conjuncts, 2 conjuncts are in the unsatisfiable core [2025-04-26 16:44:55,552 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 16:44:55,625 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 16:44:55,626 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 16:44:55,626 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:55,626 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 16:44:55,626 WARN L254 TraceCheckSpWp]: Trace formula consists of 8 conjuncts, 4 conjuncts are in the unsatisfiable core [2025-04-26 16:44:55,626 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 16:44:55,636 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 16:44:55,637 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 16:44:55,637 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 16:44:55,673 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 16:44:55,674 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 16:44:55,674 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 16:44:55,674 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 135 transitions. [2025-04-26 16:44:55,674 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 3 states and 135 transitions. Stem has 69 letters. Loop has 2 letters. [2025-04-26 16:44:55,674 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 16:44:55,674 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 3 states and 135 transitions. Stem has 71 letters. Loop has 2 letters. [2025-04-26 16:44:55,675 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 16:44:55,675 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 3 states and 135 transitions. Stem has 69 letters. Loop has 4 letters. [2025-04-26 16:44:55,675 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 16:44:55,675 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 5476 states and 11837 transitions. [2025-04-26 16:44:55,724 INFO L131 ngComponentsAnalysis]: Automaton has 53 accepting balls. 106 [2025-04-26 16:44:55,743 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 5476 states to 4816 states and 10393 transitions. [2025-04-26 16:44:55,743 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1823 [2025-04-26 16:44:55,745 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 1937 [2025-04-26 16:44:55,745 INFO L74 IsDeterministic]: Start isDeterministic. Operand 4816 states and 10393 transitions. [2025-04-26 16:44:55,745 INFO L81 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-04-26 16:44:55,745 INFO L218 hiAutomatonCegarLoop]: Abstraction has 4816 states and 10393 transitions. [2025-04-26 16:44:55,750 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 4816 states and 10393 transitions. [2025-04-26 16:44:55,796 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 4816 to 3803. [2025-04-26 16:44:55,800 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 16:44:55,808 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3803 states to 3803 states and 8531 transitions. [2025-04-26 16:44:55,808 INFO L240 hiAutomatonCegarLoop]: Abstraction has 3803 states and 8531 transitions. [2025-04-26 16:44:55,808 INFO L438 stractBuchiCegarLoop]: Abstraction has 3803 states and 8531 transitions. [2025-04-26 16:44:55,808 INFO L340 stractBuchiCegarLoop]: ======== Iteration 7 ============ [2025-04-26 16:44:55,808 INFO L73 BuchiIsEmpty]: Start buchiIsEmpty. Operand 3803 states and 8531 transitions. [2025-04-26 16:44:55,821 INFO L131 ngComponentsAnalysis]: Automaton has 53 accepting balls. 106 [2025-04-26 16:44:55,822 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-04-26 16:44:55,822 INFO L120 BuchiIsEmpty]: Starting construction of run [2025-04-26 16:44:55,822 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 16:44:55,822 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1] [2025-04-26 16:44:55,823 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 16:44:55,824 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 16:44:55,824 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:44:55,824 INFO L85 PathProgramCache]: Analyzing trace with hash -742652729, now seen corresponding path program 1 times [2025-04-26 16:44:55,824 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 16:44:55,824 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [313452136] [2025-04-26 16:44:55,824 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 16:44:55,824 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 16:44:55,829 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 70 statements into 1 equivalence classes. [2025-04-26 16:44:55,833 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 70 of 70 statements. [2025-04-26 16:44:55,833 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:55,833 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:44:55,833 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 16:44:55,835 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 70 statements into 1 equivalence classes. [2025-04-26 16:44:55,840 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 70 of 70 statements. [2025-04-26 16:44:55,840 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:55,840 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:44:55,845 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 16:44:55,845 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:44:55,845 INFO L85 PathProgramCache]: Analyzing trace with hash 11459, now seen corresponding path program 5 times [2025-04-26 16:44:55,845 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 16:44:55,845 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [762312006] [2025-04-26 16:44:55,845 INFO L95 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2025-04-26 16:44:55,845 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 16:44:55,849 INFO L108 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 partitioned 2 statements into 1 equivalence classes. [2025-04-26 16:44:55,850 INFO L111 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 16:44:55,850 INFO L114 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2025-04-26 16:44:55,850 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:44:55,850 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 16:44:55,851 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 16:44:55,851 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 16:44:55,851 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:55,851 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:44:55,852 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 16:44:55,853 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:44:55,853 INFO L85 PathProgramCache]: Analyzing trace with hash -724690935, now seen corresponding path program 2 times [2025-04-26 16:44:55,853 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 16:44:55,853 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1929815778] [2025-04-26 16:44:55,853 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-04-26 16:44:55,853 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 16:44:55,859 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 72 statements into 2 equivalence classes. [2025-04-26 16:44:55,868 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 72 of 72 statements. [2025-04-26 16:44:55,868 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-04-26 16:44:55,868 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:44:55,868 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 16:44:55,870 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 72 statements into 1 equivalence classes. [2025-04-26 16:44:55,875 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 72 of 72 statements. [2025-04-26 16:44:55,875 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:55,875 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:44:55,879 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 16:44:55,898 INFO L206 LassoAnalysis]: Preferences: [2025-04-26 16:44:55,898 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-04-26 16:44:55,898 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-04-26 16:44:55,898 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-04-26 16:44:55,898 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2025-04-26 16:44:55,899 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:55,899 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-04-26 16:44:55,899 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-04-26 16:44:55,899 INFO L132 ssoRankerPreferences]: Filename of dumped script: popl20-proofs-counter-add-4-semi-Q67.wvr.c_petrified1_Iteration7_Loop [2025-04-26 16:44:55,899 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-04-26 16:44:55,899 INFO L243 LassoAnalysis]: Starting lasso preprocessing... [2025-04-26 16:44:55,900 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:55,901 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:55,903 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:55,905 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:55,907 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:55,909 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:55,911 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:55,912 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:55,916 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:55,918 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:55,920 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:55,924 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:55,925 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:55,926 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:55,998 INFO L261 LassoAnalysis]: Preprocessing complete. [2025-04-26 16:44:55,998 INFO L367 LassoAnalysis]: Checking for nontermination... [2025-04-26 16:44:55,998 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:55,999 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:56,000 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 16:44:56,002 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 16:44:56,003 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 16:44:56,003 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:56,014 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 16:44:56,014 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 16:44:56,020 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (60)] Ended with exit code 0 [2025-04-26 16:44:56,020 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:56,020 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:56,022 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 16:44:56,023 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 16:44:56,023 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 16:44:56,023 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:56,041 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 16:44:56,041 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 16:44:56,046 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (61)] Ended with exit code 0 [2025-04-26 16:44:56,046 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:56,047 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:56,048 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 16:44:56,049 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 16:44:56,050 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 16:44:56,050 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:56,067 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 16:44:56,067 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 16:44:56,072 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 16:44:56,072 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:56,073 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:56,074 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 16:44:56,075 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 16:44:56,076 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 16:44:56,076 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:56,093 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 16:44:56,094 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 16:44:56,099 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 16:44:56,099 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:56,099 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:56,105 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 16:44:56,106 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 16:44:56,107 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 16:44:56,107 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:56,125 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 16:44:56,125 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 16:44:56,131 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (64)] Forceful destruction successful, exit code 0 [2025-04-26 16:44:56,131 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:56,131 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:56,133 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 16:44:56,133 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 16:44:56,134 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 16:44:56,134 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:56,152 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 16:44:56,152 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 16:44:56,157 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (65)] Forceful destruction successful, exit code 0 [2025-04-26 16:44:56,158 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:56,158 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:56,159 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 16:44:56,160 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 16:44:56,161 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 16:44:56,161 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:56,178 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 16:44:56,178 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 16:44:56,183 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 16:44:56,184 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:56,184 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:56,185 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 16:44:56,186 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 16:44:56,187 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 16:44:56,187 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:56,202 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 16:44:56,202 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:56,202 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:56,204 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 16:44:56,204 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 16:44:56,205 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2025-04-26 16:44:56,205 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:56,264 INFO L407 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2025-04-26 16:44:56,268 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 16:44:56,268 INFO L206 LassoAnalysis]: Preferences: [2025-04-26 16:44:56,269 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-04-26 16:44:56,269 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-04-26 16:44:56,269 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-04-26 16:44:56,269 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-04-26 16:44:56,269 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:56,269 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-04-26 16:44:56,269 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-04-26 16:44:56,269 INFO L132 ssoRankerPreferences]: Filename of dumped script: popl20-proofs-counter-add-4-semi-Q67.wvr.c_petrified1_Iteration7_Loop [2025-04-26 16:44:56,269 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-04-26 16:44:56,269 INFO L243 LassoAnalysis]: Starting lasso preprocessing... [2025-04-26 16:44:56,270 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:56,276 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:56,277 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:56,279 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:56,281 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:56,283 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:56,284 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:56,286 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:56,290 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:56,291 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:56,293 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:56,296 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:56,297 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:56,299 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:56,371 INFO L261 LassoAnalysis]: Preprocessing complete. [2025-04-26 16:44:56,371 INFO L453 LassoAnalysis]: Using template 'affine'. [2025-04-26 16:44:56,371 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:56,371 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:56,374 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 16:44:56,374 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 16:44:56,376 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 16:44:56,387 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:44:56,387 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-04-26 16:44:56,387 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:44:56,387 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:44:56,387 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:44:56,387 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-04-26 16:44:56,387 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-04-26 16:44:56,389 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 16:44:56,395 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (69)] Forceful destruction successful, exit code 0 [2025-04-26 16:44:56,395 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:56,395 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:56,397 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 16:44:56,399 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 16:44:56,400 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 16:44:56,410 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:44:56,410 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:44:56,410 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:44:56,410 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:44:56,412 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 16:44:56,412 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 16:44:56,415 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 16:44:56,421 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (70)] Forceful destruction successful, exit code 0 [2025-04-26 16:44:56,421 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:56,421 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:56,423 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 16:44:56,424 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 16:44:56,425 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 16:44:56,435 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:44:56,435 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:44:56,435 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:44:56,435 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:44:56,436 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 16:44:56,436 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 16:44:56,440 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 16:44:56,446 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (71)] Forceful destruction successful, exit code 0 [2025-04-26 16:44:56,446 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:56,446 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:56,448 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 16:44:56,448 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 16:44:56,450 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 16:44:56,459 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:44:56,459 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:44:56,459 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:44:56,459 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:44:56,460 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 16:44:56,460 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 16:44:56,463 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 16:44:56,468 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 16:44:56,469 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:56,469 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:56,470 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 16:44:56,472 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 16:44:56,472 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 16:44:56,482 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:44:56,482 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:44:56,482 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:44:56,482 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:44:56,483 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 16:44:56,483 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 16:44:56,485 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 16:44:56,490 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 16:44:56,491 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:56,491 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:56,492 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 16:44:56,494 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 16:44:56,494 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 16:44:56,504 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:44:56,504 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:44:56,504 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:44:56,504 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:44:56,505 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 16:44:56,505 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 16:44:56,508 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 16:44:56,514 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (74)] Forceful destruction successful, exit code 0 [2025-04-26 16:44:56,514 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:56,514 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:56,516 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 16:44:56,516 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 16:44:56,517 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 16:44:56,527 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:44:56,527 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:44:56,528 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:44:56,528 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:44:56,528 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 16:44:56,528 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 16:44:56,531 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 16:44:56,535 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 16:44:56,536 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:56,536 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:56,537 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 16:44:56,538 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 16:44:56,538 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 16:44:56,552 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:44:56,552 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-04-26 16:44:56,552 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:44:56,552 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:44:56,552 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:44:56,553 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-04-26 16:44:56,553 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-04-26 16:44:56,554 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-04-26 16:44:56,556 INFO L436 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2025-04-26 16:44:56,556 INFO L437 ModelExtractionUtils]: 1 out of 4 variables were initially zero. Simplification set additionally 0 variables to zero. [2025-04-26 16:44:56,556 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:56,556 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:56,558 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 16:44:56,558 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 16:44:56,559 INFO L436 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-04-26 16:44:56,562 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 16:44:56,562 INFO L439 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2025-04-26 16:44:56,562 INFO L476 LassoAnalysis]: Proved termination. [2025-04-26 16:44:56,562 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 16:44:56,567 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 16:44:56,567 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2025-04-26 16:44:56,575 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:44:56,584 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 70 statements into 1 equivalence classes. [2025-04-26 16:44:56,595 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 70 of 70 statements. [2025-04-26 16:44:56,595 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:56,595 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 16:44:56,595 INFO L256 TraceCheckSpWp]: Trace formula consists of 157 conjuncts, 2 conjuncts are in the unsatisfiable core [2025-04-26 16:44:56,596 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 16:44:56,658 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 16:44:56,658 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 16:44:56,658 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:56,659 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 16:44:56,659 WARN L254 TraceCheckSpWp]: Trace formula consists of 8 conjuncts, 4 conjuncts are in the unsatisfiable core [2025-04-26 16:44:56,659 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 16:44:56,668 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 16:44:56,668 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 16:44:56,668 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 16:44:56,746 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 16:44:56,746 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 16:44:56,747 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 16:44:56,747 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 180 transitions. [2025-04-26 16:44:56,747 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 4 states and 180 transitions. Stem has 70 letters. Loop has 2 letters. [2025-04-26 16:44:56,747 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 16:44:56,747 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 4 states and 180 transitions. Stem has 72 letters. Loop has 2 letters. [2025-04-26 16:44:56,747 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 16:44:56,747 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 4 states and 180 transitions. Stem has 70 letters. Loop has 4 letters. [2025-04-26 16:44:56,747 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 16:44:56,747 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 12138 states and 27577 transitions. [2025-04-26 16:44:56,792 INFO L131 ngComponentsAnalysis]: Automaton has 62 accepting balls. 124 [2025-04-26 16:44:56,816 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 12138 states to 6905 states and 15079 transitions. [2025-04-26 16:44:56,816 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 2514 [2025-04-26 16:44:56,819 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 2812 [2025-04-26 16:44:56,819 INFO L74 IsDeterministic]: Start isDeterministic. Operand 6905 states and 15079 transitions. [2025-04-26 16:44:56,819 INFO L81 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-04-26 16:44:56,819 INFO L218 hiAutomatonCegarLoop]: Abstraction has 6905 states and 15079 transitions. [2025-04-26 16:44:56,824 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 6905 states and 15079 transitions. [2025-04-26 16:44:56,864 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 6905 to 4609. [2025-04-26 16:44:56,868 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 16:44:56,875 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4609 states to 4609 states and 10315 transitions. [2025-04-26 16:44:56,875 INFO L240 hiAutomatonCegarLoop]: Abstraction has 4609 states and 10315 transitions. [2025-04-26 16:44:56,875 INFO L438 stractBuchiCegarLoop]: Abstraction has 4609 states and 10315 transitions. [2025-04-26 16:44:56,875 INFO L340 stractBuchiCegarLoop]: ======== Iteration 8 ============ [2025-04-26 16:44:56,875 INFO L73 BuchiIsEmpty]: Start buchiIsEmpty. Operand 4609 states and 10315 transitions. [2025-04-26 16:44:56,911 INFO L131 ngComponentsAnalysis]: Automaton has 31 accepting balls. 62 [2025-04-26 16:44:56,911 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-04-26 16:44:56,911 INFO L120 BuchiIsEmpty]: Starting construction of run [2025-04-26 16:44:56,912 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 16:44:56,912 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1] [2025-04-26 16:44:56,912 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 16:44:56,912 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 16:44:56,913 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:44:56,913 INFO L85 PathProgramCache]: Analyzing trace with hash -1026140491, now seen corresponding path program 1 times [2025-04-26 16:44:56,913 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 16:44:56,913 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [920946264] [2025-04-26 16:44:56,913 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 16:44:56,913 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 16:44:56,916 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 76 statements into 1 equivalence classes. [2025-04-26 16:44:56,920 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 76 of 76 statements. [2025-04-26 16:44:56,920 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:56,920 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 16:44:57,062 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 16:44:57,062 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-04-26 16:44:57,062 INFO L324 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [920946264] [2025-04-26 16:44:57,062 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [920946264] provided 1 perfect and 0 imperfect interpolant sequences [2025-04-26 16:44:57,062 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-04-26 16:44:57,062 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2025-04-26 16:44:57,062 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [219976888] [2025-04-26 16:44:57,062 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-04-26 16:44:57,062 INFO L757 eck$LassoCheckResult]: stem already infeasible [2025-04-26 16:44:57,062 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:44:57,063 INFO L85 PathProgramCache]: Analyzing trace with hash 11843, now seen corresponding path program 1 times [2025-04-26 16:44:57,063 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 16:44:57,063 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [148239218] [2025-04-26 16:44:57,063 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 16:44:57,063 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 16:44:57,064 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 16:44:57,065 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 16:44:57,065 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:57,065 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:44:57,065 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 16:44:57,066 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 16:44:57,066 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 16:44:57,066 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:57,066 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:44:57,067 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 16:44:57,082 INFO L206 LassoAnalysis]: Preferences: [2025-04-26 16:44:57,082 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-04-26 16:44:57,083 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-04-26 16:44:57,083 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-04-26 16:44:57,083 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2025-04-26 16:44:57,083 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:57,083 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-04-26 16:44:57,083 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-04-26 16:44:57,083 INFO L132 ssoRankerPreferences]: Filename of dumped script: popl20-proofs-counter-add-4-semi-Q67.wvr.c_petrified1_Iteration8_Loop [2025-04-26 16:44:57,083 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-04-26 16:44:57,083 INFO L243 LassoAnalysis]: Starting lasso preprocessing... [2025-04-26 16:44:57,084 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:57,085 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:57,087 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:57,090 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:57,092 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:57,093 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:57,095 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:57,097 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:57,098 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:57,100 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:57,102 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:57,103 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:57,106 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:57,107 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:57,161 INFO L261 LassoAnalysis]: Preprocessing complete. [2025-04-26 16:44:57,161 INFO L367 LassoAnalysis]: Checking for nontermination... [2025-04-26 16:44:57,161 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:57,161 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:57,163 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 16:44:57,163 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 16:44:57,164 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 16:44:57,164 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:57,181 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 16:44:57,181 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 16:44:57,186 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (78)] Ended with exit code 0 [2025-04-26 16:44:57,186 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:57,186 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:57,187 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 16:44:57,188 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 16:44:57,189 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 16:44:57,189 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:57,199 INFO L400 LassoAnalysis]: Proved nontermination for one component. [2025-04-26 16:44:57,199 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 16:44:57,204 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (79)] Ended with exit code 0 [2025-04-26 16:44:57,204 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:57,205 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:57,206 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 16:44:57,207 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 16:44:57,208 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-04-26 16:44:57,208 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:57,224 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 16:44:57,224 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:57,224 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:57,226 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 16:44:57,227 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 16:44:57,228 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2025-04-26 16:44:57,228 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-04-26 16:44:57,291 INFO L407 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2025-04-26 16:44:57,296 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (81)] Ended with exit code 0 [2025-04-26 16:44:57,296 INFO L206 LassoAnalysis]: Preferences: [2025-04-26 16:44:57,296 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-04-26 16:44:57,296 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-04-26 16:44:57,296 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-04-26 16:44:57,296 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-04-26 16:44:57,296 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:57,296 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-04-26 16:44:57,296 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-04-26 16:44:57,296 INFO L132 ssoRankerPreferences]: Filename of dumped script: popl20-proofs-counter-add-4-semi-Q67.wvr.c_petrified1_Iteration8_Loop [2025-04-26 16:44:57,296 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-04-26 16:44:57,296 INFO L243 LassoAnalysis]: Starting lasso preprocessing... [2025-04-26 16:44:57,297 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:57,300 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:57,301 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:57,305 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:57,307 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:57,308 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:57,310 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:57,312 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:57,313 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:57,315 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:57,316 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:57,318 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:57,321 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:57,323 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:44:57,388 INFO L261 LassoAnalysis]: Preprocessing complete. [2025-04-26 16:44:57,388 INFO L453 LassoAnalysis]: Using template 'affine'. [2025-04-26 16:44:57,388 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:57,388 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:57,390 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 16:44:57,390 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 16:44:57,392 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 16:44:57,401 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:44:57,402 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:44:57,402 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:44:57,402 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:44:57,403 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 16:44:57,403 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 16:44:57,405 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 16:44:57,410 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (82)] Ended with exit code 0 [2025-04-26 16:44:57,411 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:57,411 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:57,412 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 16:44:57,413 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 16:44:57,414 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 16:44:57,423 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:44:57,424 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-04-26 16:44:57,424 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:44:57,424 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:44:57,424 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:44:57,424 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-04-26 16:44:57,424 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-04-26 16:44:57,425 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 16:44:57,430 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (83)] Ended with exit code 0 [2025-04-26 16:44:57,431 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:57,431 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:57,432 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 16:44:57,433 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 16:44:57,434 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 16:44:57,444 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:44:57,444 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-04-26 16:44:57,444 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:44:57,444 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:44:57,445 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:44:57,445 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-04-26 16:44:57,445 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-04-26 16:44:57,447 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-04-26 16:44:57,448 INFO L436 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2025-04-26 16:44:57,448 INFO L437 ModelExtractionUtils]: 1 out of 4 variables were initially zero. Simplification set additionally 0 variables to zero. [2025-04-26 16:44:57,448 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:44:57,448 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:44:57,450 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 16:44:57,451 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 16:44:57,451 INFO L436 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-04-26 16:44:57,454 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (85)] Ended with exit code 0 [2025-04-26 16:44:57,454 INFO L439 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2025-04-26 16:44:57,454 INFO L476 LassoAnalysis]: Proved termination. [2025-04-26 16:44:57,455 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 16:44:57,460 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 16:44:57,461 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2025-04-26 16:44:57,469 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:44:57,482 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 76 statements into 1 equivalence classes. [2025-04-26 16:44:57,493 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 76 of 76 statements. [2025-04-26 16:44:57,493 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:57,493 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 16:44:57,494 INFO L256 TraceCheckSpWp]: Trace formula consists of 178 conjuncts, 2 conjuncts are in the unsatisfiable core [2025-04-26 16:44:57,495 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 16:44:57,554 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-04-26 16:44:57,555 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-04-26 16:44:57,555 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:44:57,555 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 16:44:57,555 WARN L254 TraceCheckSpWp]: Trace formula consists of 8 conjuncts, 4 conjuncts are in the unsatisfiable core [2025-04-26 16:44:57,555 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 16:44:57,567 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 16:44:57,567 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 16:44:57,567 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 16:44:57,619 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 16:44:57,620 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 16:44:57,621 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 16:44:57,621 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 138 transitions. [2025-04-26 16:44:57,621 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 4 states and 138 transitions. Stem has 76 letters. Loop has 2 letters. [2025-04-26 16:44:57,621 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 16:44:57,621 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 4 states and 138 transitions. Stem has 78 letters. Loop has 2 letters. [2025-04-26 16:44:57,621 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 16:44:57,621 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 4 states and 138 transitions. Stem has 76 letters. Loop has 4 letters. [2025-04-26 16:44:57,621 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 16:44:57,621 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 7956 states and 18151 transitions. [2025-04-26 16:44:57,650 INFO L131 ngComponentsAnalysis]: Automaton has 0 accepting balls. 0 [2025-04-26 16:44:57,650 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 7956 states to 0 states and 0 transitions. [2025-04-26 16:44:57,650 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 0 [2025-04-26 16:44:57,650 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 0 [2025-04-26 16:44:57,650 INFO L74 IsDeterministic]: Start isDeterministic. Operand 0 states and 0 transitions. [2025-04-26 16:44:57,650 INFO L81 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2025-04-26 16:44:57,650 INFO L218 hiAutomatonCegarLoop]: Abstraction has 0 states and 0 transitions. [2025-04-26 16:44:57,650 INFO L240 hiAutomatonCegarLoop]: Abstraction has 0 states and 0 transitions. [2025-04-26 16:44:57,650 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-04-26 16:44:57,650 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2025-04-26 16:44:57,650 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=50, Unknown=0, NotChecked=0, Total=72 [2025-04-26 16:44:57,651 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 16:44:57,651 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-04-26 16:44:57,651 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2025-04-26 16:44:57,651 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 0 states and 0 transitions. [2025-04-26 16:44:57,651 INFO L131 ngComponentsAnalysis]: Automaton has 0 accepting balls. 0 [2025-04-26 16:44:57,651 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 0 states to 0 states and 0 transitions. [2025-04-26 16:44:57,651 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 0 [2025-04-26 16:44:57,651 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 0 [2025-04-26 16:44:57,651 INFO L74 IsDeterministic]: Start isDeterministic. Operand 0 states and 0 transitions. [2025-04-26 16:44:57,651 INFO L81 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2025-04-26 16:44:57,651 INFO L218 hiAutomatonCegarLoop]: Abstraction has 0 states and 0 transitions. [2025-04-26 16:44:57,651 INFO L240 hiAutomatonCegarLoop]: Abstraction has 0 states and 0 transitions. [2025-04-26 16:44:57,651 INFO L140 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-04-26 16:44:57,651 INFO L438 stractBuchiCegarLoop]: Abstraction has 0 states and 0 transitions. [2025-04-26 16:44:57,651 INFO L340 stractBuchiCegarLoop]: ======== Iteration 9 ============ [2025-04-26 16:44:57,651 INFO L73 BuchiIsEmpty]: Start buchiIsEmpty. Operand 0 states and 0 transitions. [2025-04-26 16:44:57,651 INFO L131 ngComponentsAnalysis]: Automaton has 0 accepting balls. 0 [2025-04-26 16:44:57,651 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty Result is true [2025-04-26 16:44:57,661 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 (2)] Ended with exit code 0 [2025-04-26 16:44:57,662 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer CFG 26.04 04:44:57 BoogieIcfgContainer [2025-04-26 16:44:57,662 INFO L131 PluginConnector]: ------------------------ END BuchiAutomizer---------------------------- [2025-04-26 16:44:57,663 INFO L158 Benchmark]: Toolchain (without parser) took 10665.00ms. Allocated memory was 155.2MB in the beginning and 486.5MB in the end (delta: 331.4MB). Free memory was 108.0MB in the beginning and 225.0MB in the end (delta: -117.0MB). Peak memory consumption was 213.7MB. Max. memory is 8.0GB. [2025-04-26 16:44:57,663 INFO L158 Benchmark]: CDTParser took 0.71ms. Allocated memory is still 167.8MB. Free memory is still 94.9MB. There was no memory consumed. Max. memory is 8.0GB. [2025-04-26 16:44:57,663 INFO L158 Benchmark]: CACSL2BoogieTranslator took 232.21ms. Allocated memory is still 155.2MB. Free memory was 108.0MB in the beginning and 94.2MB in the end (delta: 13.9MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2025-04-26 16:44:57,663 INFO L158 Benchmark]: Boogie Procedure Inliner took 24.03ms. Allocated memory is still 155.2MB. Free memory was 94.2MB in the beginning and 92.0MB in the end (delta: 2.2MB). Peak memory consumption was 4.2MB. Max. memory is 8.0GB. [2025-04-26 16:44:57,663 INFO L158 Benchmark]: Boogie Preprocessor took 22.24ms. Allocated memory is still 155.2MB. Free memory was 92.0MB in the beginning and 91.3MB in the end (delta: 676.9kB). There was no memory consumed. Max. memory is 8.0GB. [2025-04-26 16:44:57,664 INFO L158 Benchmark]: RCFGBuilder took 344.26ms. Allocated memory is still 155.2MB. Free memory was 91.3MB in the beginning and 71.9MB in the end (delta: 19.5MB). Peak memory consumption was 16.8MB. Max. memory is 8.0GB. [2025-04-26 16:44:57,664 INFO L158 Benchmark]: BuchiAutomizer took 10038.74ms. Allocated memory was 155.2MB in the beginning and 486.5MB in the end (delta: 331.4MB). Free memory was 71.9MB in the beginning and 225.0MB in the end (delta: -153.2MB). Peak memory consumption was 180.2MB. Max. memory is 8.0GB. [2025-04-26 16:44:57,665 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.71ms. Allocated memory is still 167.8MB. Free memory is still 94.9MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 232.21ms. Allocated memory is still 155.2MB. Free memory was 108.0MB in the beginning and 94.2MB in the end (delta: 13.9MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * Boogie Procedure Inliner took 24.03ms. Allocated memory is still 155.2MB. Free memory was 94.2MB in the beginning and 92.0MB in the end (delta: 2.2MB). Peak memory consumption was 4.2MB. Max. memory is 8.0GB. * Boogie Preprocessor took 22.24ms. Allocated memory is still 155.2MB. Free memory was 92.0MB in the beginning and 91.3MB in the end (delta: 676.9kB). There was no memory consumed. Max. memory is 8.0GB. * RCFGBuilder took 344.26ms. Allocated memory is still 155.2MB. Free memory was 91.3MB in the beginning and 71.9MB in the end (delta: 19.5MB). Peak memory consumption was 16.8MB. Max. memory is 8.0GB. * BuchiAutomizer took 10038.74ms. Allocated memory was 155.2MB in the beginning and 486.5MB in the end (delta: 331.4MB). Free memory was 71.9MB in the beginning and 225.0MB in the end (delta: -153.2MB). Peak memory consumption was 180.2MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: Timing statistics BüchiAutomizer plugin needed 9.9s and 9 iterations. TraceHistogramMax:4. Analysis of lassos took 5.4s. Construction of modules took 0.4s. Büchi inclusion checks took 2.1s. Highest rank in rank-based complementation 3. Minimization of det autom 2. Minimization of nondet autom 10. Automata minimization 0.6s AutomataMinimizationTime, 10 MinimizatonAttempts, 5240 StatesRemovedByMinimization, 10 NontrivialMinimizations. Non-live state removal took 0.5s 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, 2036 SdHoareTripleChecker+Valid, 0.5s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 2026 mSDsluCounter, 2646 SdHoareTripleChecker+Invalid, 0.4s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 1353 mSDsCounter, 31 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 691 IncrementalHoareTripleChecker+Invalid, 722 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 31 mSolverCounterUnsat, 1293 mSDtfsCounter, 691 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: 23ms VariablesStem: 1 VariablesLoop: 0 DisjunctsStem: 1 DisjunctsLoop: 1 SupportingInvariants: 2 MotzkinApplications: 6 LassoTerminationAnalysisBenchmarks: LassoNonterminationAnalysisSatFixpoint: 23 LassoNonterminationAnalysisSatUnbounded: 1 LassoNonterminationAnalysisUnsat: 8 LassoNonterminationAnalysisUnknown: 0 LassoNonterminationAnalysisTime: 1.1s InitialAbstractionConstructionTime: 0.6s InitialAbstraction: Time to compute Ample Reduction [ms]: 673, 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 16:44:57,678 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...