./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/goblint-regression/28-race_reach_05-lockfuns_racefree.i --full-output -ea --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 03d7b7b3 Calling Ultimate with: /usr/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -ea -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/goblint-regression/28-race_reach_05-lockfuns_racefree.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness.graphml --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 1fe12ce8951e45860142b9cebaa325eef531c18fa917882c03ee5396afb187f5 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 20:41:05,207 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 20:41:05,209 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 20:41:05,237 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 20:41:05,240 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 20:41:05,243 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 20:41:05,245 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 20:41:05,247 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 20:41:05,249 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 20:41:05,252 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 20:41:05,252 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 20:41:05,253 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 20:41:05,253 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 20:41:05,255 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 20:41:05,256 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 20:41:05,257 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 20:41:05,258 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 20:41:05,258 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 20:41:05,262 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 20:41:05,267 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 20:41:05,268 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 20:41:05,269 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 20:41:05,270 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 20:41:05,271 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 20:41:05,276 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 20:41:05,276 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 20:41:05,276 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 20:41:05,278 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 20:41:05,278 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 20:41:05,279 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 20:41:05,279 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 20:41:05,280 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 20:41:05,281 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 20:41:05,281 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 20:41:05,282 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 20:41:05,283 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 20:41:05,283 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 20:41:05,283 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 20:41:05,283 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 20:41:05,284 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 20:41:05,285 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 20:41:05,286 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2022-02-20 20:41:05,306 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 20:41:05,308 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 20:41:05,308 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 20:41:05,308 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 20:41:05,309 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 20:41:05,309 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 20:41:05,309 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 20:41:05,310 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 20:41:05,310 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 20:41:05,310 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 20:41:05,311 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 20:41:05,311 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 20:41:05,311 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 20:41:05,311 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 20:41:05,311 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-02-20 20:41:05,311 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 20:41:05,312 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-02-20 20:41:05,312 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 20:41:05,312 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-02-20 20:41:05,312 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 20:41:05,312 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-02-20 20:41:05,312 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 20:41:05,312 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 20:41:05,313 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 20:41:05,313 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 20:41:05,313 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 20:41:05,313 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 20:41:05,314 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-02-20 20:41:05,314 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 20:41:05,315 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 20:41:05,315 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-02-20 20:41:05,315 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-02-20 20:41:05,315 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-02-20 20:41:05,315 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness.graphml Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! call(reach_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> 1fe12ce8951e45860142b9cebaa325eef531c18fa917882c03ee5396afb187f5 [2022-02-20 20:41:05,496 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 20:41:05,520 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 20:41:05,521 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 20:41:05,522 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 20:41:05,523 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 20:41:05,524 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/goblint-regression/28-race_reach_05-lockfuns_racefree.i [2022-02-20 20:41:05,615 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/8694461b4/824051ed42a64abd932451dcc1d88602/FLAG72b6d7f80 [2022-02-20 20:41:05,994 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 20:41:05,995 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/goblint-regression/28-race_reach_05-lockfuns_racefree.i [2022-02-20 20:41:06,008 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/8694461b4/824051ed42a64abd932451dcc1d88602/FLAG72b6d7f80 [2022-02-20 20:41:06,020 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/8694461b4/824051ed42a64abd932451dcc1d88602 [2022-02-20 20:41:06,022 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 20:41:06,023 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 20:41:06,024 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 20:41:06,024 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 20:41:06,037 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 20:41:06,041 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 08:41:06" (1/1) ... [2022-02-20 20:41:06,041 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@37595417 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:41:06, skipping insertion in model container [2022-02-20 20:41:06,042 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 08:41:06" (1/1) ... [2022-02-20 20:41:06,046 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 20:41:06,066 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 20:41:06,401 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/goblint-regression/28-race_reach_05-lockfuns_racefree.i[30176,30189] [2022-02-20 20:41:06,418 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 20:41:06,426 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 20:41:06,455 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/goblint-regression/28-race_reach_05-lockfuns_racefree.i[30176,30189] [2022-02-20 20:41:06,472 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 20:41:06,502 INFO L208 MainTranslator]: Completed translation [2022-02-20 20:41:06,503 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:41:06 WrapperNode [2022-02-20 20:41:06,503 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 20:41:06,504 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 20:41:06,504 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 20:41:06,504 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 20:41:06,508 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:41:06" (1/1) ... [2022-02-20 20:41:06,529 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:41:06" (1/1) ... [2022-02-20 20:41:06,554 INFO L137 Inliner]: procedures = 172, calls = 33, calls flagged for inlining = 7, calls inlined = 7, statements flattened = 106 [2022-02-20 20:41:06,554 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 20:41:06,555 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 20:41:06,555 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 20:41:06,555 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 20:41:06,560 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:41:06" (1/1) ... [2022-02-20 20:41:06,560 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:41:06" (1/1) ... [2022-02-20 20:41:06,565 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:41:06" (1/1) ... [2022-02-20 20:41:06,565 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:41:06" (1/1) ... [2022-02-20 20:41:06,578 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:41:06" (1/1) ... [2022-02-20 20:41:06,581 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:41:06" (1/1) ... [2022-02-20 20:41:06,587 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:41:06" (1/1) ... [2022-02-20 20:41:06,590 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 20:41:06,592 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 20:41:06,593 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 20:41:06,593 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 20:41:06,594 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:41:06" (1/1) ... [2022-02-20 20:41:06,598 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 20:41:06,607 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 20:41:06,617 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-02-20 20:41:06,639 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-02-20 20:41:06,648 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-02-20 20:41:06,648 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-02-20 20:41:06,649 INFO L130 BoogieDeclarations]: Found specification of procedure #PthreadsMutexLock [2022-02-20 20:41:06,649 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 20:41:06,649 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-02-20 20:41:06,649 INFO L130 BoogieDeclarations]: Found specification of procedure t_fun [2022-02-20 20:41:06,649 INFO L138 BoogieDeclarations]: Found implementation of procedure t_fun [2022-02-20 20:41:06,649 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 20:41:06,649 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-02-20 20:41:06,650 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 20:41:06,650 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 20:41:06,651 WARN L208 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to SingleStatement [2022-02-20 20:41:06,717 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 20:41:06,718 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 20:41:06,854 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 20:41:06,859 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 20:41:06,859 INFO L299 CfgBuilder]: Removed 10 assume(true) statements. [2022-02-20 20:41:06,860 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 08:41:06 BoogieIcfgContainer [2022-02-20 20:41:06,861 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 20:41:06,862 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 20:41:06,862 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 20:41:06,864 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 20:41:06,864 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 08:41:06" (1/3) ... [2022-02-20 20:41:06,865 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3fdb37a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 08:41:06, skipping insertion in model container [2022-02-20 20:41:06,865 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:41:06" (2/3) ... [2022-02-20 20:41:06,865 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3fdb37a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 08:41:06, skipping insertion in model container [2022-02-20 20:41:06,865 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 08:41:06" (3/3) ... [2022-02-20 20:41:06,866 INFO L111 eAbstractionObserver]: Analyzing ICFG 28-race_reach_05-lockfuns_racefree.i [2022-02-20 20:41:06,869 WARN L150 ceAbstractionStarter]: Switching off computation of Hoare annotation because input is a concurrent program [2022-02-20 20:41:06,869 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 20:41:06,869 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-02-20 20:41:06,870 INFO L534 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2022-02-20 20:41:06,912 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#in~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,912 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#in~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,913 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,913 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,913 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#in~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,913 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#in~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,913 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,914 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,914 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,914 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,914 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,915 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,915 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,916 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,916 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,916 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,917 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,917 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,918 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,918 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,918 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,921 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,921 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,921 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,922 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,922 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,922 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,922 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,922 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#res#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,923 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#res#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,923 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#res#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,923 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#res#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,923 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,924 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,924 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,924 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,924 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,925 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,928 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#res#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,928 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,929 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,929 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,929 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,929 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#res#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,929 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,929 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,929 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:06,939 INFO L148 ThreadInstanceAdder]: Constructed 1 joinOtherThreadTransitions. [2022-02-20 20:41:06,972 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 20:41:06,976 INFO L339 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mLoopAccelerationTechnique=FAST_UPR [2022-02-20 20:41:06,976 INFO L340 AbstractCegarLoop]: Starting to check reachability of 2 error locations. [2022-02-20 20:41:06,984 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 106 places, 115 transitions, 238 flow [2022-02-20 20:41:07,040 INFO L129 PetriNetUnfolder]: 17/156 cut-off events. [2022-02-20 20:41:07,040 INFO L130 PetriNetUnfolder]: For 1/1 co-relation queries the response was YES. [2022-02-20 20:41:07,049 INFO L84 FinitePrefix]: Finished finitePrefix Result has 162 conditions, 156 events. 17/156 cut-off events. For 1/1 co-relation queries the response was YES. Maximal size of possible extension queue 10. Compared 385 event pairs, 0 based on Foata normal form. 0/134 useless extension candidates. Maximal degree in co-relation 79. Up to 4 conditions per place. [2022-02-20 20:41:07,049 INFO L82 GeneralOperation]: Start removeDead. Operand has 106 places, 115 transitions, 238 flow [2022-02-20 20:41:07,052 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 102 places, 110 transitions, 225 flow [2022-02-20 20:41:07,083 INFO L129 PetriNetUnfolder]: 4/86 cut-off events. [2022-02-20 20:41:07,083 INFO L130 PetriNetUnfolder]: For 0/0 co-relation queries the response was YES. [2022-02-20 20:41:07,084 INFO L246 CegarLoopForPetriNet]: Found error trace [2022-02-20 20:41:07,084 INFO L254 CegarLoopForPetriNet]: trace 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] [2022-02-20 20:41:07,085 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATION] === [2022-02-20 20:41:07,088 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:41:07,089 INFO L85 PathProgramCache]: Analyzing trace with hash 438148196, now seen corresponding path program 1 times [2022-02-20 20:41:07,095 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:41:07,096 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1145882060] [2022-02-20 20:41:07,096 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:41:07,097 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:41:07,216 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:41:07,307 INFO L290 TraceCheckUtils]: 0: Hoare triple {109#true} [270] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {109#true} is VALID [2022-02-20 20:41:07,308 INFO L290 TraceCheckUtils]: 1: Hoare triple {109#true} [201] L-1-->L-1-1: Formula: (and (= |v_#NULL.base_1| 0) (= |v_#NULL.offset_1| 0)) InVars {} OutVars{#NULL.offset=|v_#NULL.offset_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {109#true} is VALID [2022-02-20 20:41:07,308 INFO L290 TraceCheckUtils]: 2: Hoare triple {109#true} [274] L-1-1-->L-1-2: Formula: (= (select |v_#valid_1| 0) 0) InVars {#valid=|v_#valid_1|} OutVars{#valid=|v_#valid_1|} AuxVars[] AssignedVars[] {109#true} is VALID [2022-02-20 20:41:07,309 INFO L290 TraceCheckUtils]: 3: Hoare triple {109#true} [277] L-1-2-->L690: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {109#true} is VALID [2022-02-20 20:41:07,309 INFO L290 TraceCheckUtils]: 4: Hoare triple {109#true} [216] L690-->L690-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[] {109#true} is VALID [2022-02-20 20:41:07,309 INFO L290 TraceCheckUtils]: 5: Hoare triple {109#true} [177] L690-1-->L690-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[] {109#true} is VALID [2022-02-20 20:41:07,310 INFO L290 TraceCheckUtils]: 6: Hoare triple {109#true} [190] L690-2-->L690-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[] {109#true} is VALID [2022-02-20 20:41:07,311 INFO L290 TraceCheckUtils]: 7: Hoare triple {109#true} [257] L690-3-->L690-4: Formula: (and (= (select |v_#length_2| 2) 13) (= (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[] {109#true} is VALID [2022-02-20 20:41:07,311 INFO L290 TraceCheckUtils]: 8: Hoare triple {109#true} [225] L690-4-->L696: Formula: (and (= 3 |v_~#__global_lock~0.base_1|) (= |v_~#__global_lock~0.offset_1| 0)) InVars {} OutVars{~#__global_lock~0.base=|v_~#__global_lock~0.base_1|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_1|} AuxVars[] AssignedVars[~#__global_lock~0.offset, ~#__global_lock~0.base] {109#true} is VALID [2022-02-20 20:41:07,313 INFO L290 TraceCheckUtils]: 9: Hoare triple {109#true} [207] L696-->L696-1: Formula: (and (= (select |v_#length_3| 3) 24) (= (select |v_#valid_4| 3) 1)) InVars {#length=|v_#length_3|, #valid=|v_#valid_4|} OutVars{#length=|v_#length_3|, #valid=|v_#valid_4|} AuxVars[] AssignedVars[] {109#true} is VALID [2022-02-20 20:41:07,314 INFO L290 TraceCheckUtils]: 10: Hoare triple {109#true} [258] L696-1-->L696-2: Formula: (= (select (select |v_#memory_int_3| |v_~#__global_lock~0.base_2|) |v_~#__global_lock~0.offset_2|) 0) InVars {#memory_int=|v_#memory_int_3|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_2|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_2|} OutVars{#memory_int=|v_#memory_int_3|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_2|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_2|} AuxVars[] AssignedVars[] {109#true} is VALID [2022-02-20 20:41:07,314 INFO L290 TraceCheckUtils]: 11: Hoare triple {109#true} [184] L696-2-->L696-3: Formula: (= (select (select |v_#memory_int_4| |v_~#__global_lock~0.base_3|) (+ |v_~#__global_lock~0.offset_3| 4)) 0) InVars {#memory_int=|v_#memory_int_4|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_3|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_3|} OutVars{#memory_int=|v_#memory_int_4|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_3|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_3|} AuxVars[] AssignedVars[] {109#true} is VALID [2022-02-20 20:41:07,315 INFO L290 TraceCheckUtils]: 12: Hoare triple {109#true} [280] L696-3-->L696-4: Formula: (= (select (select |v_#memory_int_5| |v_~#__global_lock~0.base_4|) (+ |v_~#__global_lock~0.offset_4| 8)) 0) InVars {#memory_int=|v_#memory_int_5|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_4|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_4|} OutVars{#memory_int=|v_#memory_int_5|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_4|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_4|} AuxVars[] AssignedVars[] {109#true} is VALID [2022-02-20 20:41:07,315 INFO L290 TraceCheckUtils]: 13: Hoare triple {109#true} [263] L696-4-->L696-5: Formula: (= (select (select |v_#memory_int_6| |v_~#__global_lock~0.base_5|) (+ |v_~#__global_lock~0.offset_5| 12)) 0) InVars {#memory_int=|v_#memory_int_6|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_5|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_5|} OutVars{#memory_int=|v_#memory_int_6|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_5|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_5|} AuxVars[] AssignedVars[] {109#true} is VALID [2022-02-20 20:41:07,316 INFO L290 TraceCheckUtils]: 14: Hoare triple {109#true} [211] L696-5-->L696-6: Formula: (= (select (select |v_#memory_int_7| |v_~#__global_lock~0.base_6|) (+ 16 |v_~#__global_lock~0.offset_6|)) 0) InVars {#memory_int=|v_#memory_int_7|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_6|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_6|} OutVars{#memory_int=|v_#memory_int_7|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_6|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_6|} AuxVars[] AssignedVars[] {109#true} is VALID [2022-02-20 20:41:07,316 INFO L290 TraceCheckUtils]: 15: Hoare triple {109#true} [220] L696-6-->L698: Formula: (= v_~global~0_1 0) InVars {} OutVars{~global~0=v_~global~0_1} AuxVars[] AssignedVars[~global~0] {109#true} is VALID [2022-02-20 20:41:07,316 INFO L290 TraceCheckUtils]: 16: Hoare triple {109#true} [247] L698-->L698-1: Formula: (and (= 4 |v_~#mutex~0.base_1|) (= |v_~#mutex~0.offset_1| 0)) InVars {} OutVars{~#mutex~0.base=|v_~#mutex~0.base_1|, ~#mutex~0.offset=|v_~#mutex~0.offset_1|} AuxVars[] AssignedVars[~#mutex~0.base, ~#mutex~0.offset] {109#true} is VALID [2022-02-20 20:41:07,317 INFO L290 TraceCheckUtils]: 17: Hoare triple {109#true} [245] L698-1-->L698-2: Formula: (and (= (select |v_#length_4| 4) 24) (= (select |v_#valid_5| 4) 1)) InVars {#length=|v_#length_4|, #valid=|v_#valid_5|} OutVars{#length=|v_#length_4|, #valid=|v_#valid_5|} AuxVars[] AssignedVars[] {109#true} is VALID [2022-02-20 20:41:07,317 INFO L290 TraceCheckUtils]: 18: Hoare triple {109#true} [268] L698-2-->L698-3: Formula: (= (select (select |v_#memory_int_8| |v_~#mutex~0.base_2|) |v_~#mutex~0.offset_2|) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_2|, #memory_int=|v_#memory_int_8|, ~#mutex~0.base=|v_~#mutex~0.base_2|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_2|, #memory_int=|v_#memory_int_8|, ~#mutex~0.base=|v_~#mutex~0.base_2|} AuxVars[] AssignedVars[] {109#true} is VALID [2022-02-20 20:41:07,317 INFO L290 TraceCheckUtils]: 19: Hoare triple {109#true} [191] L698-3-->L698-4: Formula: (= (select (select |v_#memory_int_9| |v_~#mutex~0.base_3|) (+ |v_~#mutex~0.offset_3| 4)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_3|, #memory_int=|v_#memory_int_9|, ~#mutex~0.base=|v_~#mutex~0.base_3|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_3|, #memory_int=|v_#memory_int_9|, ~#mutex~0.base=|v_~#mutex~0.base_3|} AuxVars[] AssignedVars[] {109#true} is VALID [2022-02-20 20:41:07,317 INFO L290 TraceCheckUtils]: 20: Hoare triple {109#true} [246] L698-4-->L698-5: Formula: (= (select (select |v_#memory_int_10| |v_~#mutex~0.base_4|) (+ |v_~#mutex~0.offset_4| 8)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_4|, #memory_int=|v_#memory_int_10|, ~#mutex~0.base=|v_~#mutex~0.base_4|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_4|, #memory_int=|v_#memory_int_10|, ~#mutex~0.base=|v_~#mutex~0.base_4|} AuxVars[] AssignedVars[] {109#true} is VALID [2022-02-20 20:41:07,318 INFO L290 TraceCheckUtils]: 21: Hoare triple {109#true} [272] L698-5-->L698-6: Formula: (= (select (select |v_#memory_int_11| |v_~#mutex~0.base_5|) (+ |v_~#mutex~0.offset_5| 12)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_5|, #memory_int=|v_#memory_int_11|, ~#mutex~0.base=|v_~#mutex~0.base_5|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_5|, #memory_int=|v_#memory_int_11|, ~#mutex~0.base=|v_~#mutex~0.base_5|} AuxVars[] AssignedVars[] {109#true} is VALID [2022-02-20 20:41:07,318 INFO L290 TraceCheckUtils]: 22: Hoare triple {109#true} [269] L698-6-->L698-7: Formula: (= (select (select |v_#memory_int_12| |v_~#mutex~0.base_6|) (+ |v_~#mutex~0.offset_6| 16)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_6|, #memory_int=|v_#memory_int_12|, ~#mutex~0.base=|v_~#mutex~0.base_6|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_6|, #memory_int=|v_#memory_int_12|, ~#mutex~0.base=|v_~#mutex~0.base_6|} AuxVars[] AssignedVars[] {109#true} is VALID [2022-02-20 20:41:07,319 INFO L290 TraceCheckUtils]: 23: Hoare triple {109#true} [182] L698-7-->L-1-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {109#true} is VALID [2022-02-20 20:41:07,320 INFO L290 TraceCheckUtils]: 24: Hoare triple {109#true} [279] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {109#true} is VALID [2022-02-20 20:41:07,326 INFO L290 TraceCheckUtils]: 25: Hoare triple {109#true} [206] L-1-4-->L-1-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1] {109#true} is VALID [2022-02-20 20:41:07,327 INFO L290 TraceCheckUtils]: 26: Hoare triple {109#true} [179] L-1-5-->L712: Formula: true InVars {} OutVars{ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_1|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_1|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_1|, ULTIMATE.start_main_#t~mem13#1=|v_ULTIMATE.start_main_#t~mem13#1_1|, ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_1|, ULTIMATE.start_main_~#t_ids~0#1.base=|v_ULTIMATE.start_main_~#t_ids~0#1.base_1|, ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_1|, ULTIMATE.start_main_#t~post12#1=|v_ULTIMATE.start_main_#t~post12#1_1|, ULTIMATE.start_main_#t~post8#1=|v_ULTIMATE.start_main_#t~post8#1_1|, ULTIMATE.start_main_~#t_ids~0#1.offset=|v_ULTIMATE.start_main_~#t_ids~0#1.offset_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet11#1, ULTIMATE.start_main_#t~mem13#1, ULTIMATE.start_main_#t~nondet10#1, ULTIMATE.start_main_~#t_ids~0#1.base, ULTIMATE.start_main_#t~pre9#1, ULTIMATE.start_main_#t~post12#1, ULTIMATE.start_main_#t~post8#1, ULTIMATE.start_main_~#t_ids~0#1.offset] {109#true} is VALID [2022-02-20 20:41:07,327 INFO L290 TraceCheckUtils]: 27: Hoare triple {109#true} [227] L712-->L712-1: Formula: (and (= (store |v_#length_6| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2| 40000) |v_#length_5|) (= |v_#valid_6| (store |v_#valid_7| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2| 1)) (= |v_ULTIMATE.start_main_~#t_ids~0#1.offset_2| 0) (not (= |v_ULTIMATE.start_main_~#t_ids~0#1.base_2| 0)) (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2|) (= (select |v_#valid_7| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_6|, #valid=|v_#valid_7|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, ULTIMATE.start_main_~#t_ids~0#1.offset=|v_ULTIMATE.start_main_~#t_ids~0#1.offset_2|, #length=|v_#length_5|, ULTIMATE.start_main_~#t_ids~0#1.base=|v_ULTIMATE.start_main_~#t_ids~0#1.base_2|, #valid=|v_#valid_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#t_ids~0#1.base, #valid, ULTIMATE.start_main_~#t_ids~0#1.offset, #length] {109#true} is VALID [2022-02-20 20:41:07,328 INFO L290 TraceCheckUtils]: 28: Hoare triple {109#true} [233] L712-1-->L712-13: Formula: (= |v_ULTIMATE.start_main_~i~0#1_2| 0) InVars {} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {111#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 20:41:07,329 INFO L290 TraceCheckUtils]: 29: Hoare triple {111#(= |ULTIMATE.start_main_~i~0#1| 0)} [175] L712-13-->L712-14: Formula: (not (< |v_ULTIMATE.start_main_~i~0#1_3| 10000)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_3|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_3|} AuxVars[] AssignedVars[] {110#false} is VALID [2022-02-20 20:41:07,329 INFO L290 TraceCheckUtils]: 30: Hoare triple {110#false} [262] L712-14-->L713: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {110#false} is VALID [2022-02-20 20:41:07,329 INFO L290 TraceCheckUtils]: 31: Hoare triple {110#false} [250] L713-->L700: Formula: true InVars {} OutVars{ULTIMATE.start_lock_#t~nondet3#1=|v_ULTIMATE.start_lock_#t~nondet3#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_lock_#t~nondet3#1] {110#false} is VALID [2022-02-20 20:41:07,329 INFO L290 TraceCheckUtils]: 32: Hoare triple {110#false} [219] L700-->L700-1: Formula: (let ((.cse0 (select |v_#pthreadsMutex_2| |v_~#mutex~0.base_7|))) (and (= |v_ULTIMATE.start_lock_#t~nondet3#1_2| 0) (= |v_#pthreadsMutex_1| (store |v_#pthreadsMutex_2| |v_~#mutex~0.base_7| (store .cse0 |v_~#mutex~0.offset_7| 1))) (= (select .cse0 |v_~#mutex~0.offset_7|) 0))) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_7|, #pthreadsMutex=|v_#pthreadsMutex_2|, ~#mutex~0.base=|v_~#mutex~0.base_7|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_7|, #pthreadsMutex=|v_#pthreadsMutex_1|, ~#mutex~0.base=|v_~#mutex~0.base_7|, ULTIMATE.start_lock_#t~nondet3#1=|v_ULTIMATE.start_lock_#t~nondet3#1_2|} AuxVars[] AssignedVars[#pthreadsMutex, ULTIMATE.start_lock_#t~nondet3#1] {110#false} is VALID [2022-02-20 20:41:07,330 INFO L290 TraceCheckUtils]: 33: Hoare triple {110#false} [226] L700-1-->L699: Formula: true InVars {} OutVars{ULTIMATE.start_lock_#t~nondet3#1=|v_ULTIMATE.start_lock_#t~nondet3#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_lock_#t~nondet3#1] {110#false} is VALID [2022-02-20 20:41:07,330 INFO L290 TraceCheckUtils]: 34: Hoare triple {110#false} [203] L699-->L714-7: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {110#false} is VALID [2022-02-20 20:41:07,331 INFO L290 TraceCheckUtils]: 35: Hoare triple {110#false} [221] L714-7-->L714-1: Formula: (let ((.cse0 (select |v_#pthreadsMutex_4| |v_~#__global_lock~0.base_7|))) (and (= |v_ULTIMATE.start_main_#t~nondet11#1_2| 0) (= (select .cse0 |v_~#__global_lock~0.offset_7|) 0) (= |v_#pthreadsMutex_3| (store |v_#pthreadsMutex_4| |v_~#__global_lock~0.base_7| (store .cse0 |v_~#__global_lock~0.offset_7| 1))))) InVars {#pthreadsMutex=|v_#pthreadsMutex_4|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_7|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_7|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_3|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_2|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_7|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_7|} AuxVars[] AssignedVars[#pthreadsMutex, ULTIMATE.start_main_#t~nondet11#1] {110#false} is VALID [2022-02-20 20:41:07,331 INFO L290 TraceCheckUtils]: 36: Hoare triple {110#false} [187] L714-1-->L714-2: 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] {110#false} is VALID [2022-02-20 20:41:07,332 INFO L290 TraceCheckUtils]: 37: Hoare triple {110#false} [237] L714-2-->L714-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {110#false} is VALID [2022-02-20 20:41:07,332 INFO L290 TraceCheckUtils]: 38: Hoare triple {110#false} [173] L714-3-->L714-4: Formula: (= (ite (= v_~global~0_2 0) 1 0) |v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_1|) InVars {~global~0=v_~global~0_2} OutVars{ULTIMATE.start___VERIFIER_assert_#in~cond#1=|v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_1|, ~global~0=v_~global~0_2} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_#in~cond#1] {110#false} is VALID [2022-02-20 20:41:07,332 INFO L290 TraceCheckUtils]: 39: Hoare triple {110#false} [193] L714-4-->L691: Formula: true InVars {} OutVars{ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_1|} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_~cond#1] {110#false} is VALID [2022-02-20 20:41:07,332 INFO L290 TraceCheckUtils]: 40: Hoare triple {110#false} [199] L691-->L691-1: Formula: (= |v_ULTIMATE.start___VERIFIER_assert_~cond#1_2| |v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_2|) InVars {ULTIMATE.start___VERIFIER_assert_#in~cond#1=|v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_2|} OutVars{ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_2|, ULTIMATE.start___VERIFIER_assert_#in~cond#1=|v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_2|} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_~cond#1] {110#false} is VALID [2022-02-20 20:41:07,333 INFO L290 TraceCheckUtils]: 41: Hoare triple {110#false} [283] L691-1-->L691-2: Formula: (= |v_ULTIMATE.start___VERIFIER_assert_~cond#1_3| 0) InVars {ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_3|} OutVars{ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_3|} AuxVars[] AssignedVars[] {110#false} is VALID [2022-02-20 20:41:07,333 INFO L290 TraceCheckUtils]: 42: Hoare triple {110#false} [195] L691-2-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {110#false} is VALID [2022-02-20 20:41:07,334 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 20:41:07,335 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 20:41:07,335 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1145882060] [2022-02-20 20:41:07,335 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1145882060] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 20:41:07,335 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 20:41:07,336 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 20:41:07,338 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1408770276] [2022-02-20 20:41:07,339 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 20:41:07,350 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 14.333333333333334) internal successors, (43), 3 states have internal predecessors, (43), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 43 [2022-02-20 20:41:07,351 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 20:41:07,354 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 14.333333333333334) internal successors, (43), 3 states have internal predecessors, (43), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:07,415 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:41:07,416 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 20:41:07,416 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 20:41:07,436 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 20:41:07,437 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 20:41:07,441 INFO L499 CegarLoopForPetriNet]: Number of universal loopers: 94 out of 115 [2022-02-20 20:41:07,446 INFO L92 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 102 places, 110 transitions, 225 flow. Second operand has 3 states, 3 states have (on average 95.0) internal successors, (285), 3 states have internal predecessors, (285), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:07,446 INFO L101 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-02-20 20:41:07,446 INFO L102 encePairwiseOnDemand]: Number of universal subtrahend loopers: 94 of 115 [2022-02-20 20:41:07,448 INFO L74 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-02-20 20:41:07,510 INFO L129 PetriNetUnfolder]: 0/102 cut-off events. [2022-02-20 20:41:07,511 INFO L130 PetriNetUnfolder]: For 0/0 co-relation queries the response was YES. [2022-02-20 20:41:07,512 INFO L84 FinitePrefix]: Finished finitePrefix Result has 118 conditions, 102 events. 0/102 cut-off events. For 0/0 co-relation queries the response was YES. Maximal size of possible extension queue 3. Compared 88 event pairs, 0 based on Foata normal form. 18/117 useless extension candidates. Maximal degree in co-relation 0. Up to 6 conditions per place. [2022-02-20 20:41:07,513 INFO L132 encePairwiseOnDemand]: 101/115 looper letters, 8 selfloop transitions, 2 changer transitions 17/100 dead transitions. [2022-02-20 20:41:07,513 INFO L138 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 103 places, 100 transitions, 225 flow [2022-02-20 20:41:07,513 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 20:41:07,515 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2022-02-20 20:41:07,537 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 311 transitions. [2022-02-20 20:41:07,538 INFO L544 CegarLoopForPetriNet]: DFA transition density 0.9014492753623189 [2022-02-20 20:41:07,539 INFO L72 ComplementDD]: Start complementDD. Operand 3 states and 311 transitions. [2022-02-20 20:41:07,539 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3 states and 311 transitions. [2022-02-20 20:41:07,539 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-02-20 20:41:07,541 INFO L117 ReachableStatesCopy]: Start reachableStatesCopy. Operand 3 states and 311 transitions. [2022-02-20 20:41:07,548 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends has 4 states, 3 states have (on average 103.66666666666667) internal successors, (311), 3 states have internal predecessors, (311), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:07,551 INFO L131 ReachableStatesCopy]: Finished reachableStatesCopy Result has 4 states, 4 states have (on average 115.0) internal successors, (460), 4 states have internal predecessors, (460), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:07,551 INFO L81 ComplementDD]: Finished complementDD. Result has 4 states, 4 states have (on average 115.0) internal successors, (460), 4 states have internal predecessors, (460), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:07,553 INFO L186 Difference]: Start difference. First operand has 102 places, 110 transitions, 225 flow. Second operand 3 states and 311 transitions. [2022-02-20 20:41:07,553 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 103 places, 100 transitions, 225 flow [2022-02-20 20:41:07,556 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 103 places, 100 transitions, 225 flow, removed 0 selfloop flow, removed 0 redundant places. [2022-02-20 20:41:07,560 INFO L242 Difference]: Finished difference. Result has 104 places, 81 transitions, 175 flow [2022-02-20 20:41:07,562 INFO L317 CegarLoopForPetriNet]: {PETRI_ALPHABET=115, PETRI_DIFFERENCE_MINUEND_FLOW=201, PETRI_DIFFERENCE_MINUEND_PLACES=101, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=98, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=96, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=175, PETRI_PLACES=104, PETRI_TRANSITIONS=81} [2022-02-20 20:41:07,565 INFO L334 CegarLoopForPetriNet]: 102 programPoint places, 2 predicate places. [2022-02-20 20:41:07,566 INFO L111 iNet2FiniteAutomaton]: Start petriNet2FiniteAutomaton. Operand has 104 places, 81 transitions, 175 flow [2022-02-20 20:41:07,597 INFO L133 iNet2FiniteAutomaton]: Finished petriNet2FiniteAutomaton. Result has 734 states, 732 states have (on average 1.8866120218579234) internal successors, (1381), 733 states have internal predecessors, (1381), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:07,598 INFO L78 Accepts]: Start accepts. Automaton has has 734 states, 732 states have (on average 1.8866120218579234) internal successors, (1381), 733 states have internal predecessors, (1381), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 43 [2022-02-20 20:41:07,599 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 20:41:07,599 INFO L470 AbstractCegarLoop]: Abstraction has has 104 places, 81 transitions, 175 flow [2022-02-20 20:41:07,599 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 95.0) internal successors, (285), 3 states have internal predecessors, (285), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:07,599 INFO L246 CegarLoopForPetriNet]: Found error trace [2022-02-20 20:41:07,600 INFO L254 CegarLoopForPetriNet]: trace histogram [2, 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] [2022-02-20 20:41:07,600 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-20 20:41:07,600 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0INUSE_VIOLATION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATION] === [2022-02-20 20:41:07,601 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:41:07,601 INFO L85 PathProgramCache]: Analyzing trace with hash -1685952027, now seen corresponding path program 1 times [2022-02-20 20:41:07,601 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:41:07,601 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [678810284] [2022-02-20 20:41:07,602 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:41:07,602 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:41:07,659 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-02-20 20:41:07,659 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-02-20 20:41:07,680 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-02-20 20:41:07,707 INFO L138 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-02-20 20:41:07,708 INFO L628 BasicCegarLoop]: Counterexample is feasible [2022-02-20 20:41:07,709 INFO L764 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0INUSE_VIOLATION (1 of 2 remaining) [2022-02-20 20:41:07,710 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 2 remaining) [2022-02-20 20:41:07,711 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-02-20 20:41:07,713 INFO L732 BasicCegarLoop]: Path program histogram: [1, 1] [2022-02-20 20:41:07,714 WARN L235 ceAbstractionStarter]: 1 thread instances were not sufficient, I will increase this number and restart the analysis [2022-02-20 20:41:07,715 INFO L534 ceAbstractionStarter]: Constructing petrified ICFG for 2 thread instances. [2022-02-20 20:41:07,755 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_#in~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,756 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_#in~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,756 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,756 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,756 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_#in~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,756 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_#in~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,756 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,756 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,757 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,757 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,757 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,757 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,761 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,761 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,762 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,762 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,762 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,762 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,762 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,763 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,763 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,763 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,763 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,763 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,763 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,764 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,764 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,764 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,764 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_#res#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,764 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_#res#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,765 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_#res#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,765 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_#res#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,765 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,765 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,765 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,765 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,766 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,766 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,766 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_#in~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,767 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_#in~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,767 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,768 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,768 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_#in~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,768 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_#in~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,768 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,768 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,768 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,768 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,769 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,769 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,769 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,769 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,769 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,770 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,770 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,770 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,770 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,770 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,770 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,771 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,771 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,771 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,771 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,771 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,772 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,772 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,772 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_#res#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,772 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_#res#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,772 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_#res#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,773 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_#res#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,773 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,773 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,773 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,773 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,774 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,774 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,775 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,775 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,775 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_#res#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,775 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,776 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,776 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,776 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,776 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,776 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of2ForFork0_#res#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,777 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_#res#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,777 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,777 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,777 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,778 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,778 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,778 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,778 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,778 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of2ForFork0_#res#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:07,787 INFO L148 ThreadInstanceAdder]: Constructed 2 joinOtherThreadTransitions. [2022-02-20 20:41:07,793 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 20:41:07,795 INFO L339 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mLoopAccelerationTechnique=FAST_UPR [2022-02-20 20:41:07,796 INFO L340 AbstractCegarLoop]: Starting to check reachability of 2 error locations. [2022-02-20 20:41:07,797 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 136 places, 150 transitions, 318 flow [2022-02-20 20:41:07,833 INFO L129 PetriNetUnfolder]: 31/257 cut-off events. [2022-02-20 20:41:07,834 INFO L130 PetriNetUnfolder]: For 6/6 co-relation queries the response was YES. [2022-02-20 20:41:07,839 INFO L84 FinitePrefix]: Finished finitePrefix Result has 271 conditions, 257 events. 31/257 cut-off events. For 6/6 co-relation queries the response was YES. Maximal size of possible extension queue 11. Compared 809 event pairs, 0 based on Foata normal form. 0/219 useless extension candidates. Maximal degree in co-relation 158. Up to 8 conditions per place. [2022-02-20 20:41:07,839 INFO L82 GeneralOperation]: Start removeDead. Operand has 136 places, 150 transitions, 318 flow [2022-02-20 20:41:07,842 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 136 places, 150 transitions, 318 flow [2022-02-20 20:41:07,849 INFO L129 PetriNetUnfolder]: 6/94 cut-off events. [2022-02-20 20:41:07,850 INFO L130 PetriNetUnfolder]: For 1/1 co-relation queries the response was YES. [2022-02-20 20:41:07,850 INFO L246 CegarLoopForPetriNet]: Found error trace [2022-02-20 20:41:07,850 INFO L254 CegarLoopForPetriNet]: trace 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] [2022-02-20 20:41:07,851 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATION] === [2022-02-20 20:41:07,851 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:41:07,851 INFO L85 PathProgramCache]: Analyzing trace with hash -390354118, now seen corresponding path program 1 times [2022-02-20 20:41:07,851 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:41:07,852 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1047609430] [2022-02-20 20:41:07,852 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:41:07,853 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:41:07,888 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:41:07,948 INFO L290 TraceCheckUtils]: 0: Hoare triple {139#true} [420] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {139#true} is VALID [2022-02-20 20:41:07,948 INFO L290 TraceCheckUtils]: 1: Hoare triple {139#true} [351] L-1-->L-1-1: Formula: (and (= |v_#NULL.base_1| 0) (= |v_#NULL.offset_1| 0)) InVars {} OutVars{#NULL.offset=|v_#NULL.offset_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {139#true} is VALID [2022-02-20 20:41:07,948 INFO L290 TraceCheckUtils]: 2: Hoare triple {139#true} [424] L-1-1-->L-1-2: Formula: (= (select |v_#valid_1| 0) 0) InVars {#valid=|v_#valid_1|} OutVars{#valid=|v_#valid_1|} AuxVars[] AssignedVars[] {139#true} is VALID [2022-02-20 20:41:07,949 INFO L290 TraceCheckUtils]: 3: Hoare triple {139#true} [427] L-1-2-->L690: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {139#true} is VALID [2022-02-20 20:41:07,949 INFO L290 TraceCheckUtils]: 4: Hoare triple {139#true} [366] L690-->L690-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[] {139#true} is VALID [2022-02-20 20:41:07,949 INFO L290 TraceCheckUtils]: 5: Hoare triple {139#true} [327] L690-1-->L690-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[] {139#true} is VALID [2022-02-20 20:41:07,949 INFO L290 TraceCheckUtils]: 6: Hoare triple {139#true} [340] L690-2-->L690-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[] {139#true} is VALID [2022-02-20 20:41:07,949 INFO L290 TraceCheckUtils]: 7: Hoare triple {139#true} [407] L690-3-->L690-4: Formula: (and (= (select |v_#length_2| 2) 13) (= (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[] {139#true} is VALID [2022-02-20 20:41:07,950 INFO L290 TraceCheckUtils]: 8: Hoare triple {139#true} [375] L690-4-->L696: Formula: (and (= 3 |v_~#__global_lock~0.base_1|) (= |v_~#__global_lock~0.offset_1| 0)) InVars {} OutVars{~#__global_lock~0.base=|v_~#__global_lock~0.base_1|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_1|} AuxVars[] AssignedVars[~#__global_lock~0.offset, ~#__global_lock~0.base] {139#true} is VALID [2022-02-20 20:41:07,950 INFO L290 TraceCheckUtils]: 9: Hoare triple {139#true} [357] L696-->L696-1: Formula: (and (= (select |v_#length_3| 3) 24) (= (select |v_#valid_4| 3) 1)) InVars {#length=|v_#length_3|, #valid=|v_#valid_4|} OutVars{#length=|v_#length_3|, #valid=|v_#valid_4|} AuxVars[] AssignedVars[] {139#true} is VALID [2022-02-20 20:41:07,950 INFO L290 TraceCheckUtils]: 10: Hoare triple {139#true} [408] L696-1-->L696-2: Formula: (= (select (select |v_#memory_int_3| |v_~#__global_lock~0.base_2|) |v_~#__global_lock~0.offset_2|) 0) InVars {#memory_int=|v_#memory_int_3|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_2|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_2|} OutVars{#memory_int=|v_#memory_int_3|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_2|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_2|} AuxVars[] AssignedVars[] {139#true} is VALID [2022-02-20 20:41:07,950 INFO L290 TraceCheckUtils]: 11: Hoare triple {139#true} [334] L696-2-->L696-3: Formula: (= (select (select |v_#memory_int_4| |v_~#__global_lock~0.base_3|) (+ |v_~#__global_lock~0.offset_3| 4)) 0) InVars {#memory_int=|v_#memory_int_4|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_3|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_3|} OutVars{#memory_int=|v_#memory_int_4|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_3|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_3|} AuxVars[] AssignedVars[] {139#true} is VALID [2022-02-20 20:41:07,950 INFO L290 TraceCheckUtils]: 12: Hoare triple {139#true} [430] L696-3-->L696-4: Formula: (= (select (select |v_#memory_int_5| |v_~#__global_lock~0.base_4|) (+ |v_~#__global_lock~0.offset_4| 8)) 0) InVars {#memory_int=|v_#memory_int_5|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_4|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_4|} OutVars{#memory_int=|v_#memory_int_5|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_4|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_4|} AuxVars[] AssignedVars[] {139#true} is VALID [2022-02-20 20:41:07,951 INFO L290 TraceCheckUtils]: 13: Hoare triple {139#true} [413] L696-4-->L696-5: Formula: (= (select (select |v_#memory_int_6| |v_~#__global_lock~0.base_5|) (+ |v_~#__global_lock~0.offset_5| 12)) 0) InVars {#memory_int=|v_#memory_int_6|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_5|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_5|} OutVars{#memory_int=|v_#memory_int_6|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_5|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_5|} AuxVars[] AssignedVars[] {139#true} is VALID [2022-02-20 20:41:07,951 INFO L290 TraceCheckUtils]: 14: Hoare triple {139#true} [361] L696-5-->L696-6: Formula: (= (select (select |v_#memory_int_7| |v_~#__global_lock~0.base_6|) (+ 16 |v_~#__global_lock~0.offset_6|)) 0) InVars {#memory_int=|v_#memory_int_7|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_6|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_6|} OutVars{#memory_int=|v_#memory_int_7|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_6|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_6|} AuxVars[] AssignedVars[] {139#true} is VALID [2022-02-20 20:41:07,951 INFO L290 TraceCheckUtils]: 15: Hoare triple {139#true} [370] L696-6-->L698: Formula: (= v_~global~0_1 0) InVars {} OutVars{~global~0=v_~global~0_1} AuxVars[] AssignedVars[~global~0] {139#true} is VALID [2022-02-20 20:41:07,951 INFO L290 TraceCheckUtils]: 16: Hoare triple {139#true} [397] L698-->L698-1: Formula: (and (= 4 |v_~#mutex~0.base_1|) (= |v_~#mutex~0.offset_1| 0)) InVars {} OutVars{~#mutex~0.base=|v_~#mutex~0.base_1|, ~#mutex~0.offset=|v_~#mutex~0.offset_1|} AuxVars[] AssignedVars[~#mutex~0.base, ~#mutex~0.offset] {139#true} is VALID [2022-02-20 20:41:07,952 INFO L290 TraceCheckUtils]: 17: Hoare triple {139#true} [395] L698-1-->L698-2: Formula: (and (= (select |v_#length_4| 4) 24) (= (select |v_#valid_5| 4) 1)) InVars {#length=|v_#length_4|, #valid=|v_#valid_5|} OutVars{#length=|v_#length_4|, #valid=|v_#valid_5|} AuxVars[] AssignedVars[] {139#true} is VALID [2022-02-20 20:41:07,955 INFO L290 TraceCheckUtils]: 18: Hoare triple {139#true} [418] L698-2-->L698-3: Formula: (= (select (select |v_#memory_int_8| |v_~#mutex~0.base_2|) |v_~#mutex~0.offset_2|) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_2|, #memory_int=|v_#memory_int_8|, ~#mutex~0.base=|v_~#mutex~0.base_2|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_2|, #memory_int=|v_#memory_int_8|, ~#mutex~0.base=|v_~#mutex~0.base_2|} AuxVars[] AssignedVars[] {139#true} is VALID [2022-02-20 20:41:07,955 INFO L290 TraceCheckUtils]: 19: Hoare triple {139#true} [341] L698-3-->L698-4: Formula: (= (select (select |v_#memory_int_9| |v_~#mutex~0.base_3|) (+ |v_~#mutex~0.offset_3| 4)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_3|, #memory_int=|v_#memory_int_9|, ~#mutex~0.base=|v_~#mutex~0.base_3|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_3|, #memory_int=|v_#memory_int_9|, ~#mutex~0.base=|v_~#mutex~0.base_3|} AuxVars[] AssignedVars[] {139#true} is VALID [2022-02-20 20:41:07,955 INFO L290 TraceCheckUtils]: 20: Hoare triple {139#true} [396] L698-4-->L698-5: Formula: (= (select (select |v_#memory_int_10| |v_~#mutex~0.base_4|) (+ |v_~#mutex~0.offset_4| 8)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_4|, #memory_int=|v_#memory_int_10|, ~#mutex~0.base=|v_~#mutex~0.base_4|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_4|, #memory_int=|v_#memory_int_10|, ~#mutex~0.base=|v_~#mutex~0.base_4|} AuxVars[] AssignedVars[] {139#true} is VALID [2022-02-20 20:41:07,955 INFO L290 TraceCheckUtils]: 21: Hoare triple {139#true} [422] L698-5-->L698-6: Formula: (= (select (select |v_#memory_int_11| |v_~#mutex~0.base_5|) (+ |v_~#mutex~0.offset_5| 12)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_5|, #memory_int=|v_#memory_int_11|, ~#mutex~0.base=|v_~#mutex~0.base_5|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_5|, #memory_int=|v_#memory_int_11|, ~#mutex~0.base=|v_~#mutex~0.base_5|} AuxVars[] AssignedVars[] {139#true} is VALID [2022-02-20 20:41:07,955 INFO L290 TraceCheckUtils]: 22: Hoare triple {139#true} [419] L698-6-->L698-7: Formula: (= (select (select |v_#memory_int_12| |v_~#mutex~0.base_6|) (+ |v_~#mutex~0.offset_6| 16)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_6|, #memory_int=|v_#memory_int_12|, ~#mutex~0.base=|v_~#mutex~0.base_6|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_6|, #memory_int=|v_#memory_int_12|, ~#mutex~0.base=|v_~#mutex~0.base_6|} AuxVars[] AssignedVars[] {139#true} is VALID [2022-02-20 20:41:07,956 INFO L290 TraceCheckUtils]: 23: Hoare triple {139#true} [332] L698-7-->L-1-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {139#true} is VALID [2022-02-20 20:41:07,956 INFO L290 TraceCheckUtils]: 24: Hoare triple {139#true} [429] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {139#true} is VALID [2022-02-20 20:41:07,956 INFO L290 TraceCheckUtils]: 25: Hoare triple {139#true} [356] L-1-4-->L-1-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1] {139#true} is VALID [2022-02-20 20:41:07,956 INFO L290 TraceCheckUtils]: 26: Hoare triple {139#true} [329] L-1-5-->L712: Formula: true InVars {} OutVars{ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_1|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_1|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_1|, ULTIMATE.start_main_#t~mem13#1=|v_ULTIMATE.start_main_#t~mem13#1_1|, ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_1|, ULTIMATE.start_main_~#t_ids~0#1.base=|v_ULTIMATE.start_main_~#t_ids~0#1.base_1|, ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_1|, ULTIMATE.start_main_#t~post12#1=|v_ULTIMATE.start_main_#t~post12#1_1|, ULTIMATE.start_main_#t~post8#1=|v_ULTIMATE.start_main_#t~post8#1_1|, ULTIMATE.start_main_~#t_ids~0#1.offset=|v_ULTIMATE.start_main_~#t_ids~0#1.offset_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet11#1, ULTIMATE.start_main_#t~mem13#1, ULTIMATE.start_main_#t~nondet10#1, ULTIMATE.start_main_~#t_ids~0#1.base, ULTIMATE.start_main_#t~pre9#1, ULTIMATE.start_main_#t~post12#1, ULTIMATE.start_main_#t~post8#1, ULTIMATE.start_main_~#t_ids~0#1.offset] {139#true} is VALID [2022-02-20 20:41:07,957 INFO L290 TraceCheckUtils]: 27: Hoare triple {139#true} [377] L712-->L712-1: Formula: (and (= (store |v_#length_6| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2| 40000) |v_#length_5|) (= |v_#valid_6| (store |v_#valid_7| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2| 1)) (= |v_ULTIMATE.start_main_~#t_ids~0#1.offset_2| 0) (not (= |v_ULTIMATE.start_main_~#t_ids~0#1.base_2| 0)) (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2|) (= (select |v_#valid_7| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_6|, #valid=|v_#valid_7|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, ULTIMATE.start_main_~#t_ids~0#1.offset=|v_ULTIMATE.start_main_~#t_ids~0#1.offset_2|, #length=|v_#length_5|, ULTIMATE.start_main_~#t_ids~0#1.base=|v_ULTIMATE.start_main_~#t_ids~0#1.base_2|, #valid=|v_#valid_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#t_ids~0#1.base, #valid, ULTIMATE.start_main_~#t_ids~0#1.offset, #length] {139#true} is VALID [2022-02-20 20:41:07,957 INFO L290 TraceCheckUtils]: 28: Hoare triple {139#true} [383] L712-1-->L712-13: Formula: (= |v_ULTIMATE.start_main_~i~0#1_2| 0) InVars {} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {141#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 20:41:07,958 INFO L290 TraceCheckUtils]: 29: Hoare triple {141#(= |ULTIMATE.start_main_~i~0#1| 0)} [325] L712-13-->L712-14: Formula: (not (< |v_ULTIMATE.start_main_~i~0#1_3| 10000)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_3|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_3|} AuxVars[] AssignedVars[] {140#false} is VALID [2022-02-20 20:41:07,958 INFO L290 TraceCheckUtils]: 30: Hoare triple {140#false} [412] L712-14-->L713: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {140#false} is VALID [2022-02-20 20:41:07,958 INFO L290 TraceCheckUtils]: 31: Hoare triple {140#false} [400] L713-->L700: Formula: true InVars {} OutVars{ULTIMATE.start_lock_#t~nondet3#1=|v_ULTIMATE.start_lock_#t~nondet3#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_lock_#t~nondet3#1] {140#false} is VALID [2022-02-20 20:41:07,959 INFO L290 TraceCheckUtils]: 32: Hoare triple {140#false} [369] L700-->L700-1: Formula: (let ((.cse0 (select |v_#pthreadsMutex_2| |v_~#mutex~0.base_7|))) (and (= |v_ULTIMATE.start_lock_#t~nondet3#1_2| 0) (= |v_#pthreadsMutex_1| (store |v_#pthreadsMutex_2| |v_~#mutex~0.base_7| (store .cse0 |v_~#mutex~0.offset_7| 1))) (= (select .cse0 |v_~#mutex~0.offset_7|) 0))) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_7|, #pthreadsMutex=|v_#pthreadsMutex_2|, ~#mutex~0.base=|v_~#mutex~0.base_7|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_7|, #pthreadsMutex=|v_#pthreadsMutex_1|, ~#mutex~0.base=|v_~#mutex~0.base_7|, ULTIMATE.start_lock_#t~nondet3#1=|v_ULTIMATE.start_lock_#t~nondet3#1_2|} AuxVars[] AssignedVars[#pthreadsMutex, ULTIMATE.start_lock_#t~nondet3#1] {140#false} is VALID [2022-02-20 20:41:07,959 INFO L290 TraceCheckUtils]: 33: Hoare triple {140#false} [376] L700-1-->L699: Formula: true InVars {} OutVars{ULTIMATE.start_lock_#t~nondet3#1=|v_ULTIMATE.start_lock_#t~nondet3#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_lock_#t~nondet3#1] {140#false} is VALID [2022-02-20 20:41:07,963 INFO L290 TraceCheckUtils]: 34: Hoare triple {140#false} [353] L699-->L714-7: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {140#false} is VALID [2022-02-20 20:41:07,963 INFO L290 TraceCheckUtils]: 35: Hoare triple {140#false} [371] L714-7-->L714-1: Formula: (let ((.cse0 (select |v_#pthreadsMutex_4| |v_~#__global_lock~0.base_7|))) (and (= |v_ULTIMATE.start_main_#t~nondet11#1_2| 0) (= (select .cse0 |v_~#__global_lock~0.offset_7|) 0) (= |v_#pthreadsMutex_3| (store |v_#pthreadsMutex_4| |v_~#__global_lock~0.base_7| (store .cse0 |v_~#__global_lock~0.offset_7| 1))))) InVars {#pthreadsMutex=|v_#pthreadsMutex_4|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_7|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_7|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_3|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_2|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_7|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_7|} AuxVars[] AssignedVars[#pthreadsMutex, ULTIMATE.start_main_#t~nondet11#1] {140#false} is VALID [2022-02-20 20:41:07,963 INFO L290 TraceCheckUtils]: 36: Hoare triple {140#false} [337] L714-1-->L714-2: 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] {140#false} is VALID [2022-02-20 20:41:07,963 INFO L290 TraceCheckUtils]: 37: Hoare triple {140#false} [387] L714-2-->L714-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {140#false} is VALID [2022-02-20 20:41:07,963 INFO L290 TraceCheckUtils]: 38: Hoare triple {140#false} [323] L714-3-->L714-4: Formula: (= (ite (= v_~global~0_2 0) 1 0) |v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_1|) InVars {~global~0=v_~global~0_2} OutVars{ULTIMATE.start___VERIFIER_assert_#in~cond#1=|v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_1|, ~global~0=v_~global~0_2} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_#in~cond#1] {140#false} is VALID [2022-02-20 20:41:07,964 INFO L290 TraceCheckUtils]: 39: Hoare triple {140#false} [343] L714-4-->L691: Formula: true InVars {} OutVars{ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_1|} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_~cond#1] {140#false} is VALID [2022-02-20 20:41:07,964 INFO L290 TraceCheckUtils]: 40: Hoare triple {140#false} [349] L691-->L691-1: Formula: (= |v_ULTIMATE.start___VERIFIER_assert_~cond#1_2| |v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_2|) InVars {ULTIMATE.start___VERIFIER_assert_#in~cond#1=|v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_2|} OutVars{ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_2|, ULTIMATE.start___VERIFIER_assert_#in~cond#1=|v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_2|} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_~cond#1] {140#false} is VALID [2022-02-20 20:41:07,964 INFO L290 TraceCheckUtils]: 41: Hoare triple {140#false} [433] L691-1-->L691-2: Formula: (= |v_ULTIMATE.start___VERIFIER_assert_~cond#1_3| 0) InVars {ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_3|} OutVars{ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_3|} AuxVars[] AssignedVars[] {140#false} is VALID [2022-02-20 20:41:07,964 INFO L290 TraceCheckUtils]: 42: Hoare triple {140#false} [345] L691-2-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {140#false} is VALID [2022-02-20 20:41:07,965 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 20:41:07,965 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 20:41:07,965 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1047609430] [2022-02-20 20:41:07,965 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1047609430] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 20:41:07,965 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 20:41:07,965 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 20:41:07,966 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1697216139] [2022-02-20 20:41:07,966 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 20:41:07,966 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 14.333333333333334) internal successors, (43), 3 states have internal predecessors, (43), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 43 [2022-02-20 20:41:07,970 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 20:41:07,970 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 14.333333333333334) internal successors, (43), 3 states have internal predecessors, (43), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:08,012 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:41:08,013 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 20:41:08,013 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 20:41:08,014 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 20:41:08,014 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 20:41:08,014 INFO L499 CegarLoopForPetriNet]: Number of universal loopers: 121 out of 150 [2022-02-20 20:41:08,015 INFO L92 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 136 places, 150 transitions, 318 flow. Second operand has 3 states, 3 states have (on average 122.0) internal successors, (366), 3 states have internal predecessors, (366), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:08,015 INFO L101 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-02-20 20:41:08,015 INFO L102 encePairwiseOnDemand]: Number of universal subtrahend loopers: 121 of 150 [2022-02-20 20:41:08,015 INFO L74 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-02-20 20:41:08,080 INFO L129 PetriNetUnfolder]: 2/204 cut-off events. [2022-02-20 20:41:08,081 INFO L130 PetriNetUnfolder]: For 20/31 co-relation queries the response was YES. [2022-02-20 20:41:08,081 INFO L84 FinitePrefix]: Finished finitePrefix Result has 239 conditions, 204 events. 2/204 cut-off events. For 20/31 co-relation queries the response was YES. Maximal size of possible extension queue 6. Compared 468 event pairs, 0 based on Foata normal form. 65/261 useless extension candidates. Maximal degree in co-relation 132. Up to 16 conditions per place. [2022-02-20 20:41:08,082 INFO L132 encePairwiseOnDemand]: 130/150 looper letters, 11 selfloop transitions, 2 changer transitions 23/136 dead transitions. [2022-02-20 20:41:08,082 INFO L138 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 137 places, 136 transitions, 320 flow [2022-02-20 20:41:08,082 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 20:41:08,083 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2022-02-20 20:41:08,087 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 403 transitions. [2022-02-20 20:41:08,087 INFO L544 CegarLoopForPetriNet]: DFA transition density 0.8955555555555555 [2022-02-20 20:41:08,087 INFO L72 ComplementDD]: Start complementDD. Operand 3 states and 403 transitions. [2022-02-20 20:41:08,088 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3 states and 403 transitions. [2022-02-20 20:41:08,088 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-02-20 20:41:08,088 INFO L117 ReachableStatesCopy]: Start reachableStatesCopy. Operand 3 states and 403 transitions. [2022-02-20 20:41:08,089 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends has 4 states, 3 states have (on average 134.33333333333334) internal successors, (403), 3 states have internal predecessors, (403), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:08,090 INFO L131 ReachableStatesCopy]: Finished reachableStatesCopy Result has 4 states, 4 states have (on average 150.0) internal successors, (600), 4 states have internal predecessors, (600), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:08,090 INFO L81 ComplementDD]: Finished complementDD. Result has 4 states, 4 states have (on average 150.0) internal successors, (600), 4 states have internal predecessors, (600), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:08,090 INFO L186 Difference]: Start difference. First operand has 136 places, 150 transitions, 318 flow. Second operand 3 states and 403 transitions. [2022-02-20 20:41:08,090 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 137 places, 136 transitions, 320 flow [2022-02-20 20:41:08,094 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 137 places, 136 transitions, 320 flow, removed 0 selfloop flow, removed 0 redundant places. [2022-02-20 20:41:08,097 INFO L242 Difference]: Finished difference. Result has 138 places, 110 transitions, 242 flow [2022-02-20 20:41:08,097 INFO L317 CegarLoopForPetriNet]: {PETRI_ALPHABET=150, PETRI_DIFFERENCE_MINUEND_FLOW=282, PETRI_DIFFERENCE_MINUEND_PLACES=135, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=132, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=130, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=242, PETRI_PLACES=138, PETRI_TRANSITIONS=110} [2022-02-20 20:41:08,098 INFO L334 CegarLoopForPetriNet]: 136 programPoint places, 2 predicate places. [2022-02-20 20:41:08,098 INFO L111 iNet2FiniteAutomaton]: Start petriNet2FiniteAutomaton. Operand has 138 places, 110 transitions, 242 flow [2022-02-20 20:41:08,499 INFO L133 iNet2FiniteAutomaton]: Finished petriNet2FiniteAutomaton. Result has 20306 states, 20303 states have (on average 2.8552430675269664) internal successors, (57970), 20305 states have internal predecessors, (57970), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:08,552 INFO L78 Accepts]: Start accepts. Automaton has has 20306 states, 20303 states have (on average 2.8552430675269664) internal successors, (57970), 20305 states have internal predecessors, (57970), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 43 [2022-02-20 20:41:08,553 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 20:41:08,553 INFO L470 AbstractCegarLoop]: Abstraction has has 138 places, 110 transitions, 242 flow [2022-02-20 20:41:08,553 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 122.0) internal successors, (366), 3 states have internal predecessors, (366), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:08,554 INFO L246 CegarLoopForPetriNet]: Found error trace [2022-02-20 20:41:08,554 INFO L254 CegarLoopForPetriNet]: trace 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] [2022-02-20 20:41:08,554 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-02-20 20:41:08,559 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATION] === [2022-02-20 20:41:08,560 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:41:08,560 INFO L85 PathProgramCache]: Analyzing trace with hash -993521947, now seen corresponding path program 1 times [2022-02-20 20:41:08,560 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:41:08,560 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1214190889] [2022-02-20 20:41:08,560 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:41:08,560 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:41:08,601 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:41:08,656 INFO L290 TraceCheckUtils]: 0: Hoare triple {20451#true} [420] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:08,657 INFO L290 TraceCheckUtils]: 1: Hoare triple {20451#true} [351] L-1-->L-1-1: Formula: (and (= |v_#NULL.base_1| 0) (= |v_#NULL.offset_1| 0)) InVars {} OutVars{#NULL.offset=|v_#NULL.offset_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {20451#true} is VALID [2022-02-20 20:41:08,658 INFO L290 TraceCheckUtils]: 2: Hoare triple {20451#true} [424] L-1-1-->L-1-2: Formula: (= (select |v_#valid_1| 0) 0) InVars {#valid=|v_#valid_1|} OutVars{#valid=|v_#valid_1|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:08,658 INFO L290 TraceCheckUtils]: 3: Hoare triple {20451#true} [427] L-1-2-->L690: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:08,658 INFO L290 TraceCheckUtils]: 4: Hoare triple {20451#true} [366] L690-->L690-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[] {20451#true} is VALID [2022-02-20 20:41:08,658 INFO L290 TraceCheckUtils]: 5: Hoare triple {20451#true} [327] L690-1-->L690-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[] {20451#true} is VALID [2022-02-20 20:41:08,659 INFO L290 TraceCheckUtils]: 6: Hoare triple {20451#true} [340] L690-2-->L690-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[] {20451#true} is VALID [2022-02-20 20:41:08,659 INFO L290 TraceCheckUtils]: 7: Hoare triple {20451#true} [407] L690-3-->L690-4: Formula: (and (= (select |v_#length_2| 2) 13) (= (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[] {20451#true} is VALID [2022-02-20 20:41:08,659 INFO L290 TraceCheckUtils]: 8: Hoare triple {20451#true} [375] L690-4-->L696: Formula: (and (= 3 |v_~#__global_lock~0.base_1|) (= |v_~#__global_lock~0.offset_1| 0)) InVars {} OutVars{~#__global_lock~0.base=|v_~#__global_lock~0.base_1|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_1|} AuxVars[] AssignedVars[~#__global_lock~0.offset, ~#__global_lock~0.base] {20451#true} is VALID [2022-02-20 20:41:08,659 INFO L290 TraceCheckUtils]: 9: Hoare triple {20451#true} [357] L696-->L696-1: Formula: (and (= (select |v_#length_3| 3) 24) (= (select |v_#valid_4| 3) 1)) InVars {#length=|v_#length_3|, #valid=|v_#valid_4|} OutVars{#length=|v_#length_3|, #valid=|v_#valid_4|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:08,659 INFO L290 TraceCheckUtils]: 10: Hoare triple {20451#true} [408] L696-1-->L696-2: Formula: (= (select (select |v_#memory_int_3| |v_~#__global_lock~0.base_2|) |v_~#__global_lock~0.offset_2|) 0) InVars {#memory_int=|v_#memory_int_3|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_2|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_2|} OutVars{#memory_int=|v_#memory_int_3|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_2|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_2|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:08,660 INFO L290 TraceCheckUtils]: 11: Hoare triple {20451#true} [334] L696-2-->L696-3: Formula: (= (select (select |v_#memory_int_4| |v_~#__global_lock~0.base_3|) (+ |v_~#__global_lock~0.offset_3| 4)) 0) InVars {#memory_int=|v_#memory_int_4|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_3|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_3|} OutVars{#memory_int=|v_#memory_int_4|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_3|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_3|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:08,660 INFO L290 TraceCheckUtils]: 12: Hoare triple {20451#true} [430] L696-3-->L696-4: Formula: (= (select (select |v_#memory_int_5| |v_~#__global_lock~0.base_4|) (+ |v_~#__global_lock~0.offset_4| 8)) 0) InVars {#memory_int=|v_#memory_int_5|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_4|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_4|} OutVars{#memory_int=|v_#memory_int_5|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_4|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_4|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:08,660 INFO L290 TraceCheckUtils]: 13: Hoare triple {20451#true} [413] L696-4-->L696-5: Formula: (= (select (select |v_#memory_int_6| |v_~#__global_lock~0.base_5|) (+ |v_~#__global_lock~0.offset_5| 12)) 0) InVars {#memory_int=|v_#memory_int_6|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_5|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_5|} OutVars{#memory_int=|v_#memory_int_6|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_5|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_5|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:08,660 INFO L290 TraceCheckUtils]: 14: Hoare triple {20451#true} [361] L696-5-->L696-6: Formula: (= (select (select |v_#memory_int_7| |v_~#__global_lock~0.base_6|) (+ 16 |v_~#__global_lock~0.offset_6|)) 0) InVars {#memory_int=|v_#memory_int_7|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_6|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_6|} OutVars{#memory_int=|v_#memory_int_7|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_6|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_6|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:08,661 INFO L290 TraceCheckUtils]: 15: Hoare triple {20451#true} [370] L696-6-->L698: Formula: (= v_~global~0_1 0) InVars {} OutVars{~global~0=v_~global~0_1} AuxVars[] AssignedVars[~global~0] {20451#true} is VALID [2022-02-20 20:41:08,661 INFO L290 TraceCheckUtils]: 16: Hoare triple {20451#true} [397] L698-->L698-1: Formula: (and (= 4 |v_~#mutex~0.base_1|) (= |v_~#mutex~0.offset_1| 0)) InVars {} OutVars{~#mutex~0.base=|v_~#mutex~0.base_1|, ~#mutex~0.offset=|v_~#mutex~0.offset_1|} AuxVars[] AssignedVars[~#mutex~0.base, ~#mutex~0.offset] {20451#true} is VALID [2022-02-20 20:41:08,661 INFO L290 TraceCheckUtils]: 17: Hoare triple {20451#true} [395] L698-1-->L698-2: Formula: (and (= (select |v_#length_4| 4) 24) (= (select |v_#valid_5| 4) 1)) InVars {#length=|v_#length_4|, #valid=|v_#valid_5|} OutVars{#length=|v_#length_4|, #valid=|v_#valid_5|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:08,661 INFO L290 TraceCheckUtils]: 18: Hoare triple {20451#true} [418] L698-2-->L698-3: Formula: (= (select (select |v_#memory_int_8| |v_~#mutex~0.base_2|) |v_~#mutex~0.offset_2|) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_2|, #memory_int=|v_#memory_int_8|, ~#mutex~0.base=|v_~#mutex~0.base_2|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_2|, #memory_int=|v_#memory_int_8|, ~#mutex~0.base=|v_~#mutex~0.base_2|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:08,661 INFO L290 TraceCheckUtils]: 19: Hoare triple {20451#true} [341] L698-3-->L698-4: Formula: (= (select (select |v_#memory_int_9| |v_~#mutex~0.base_3|) (+ |v_~#mutex~0.offset_3| 4)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_3|, #memory_int=|v_#memory_int_9|, ~#mutex~0.base=|v_~#mutex~0.base_3|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_3|, #memory_int=|v_#memory_int_9|, ~#mutex~0.base=|v_~#mutex~0.base_3|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:08,663 INFO L290 TraceCheckUtils]: 20: Hoare triple {20451#true} [396] L698-4-->L698-5: Formula: (= (select (select |v_#memory_int_10| |v_~#mutex~0.base_4|) (+ |v_~#mutex~0.offset_4| 8)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_4|, #memory_int=|v_#memory_int_10|, ~#mutex~0.base=|v_~#mutex~0.base_4|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_4|, #memory_int=|v_#memory_int_10|, ~#mutex~0.base=|v_~#mutex~0.base_4|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:08,664 INFO L290 TraceCheckUtils]: 21: Hoare triple {20451#true} [422] L698-5-->L698-6: Formula: (= (select (select |v_#memory_int_11| |v_~#mutex~0.base_5|) (+ |v_~#mutex~0.offset_5| 12)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_5|, #memory_int=|v_#memory_int_11|, ~#mutex~0.base=|v_~#mutex~0.base_5|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_5|, #memory_int=|v_#memory_int_11|, ~#mutex~0.base=|v_~#mutex~0.base_5|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:08,664 INFO L290 TraceCheckUtils]: 22: Hoare triple {20451#true} [419] L698-6-->L698-7: Formula: (= (select (select |v_#memory_int_12| |v_~#mutex~0.base_6|) (+ |v_~#mutex~0.offset_6| 16)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_6|, #memory_int=|v_#memory_int_12|, ~#mutex~0.base=|v_~#mutex~0.base_6|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_6|, #memory_int=|v_#memory_int_12|, ~#mutex~0.base=|v_~#mutex~0.base_6|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:08,664 INFO L290 TraceCheckUtils]: 23: Hoare triple {20451#true} [332] L698-7-->L-1-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:08,664 INFO L290 TraceCheckUtils]: 24: Hoare triple {20451#true} [429] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:08,665 INFO L290 TraceCheckUtils]: 25: Hoare triple {20451#true} [356] L-1-4-->L-1-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1] {20451#true} is VALID [2022-02-20 20:41:08,665 INFO L290 TraceCheckUtils]: 26: Hoare triple {20451#true} [329] L-1-5-->L712: Formula: true InVars {} OutVars{ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_1|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_1|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_1|, ULTIMATE.start_main_#t~mem13#1=|v_ULTIMATE.start_main_#t~mem13#1_1|, ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_1|, ULTIMATE.start_main_~#t_ids~0#1.base=|v_ULTIMATE.start_main_~#t_ids~0#1.base_1|, ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_1|, ULTIMATE.start_main_#t~post12#1=|v_ULTIMATE.start_main_#t~post12#1_1|, ULTIMATE.start_main_#t~post8#1=|v_ULTIMATE.start_main_#t~post8#1_1|, ULTIMATE.start_main_~#t_ids~0#1.offset=|v_ULTIMATE.start_main_~#t_ids~0#1.offset_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet11#1, ULTIMATE.start_main_#t~mem13#1, ULTIMATE.start_main_#t~nondet10#1, ULTIMATE.start_main_~#t_ids~0#1.base, ULTIMATE.start_main_#t~pre9#1, ULTIMATE.start_main_#t~post12#1, ULTIMATE.start_main_#t~post8#1, ULTIMATE.start_main_~#t_ids~0#1.offset] {20451#true} is VALID [2022-02-20 20:41:08,665 INFO L290 TraceCheckUtils]: 27: Hoare triple {20451#true} [377] L712-->L712-1: Formula: (and (= (store |v_#length_6| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2| 40000) |v_#length_5|) (= |v_#valid_6| (store |v_#valid_7| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2| 1)) (= |v_ULTIMATE.start_main_~#t_ids~0#1.offset_2| 0) (not (= |v_ULTIMATE.start_main_~#t_ids~0#1.base_2| 0)) (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2|) (= (select |v_#valid_7| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_6|, #valid=|v_#valid_7|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, ULTIMATE.start_main_~#t_ids~0#1.offset=|v_ULTIMATE.start_main_~#t_ids~0#1.offset_2|, #length=|v_#length_5|, ULTIMATE.start_main_~#t_ids~0#1.base=|v_ULTIMATE.start_main_~#t_ids~0#1.base_2|, #valid=|v_#valid_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#t_ids~0#1.base, #valid, ULTIMATE.start_main_~#t_ids~0#1.offset, #length] {20451#true} is VALID [2022-02-20 20:41:08,667 INFO L290 TraceCheckUtils]: 28: Hoare triple {20451#true} [383] L712-1-->L712-13: Formula: (= |v_ULTIMATE.start_main_~i~0#1_2| 0) InVars {} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {20453#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 20:41:08,667 INFO L290 TraceCheckUtils]: 29: Hoare triple {20453#(= |ULTIMATE.start_main_~i~0#1| 0)} [326] L712-13-->L712-4: Formula: (< |v_ULTIMATE.start_main_~i~0#1_4| 10000) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_4|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_4|} AuxVars[] AssignedVars[] {20453#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 20:41:08,668 INFO L290 TraceCheckUtils]: 30: Hoare triple {20453#(= |ULTIMATE.start_main_~i~0#1| 0)} [344] L712-4-->L712-5: Formula: (= |v_ULTIMATE.start_main_#t~pre9#1_2| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre9#1] {20453#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 20:41:08,669 INFO L290 TraceCheckUtils]: 31: Hoare triple {20453#(= |ULTIMATE.start_main_~i~0#1| 0)} [362] L712-5-->L712-6: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] {20453#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 20:41:08,669 INFO L290 TraceCheckUtils]: 32: Hoare triple {20453#(= |ULTIMATE.start_main_~i~0#1| 0)} [367] L712-6-->L712-7: Formula: (= |v_#memory_int_13| (store |v_#memory_int_14| |v_ULTIMATE.start_main_~#t_ids~0#1.base_3| (store (select |v_#memory_int_14| |v_ULTIMATE.start_main_~#t_ids~0#1.base_3|) (+ |v_ULTIMATE.start_main_~#t_ids~0#1.offset_3| (* |v_ULTIMATE.start_main_~i~0#1_5| 4)) |v_ULTIMATE.start_main_#t~pre9#1_3|))) InVars {#memory_int=|v_#memory_int_14|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t_ids~0#1.offset=|v_ULTIMATE.start_main_~#t_ids~0#1.offset_3|, ULTIMATE.start_main_~#t_ids~0#1.base=|v_ULTIMATE.start_main_~#t_ids~0#1.base_3|, ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_3|} OutVars{#memory_int=|v_#memory_int_13|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t_ids~0#1.offset=|v_ULTIMATE.start_main_~#t_ids~0#1.offset_3|, ULTIMATE.start_main_~#t_ids~0#1.base=|v_ULTIMATE.start_main_~#t_ids~0#1.base_3|, ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_3|} AuxVars[] AssignedVars[#memory_int] {20453#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 20:41:08,676 INFO L290 TraceCheckUtils]: 33: Hoare triple {20453#(= |ULTIMATE.start_main_~i~0#1| 0)} [503] L712-7-->t_funENTRY: Formula: (and (= |v_t_funThread1of2ForFork0_#in~arg#1.base_4| 0) (= |v_t_funThread1of2ForFork0_#in~arg#1.offset_4| 0) (= |v_ULTIMATE.start_main_#t~pre9#1_8| v_t_funThread1of2ForFork0_thidvar0_2)) InVars {ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_8|} OutVars{t_funThread1of2ForFork0_#in~arg#1.base=|v_t_funThread1of2ForFork0_#in~arg#1.base_4|, t_funThread1of2ForFork0_lock_#t~nondet3#1=|v_t_funThread1of2ForFork0_lock_#t~nondet3#1_8|, t_funThread1of2ForFork0_#t~nondet6#1=|v_t_funThread1of2ForFork0_#t~nondet6#1_6|, ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_8|, t_funThread1of2ForFork0_#t~nondet4#1=|v_t_funThread1of2ForFork0_#t~nondet4#1_6|, t_funThread1of2ForFork0_#t~post5#1=|v_t_funThread1of2ForFork0_#t~post5#1_8|, t_funThread1of2ForFork0_thidvar0=v_t_funThread1of2ForFork0_thidvar0_2, t_funThread1of2ForFork0_#res#1.base=|v_t_funThread1of2ForFork0_#res#1.base_4|, t_funThread1of2ForFork0_#t~post7#1=|v_t_funThread1of2ForFork0_#t~post7#1_8|, t_funThread1of2ForFork0_~arg#1.offset=|v_t_funThread1of2ForFork0_~arg#1.offset_4|, t_funThread1of2ForFork0_~arg#1.base=|v_t_funThread1of2ForFork0_~arg#1.base_4|, t_funThread1of2ForFork0_#res#1.offset=|v_t_funThread1of2ForFork0_#res#1.offset_4|, t_funThread1of2ForFork0_#in~arg#1.offset=|v_t_funThread1of2ForFork0_#in~arg#1.offset_4|} AuxVars[] AssignedVars[t_funThread1of2ForFork0_#in~arg#1.base, t_funThread1of2ForFork0_#t~post5#1, t_funThread1of2ForFork0_thidvar0, t_funThread1of2ForFork0_lock_#t~nondet3#1, t_funThread1of2ForFork0_#t~nondet6#1, t_funThread1of2ForFork0_#res#1.base, t_funThread1of2ForFork0_#t~post7#1, t_funThread1of2ForFork0_#t~nondet4#1, t_funThread1of2ForFork0_~arg#1.offset, t_funThread1of2ForFork0_~arg#1.base, t_funThread1of2ForFork0_#res#1.offset, t_funThread1of2ForFork0_#in~arg#1.offset] {20453#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 20:41:08,677 INFO L290 TraceCheckUtils]: 34: Hoare triple {20453#(= |ULTIMATE.start_main_~i~0#1| 0)} [335] L712-8-->L712-9: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre9#1] {20453#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 20:41:08,679 INFO L290 TraceCheckUtils]: 35: Hoare triple {20453#(= |ULTIMATE.start_main_~i~0#1| 0)} [414] L712-9-->L712-10: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet10#1] {20453#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 20:41:08,679 INFO L290 TraceCheckUtils]: 36: Hoare triple {20453#(= |ULTIMATE.start_main_~i~0#1| 0)} [391] L712-10-->L712-11: Formula: (= |v_ULTIMATE.start_main_#t~post8#1_2| |v_ULTIMATE.start_main_~i~0#1_6|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_6|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_6|, ULTIMATE.start_main_#t~post8#1=|v_ULTIMATE.start_main_#t~post8#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post8#1] {20454#(= |ULTIMATE.start_main_#t~post8#1| 0)} is VALID [2022-02-20 20:41:08,680 INFO L290 TraceCheckUtils]: 37: Hoare triple {20454#(= |ULTIMATE.start_main_#t~post8#1| 0)} [409] L712-11-->L712-12: Formula: (= (+ |v_ULTIMATE.start_main_#t~post8#1_3| 1) |v_ULTIMATE.start_main_~i~0#1_7|) InVars {ULTIMATE.start_main_#t~post8#1=|v_ULTIMATE.start_main_#t~post8#1_3|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_7|, ULTIMATE.start_main_#t~post8#1=|v_ULTIMATE.start_main_#t~post8#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {20455#(<= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:41:08,680 INFO L290 TraceCheckUtils]: 38: Hoare triple {20455#(<= |ULTIMATE.start_main_~i~0#1| 1)} [428] L712-12-->L712-13: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post8#1=|v_ULTIMATE.start_main_#t~post8#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post8#1] {20455#(<= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:41:08,681 INFO L290 TraceCheckUtils]: 39: Hoare triple {20455#(<= |ULTIMATE.start_main_~i~0#1| 1)} [325] L712-13-->L712-14: Formula: (not (< |v_ULTIMATE.start_main_~i~0#1_3| 10000)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_3|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_3|} AuxVars[] AssignedVars[] {20452#false} is VALID [2022-02-20 20:41:08,681 INFO L290 TraceCheckUtils]: 40: Hoare triple {20452#false} [412] L712-14-->L713: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {20452#false} is VALID [2022-02-20 20:41:08,682 INFO L290 TraceCheckUtils]: 41: Hoare triple {20452#false} [400] L713-->L700: Formula: true InVars {} OutVars{ULTIMATE.start_lock_#t~nondet3#1=|v_ULTIMATE.start_lock_#t~nondet3#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_lock_#t~nondet3#1] {20452#false} is VALID [2022-02-20 20:41:08,682 INFO L290 TraceCheckUtils]: 42: Hoare triple {20452#false} [369] L700-->L700-1: Formula: (let ((.cse0 (select |v_#pthreadsMutex_2| |v_~#mutex~0.base_7|))) (and (= |v_ULTIMATE.start_lock_#t~nondet3#1_2| 0) (= |v_#pthreadsMutex_1| (store |v_#pthreadsMutex_2| |v_~#mutex~0.base_7| (store .cse0 |v_~#mutex~0.offset_7| 1))) (= (select .cse0 |v_~#mutex~0.offset_7|) 0))) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_7|, #pthreadsMutex=|v_#pthreadsMutex_2|, ~#mutex~0.base=|v_~#mutex~0.base_7|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_7|, #pthreadsMutex=|v_#pthreadsMutex_1|, ~#mutex~0.base=|v_~#mutex~0.base_7|, ULTIMATE.start_lock_#t~nondet3#1=|v_ULTIMATE.start_lock_#t~nondet3#1_2|} AuxVars[] AssignedVars[#pthreadsMutex, ULTIMATE.start_lock_#t~nondet3#1] {20452#false} is VALID [2022-02-20 20:41:08,682 INFO L290 TraceCheckUtils]: 43: Hoare triple {20452#false} [376] L700-1-->L699: Formula: true InVars {} OutVars{ULTIMATE.start_lock_#t~nondet3#1=|v_ULTIMATE.start_lock_#t~nondet3#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_lock_#t~nondet3#1] {20452#false} is VALID [2022-02-20 20:41:08,682 INFO L290 TraceCheckUtils]: 44: Hoare triple {20452#false} [353] L699-->L714-7: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {20452#false} is VALID [2022-02-20 20:41:08,682 INFO L290 TraceCheckUtils]: 45: Hoare triple {20452#false} [371] L714-7-->L714-1: Formula: (let ((.cse0 (select |v_#pthreadsMutex_4| |v_~#__global_lock~0.base_7|))) (and (= |v_ULTIMATE.start_main_#t~nondet11#1_2| 0) (= (select .cse0 |v_~#__global_lock~0.offset_7|) 0) (= |v_#pthreadsMutex_3| (store |v_#pthreadsMutex_4| |v_~#__global_lock~0.base_7| (store .cse0 |v_~#__global_lock~0.offset_7| 1))))) InVars {#pthreadsMutex=|v_#pthreadsMutex_4|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_7|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_7|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_3|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_2|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_7|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_7|} AuxVars[] AssignedVars[#pthreadsMutex, ULTIMATE.start_main_#t~nondet11#1] {20452#false} is VALID [2022-02-20 20:41:08,683 INFO L290 TraceCheckUtils]: 46: Hoare triple {20452#false} [337] L714-1-->L714-2: 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] {20452#false} is VALID [2022-02-20 20:41:08,683 INFO L290 TraceCheckUtils]: 47: Hoare triple {20452#false} [387] L714-2-->L714-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {20452#false} is VALID [2022-02-20 20:41:08,683 INFO L290 TraceCheckUtils]: 48: Hoare triple {20452#false} [323] L714-3-->L714-4: Formula: (= (ite (= v_~global~0_2 0) 1 0) |v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_1|) InVars {~global~0=v_~global~0_2} OutVars{ULTIMATE.start___VERIFIER_assert_#in~cond#1=|v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_1|, ~global~0=v_~global~0_2} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_#in~cond#1] {20452#false} is VALID [2022-02-20 20:41:08,683 INFO L290 TraceCheckUtils]: 49: Hoare triple {20452#false} [343] L714-4-->L691: Formula: true InVars {} OutVars{ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_1|} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_~cond#1] {20452#false} is VALID [2022-02-20 20:41:08,683 INFO L290 TraceCheckUtils]: 50: Hoare triple {20452#false} [349] L691-->L691-1: Formula: (= |v_ULTIMATE.start___VERIFIER_assert_~cond#1_2| |v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_2|) InVars {ULTIMATE.start___VERIFIER_assert_#in~cond#1=|v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_2|} OutVars{ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_2|, ULTIMATE.start___VERIFIER_assert_#in~cond#1=|v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_2|} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_~cond#1] {20452#false} is VALID [2022-02-20 20:41:08,684 INFO L290 TraceCheckUtils]: 51: Hoare triple {20452#false} [433] L691-1-->L691-2: Formula: (= |v_ULTIMATE.start___VERIFIER_assert_~cond#1_3| 0) InVars {ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_3|} OutVars{ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_3|} AuxVars[] AssignedVars[] {20452#false} is VALID [2022-02-20 20:41:08,684 INFO L290 TraceCheckUtils]: 52: Hoare triple {20452#false} [345] L691-2-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {20452#false} is VALID [2022-02-20 20:41:08,684 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 20:41:08,685 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 20:41:08,685 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1214190889] [2022-02-20 20:41:08,685 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1214190889] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 20:41:08,685 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1393381871] [2022-02-20 20:41:08,686 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:41:08,686 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 20:41:08,686 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 20:41:08,688 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 20:41:08,716 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-02-20 20:41:08,778 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:41:08,779 INFO L263 TraceCheckSpWp]: Trace formula consists of 131 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-20 20:41:08,791 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:41:08,792 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 20:41:09,012 INFO L290 TraceCheckUtils]: 0: Hoare triple {20451#true} [420] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:09,013 INFO L290 TraceCheckUtils]: 1: Hoare triple {20451#true} [351] L-1-->L-1-1: Formula: (and (= |v_#NULL.base_1| 0) (= |v_#NULL.offset_1| 0)) InVars {} OutVars{#NULL.offset=|v_#NULL.offset_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {20451#true} is VALID [2022-02-20 20:41:09,013 INFO L290 TraceCheckUtils]: 2: Hoare triple {20451#true} [424] L-1-1-->L-1-2: Formula: (= (select |v_#valid_1| 0) 0) InVars {#valid=|v_#valid_1|} OutVars{#valid=|v_#valid_1|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:09,013 INFO L290 TraceCheckUtils]: 3: Hoare triple {20451#true} [427] L-1-2-->L690: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:09,013 INFO L290 TraceCheckUtils]: 4: Hoare triple {20451#true} [366] L690-->L690-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[] {20451#true} is VALID [2022-02-20 20:41:09,013 INFO L290 TraceCheckUtils]: 5: Hoare triple {20451#true} [327] L690-1-->L690-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[] {20451#true} is VALID [2022-02-20 20:41:09,013 INFO L290 TraceCheckUtils]: 6: Hoare triple {20451#true} [340] L690-2-->L690-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[] {20451#true} is VALID [2022-02-20 20:41:09,014 INFO L290 TraceCheckUtils]: 7: Hoare triple {20451#true} [407] L690-3-->L690-4: Formula: (and (= (select |v_#length_2| 2) 13) (= (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[] {20451#true} is VALID [2022-02-20 20:41:09,014 INFO L290 TraceCheckUtils]: 8: Hoare triple {20451#true} [375] L690-4-->L696: Formula: (and (= 3 |v_~#__global_lock~0.base_1|) (= |v_~#__global_lock~0.offset_1| 0)) InVars {} OutVars{~#__global_lock~0.base=|v_~#__global_lock~0.base_1|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_1|} AuxVars[] AssignedVars[~#__global_lock~0.offset, ~#__global_lock~0.base] {20451#true} is VALID [2022-02-20 20:41:09,014 INFO L290 TraceCheckUtils]: 9: Hoare triple {20451#true} [357] L696-->L696-1: Formula: (and (= (select |v_#length_3| 3) 24) (= (select |v_#valid_4| 3) 1)) InVars {#length=|v_#length_3|, #valid=|v_#valid_4|} OutVars{#length=|v_#length_3|, #valid=|v_#valid_4|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:09,014 INFO L290 TraceCheckUtils]: 10: Hoare triple {20451#true} [408] L696-1-->L696-2: Formula: (= (select (select |v_#memory_int_3| |v_~#__global_lock~0.base_2|) |v_~#__global_lock~0.offset_2|) 0) InVars {#memory_int=|v_#memory_int_3|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_2|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_2|} OutVars{#memory_int=|v_#memory_int_3|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_2|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_2|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:09,014 INFO L290 TraceCheckUtils]: 11: Hoare triple {20451#true} [334] L696-2-->L696-3: Formula: (= (select (select |v_#memory_int_4| |v_~#__global_lock~0.base_3|) (+ |v_~#__global_lock~0.offset_3| 4)) 0) InVars {#memory_int=|v_#memory_int_4|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_3|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_3|} OutVars{#memory_int=|v_#memory_int_4|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_3|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_3|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:09,015 INFO L290 TraceCheckUtils]: 12: Hoare triple {20451#true} [430] L696-3-->L696-4: Formula: (= (select (select |v_#memory_int_5| |v_~#__global_lock~0.base_4|) (+ |v_~#__global_lock~0.offset_4| 8)) 0) InVars {#memory_int=|v_#memory_int_5|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_4|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_4|} OutVars{#memory_int=|v_#memory_int_5|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_4|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_4|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:09,015 INFO L290 TraceCheckUtils]: 13: Hoare triple {20451#true} [413] L696-4-->L696-5: Formula: (= (select (select |v_#memory_int_6| |v_~#__global_lock~0.base_5|) (+ |v_~#__global_lock~0.offset_5| 12)) 0) InVars {#memory_int=|v_#memory_int_6|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_5|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_5|} OutVars{#memory_int=|v_#memory_int_6|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_5|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_5|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:09,015 INFO L290 TraceCheckUtils]: 14: Hoare triple {20451#true} [361] L696-5-->L696-6: Formula: (= (select (select |v_#memory_int_7| |v_~#__global_lock~0.base_6|) (+ 16 |v_~#__global_lock~0.offset_6|)) 0) InVars {#memory_int=|v_#memory_int_7|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_6|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_6|} OutVars{#memory_int=|v_#memory_int_7|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_6|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_6|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:09,015 INFO L290 TraceCheckUtils]: 15: Hoare triple {20451#true} [370] L696-6-->L698: Formula: (= v_~global~0_1 0) InVars {} OutVars{~global~0=v_~global~0_1} AuxVars[] AssignedVars[~global~0] {20451#true} is VALID [2022-02-20 20:41:09,015 INFO L290 TraceCheckUtils]: 16: Hoare triple {20451#true} [397] L698-->L698-1: Formula: (and (= 4 |v_~#mutex~0.base_1|) (= |v_~#mutex~0.offset_1| 0)) InVars {} OutVars{~#mutex~0.base=|v_~#mutex~0.base_1|, ~#mutex~0.offset=|v_~#mutex~0.offset_1|} AuxVars[] AssignedVars[~#mutex~0.base, ~#mutex~0.offset] {20451#true} is VALID [2022-02-20 20:41:09,016 INFO L290 TraceCheckUtils]: 17: Hoare triple {20451#true} [395] L698-1-->L698-2: Formula: (and (= (select |v_#length_4| 4) 24) (= (select |v_#valid_5| 4) 1)) InVars {#length=|v_#length_4|, #valid=|v_#valid_5|} OutVars{#length=|v_#length_4|, #valid=|v_#valid_5|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:09,016 INFO L290 TraceCheckUtils]: 18: Hoare triple {20451#true} [418] L698-2-->L698-3: Formula: (= (select (select |v_#memory_int_8| |v_~#mutex~0.base_2|) |v_~#mutex~0.offset_2|) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_2|, #memory_int=|v_#memory_int_8|, ~#mutex~0.base=|v_~#mutex~0.base_2|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_2|, #memory_int=|v_#memory_int_8|, ~#mutex~0.base=|v_~#mutex~0.base_2|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:09,016 INFO L290 TraceCheckUtils]: 19: Hoare triple {20451#true} [341] L698-3-->L698-4: Formula: (= (select (select |v_#memory_int_9| |v_~#mutex~0.base_3|) (+ |v_~#mutex~0.offset_3| 4)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_3|, #memory_int=|v_#memory_int_9|, ~#mutex~0.base=|v_~#mutex~0.base_3|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_3|, #memory_int=|v_#memory_int_9|, ~#mutex~0.base=|v_~#mutex~0.base_3|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:09,016 INFO L290 TraceCheckUtils]: 20: Hoare triple {20451#true} [396] L698-4-->L698-5: Formula: (= (select (select |v_#memory_int_10| |v_~#mutex~0.base_4|) (+ |v_~#mutex~0.offset_4| 8)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_4|, #memory_int=|v_#memory_int_10|, ~#mutex~0.base=|v_~#mutex~0.base_4|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_4|, #memory_int=|v_#memory_int_10|, ~#mutex~0.base=|v_~#mutex~0.base_4|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:09,016 INFO L290 TraceCheckUtils]: 21: Hoare triple {20451#true} [422] L698-5-->L698-6: Formula: (= (select (select |v_#memory_int_11| |v_~#mutex~0.base_5|) (+ |v_~#mutex~0.offset_5| 12)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_5|, #memory_int=|v_#memory_int_11|, ~#mutex~0.base=|v_~#mutex~0.base_5|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_5|, #memory_int=|v_#memory_int_11|, ~#mutex~0.base=|v_~#mutex~0.base_5|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:09,016 INFO L290 TraceCheckUtils]: 22: Hoare triple {20451#true} [419] L698-6-->L698-7: Formula: (= (select (select |v_#memory_int_12| |v_~#mutex~0.base_6|) (+ |v_~#mutex~0.offset_6| 16)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_6|, #memory_int=|v_#memory_int_12|, ~#mutex~0.base=|v_~#mutex~0.base_6|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_6|, #memory_int=|v_#memory_int_12|, ~#mutex~0.base=|v_~#mutex~0.base_6|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:09,017 INFO L290 TraceCheckUtils]: 23: Hoare triple {20451#true} [332] L698-7-->L-1-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:09,017 INFO L290 TraceCheckUtils]: 24: Hoare triple {20451#true} [429] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:09,017 INFO L290 TraceCheckUtils]: 25: Hoare triple {20451#true} [356] L-1-4-->L-1-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1] {20451#true} is VALID [2022-02-20 20:41:09,017 INFO L290 TraceCheckUtils]: 26: Hoare triple {20451#true} [329] L-1-5-->L712: Formula: true InVars {} OutVars{ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_1|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_1|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_1|, ULTIMATE.start_main_#t~mem13#1=|v_ULTIMATE.start_main_#t~mem13#1_1|, ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_1|, ULTIMATE.start_main_~#t_ids~0#1.base=|v_ULTIMATE.start_main_~#t_ids~0#1.base_1|, ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_1|, ULTIMATE.start_main_#t~post12#1=|v_ULTIMATE.start_main_#t~post12#1_1|, ULTIMATE.start_main_#t~post8#1=|v_ULTIMATE.start_main_#t~post8#1_1|, ULTIMATE.start_main_~#t_ids~0#1.offset=|v_ULTIMATE.start_main_~#t_ids~0#1.offset_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet11#1, ULTIMATE.start_main_#t~mem13#1, ULTIMATE.start_main_#t~nondet10#1, ULTIMATE.start_main_~#t_ids~0#1.base, ULTIMATE.start_main_#t~pre9#1, ULTIMATE.start_main_#t~post12#1, ULTIMATE.start_main_#t~post8#1, ULTIMATE.start_main_~#t_ids~0#1.offset] {20451#true} is VALID [2022-02-20 20:41:09,017 INFO L290 TraceCheckUtils]: 27: Hoare triple {20451#true} [377] L712-->L712-1: Formula: (and (= (store |v_#length_6| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2| 40000) |v_#length_5|) (= |v_#valid_6| (store |v_#valid_7| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2| 1)) (= |v_ULTIMATE.start_main_~#t_ids~0#1.offset_2| 0) (not (= |v_ULTIMATE.start_main_~#t_ids~0#1.base_2| 0)) (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2|) (= (select |v_#valid_7| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_6|, #valid=|v_#valid_7|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, ULTIMATE.start_main_~#t_ids~0#1.offset=|v_ULTIMATE.start_main_~#t_ids~0#1.offset_2|, #length=|v_#length_5|, ULTIMATE.start_main_~#t_ids~0#1.base=|v_ULTIMATE.start_main_~#t_ids~0#1.base_2|, #valid=|v_#valid_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#t_ids~0#1.base, #valid, ULTIMATE.start_main_~#t_ids~0#1.offset, #length] {20451#true} is VALID [2022-02-20 20:41:09,018 INFO L290 TraceCheckUtils]: 28: Hoare triple {20451#true} [383] L712-1-->L712-13: Formula: (= |v_ULTIMATE.start_main_~i~0#1_2| 0) InVars {} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {20543#(<= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 20:41:09,018 INFO L290 TraceCheckUtils]: 29: Hoare triple {20543#(<= |ULTIMATE.start_main_~i~0#1| 0)} [326] L712-13-->L712-4: Formula: (< |v_ULTIMATE.start_main_~i~0#1_4| 10000) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_4|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_4|} AuxVars[] AssignedVars[] {20543#(<= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 20:41:09,018 INFO L290 TraceCheckUtils]: 30: Hoare triple {20543#(<= |ULTIMATE.start_main_~i~0#1| 0)} [344] L712-4-->L712-5: Formula: (= |v_ULTIMATE.start_main_#t~pre9#1_2| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre9#1] {20543#(<= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 20:41:09,019 INFO L290 TraceCheckUtils]: 31: Hoare triple {20543#(<= |ULTIMATE.start_main_~i~0#1| 0)} [362] L712-5-->L712-6: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] {20543#(<= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 20:41:09,019 INFO L290 TraceCheckUtils]: 32: Hoare triple {20543#(<= |ULTIMATE.start_main_~i~0#1| 0)} [367] L712-6-->L712-7: Formula: (= |v_#memory_int_13| (store |v_#memory_int_14| |v_ULTIMATE.start_main_~#t_ids~0#1.base_3| (store (select |v_#memory_int_14| |v_ULTIMATE.start_main_~#t_ids~0#1.base_3|) (+ |v_ULTIMATE.start_main_~#t_ids~0#1.offset_3| (* |v_ULTIMATE.start_main_~i~0#1_5| 4)) |v_ULTIMATE.start_main_#t~pre9#1_3|))) InVars {#memory_int=|v_#memory_int_14|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t_ids~0#1.offset=|v_ULTIMATE.start_main_~#t_ids~0#1.offset_3|, ULTIMATE.start_main_~#t_ids~0#1.base=|v_ULTIMATE.start_main_~#t_ids~0#1.base_3|, ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_3|} OutVars{#memory_int=|v_#memory_int_13|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t_ids~0#1.offset=|v_ULTIMATE.start_main_~#t_ids~0#1.offset_3|, ULTIMATE.start_main_~#t_ids~0#1.base=|v_ULTIMATE.start_main_~#t_ids~0#1.base_3|, ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_3|} AuxVars[] AssignedVars[#memory_int] {20543#(<= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 20:41:09,020 INFO L290 TraceCheckUtils]: 33: Hoare triple {20543#(<= |ULTIMATE.start_main_~i~0#1| 0)} [503] L712-7-->t_funENTRY: Formula: (and (= |v_t_funThread1of2ForFork0_#in~arg#1.base_4| 0) (= |v_t_funThread1of2ForFork0_#in~arg#1.offset_4| 0) (= |v_ULTIMATE.start_main_#t~pre9#1_8| v_t_funThread1of2ForFork0_thidvar0_2)) InVars {ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_8|} OutVars{t_funThread1of2ForFork0_#in~arg#1.base=|v_t_funThread1of2ForFork0_#in~arg#1.base_4|, t_funThread1of2ForFork0_lock_#t~nondet3#1=|v_t_funThread1of2ForFork0_lock_#t~nondet3#1_8|, t_funThread1of2ForFork0_#t~nondet6#1=|v_t_funThread1of2ForFork0_#t~nondet6#1_6|, ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_8|, t_funThread1of2ForFork0_#t~nondet4#1=|v_t_funThread1of2ForFork0_#t~nondet4#1_6|, t_funThread1of2ForFork0_#t~post5#1=|v_t_funThread1of2ForFork0_#t~post5#1_8|, t_funThread1of2ForFork0_thidvar0=v_t_funThread1of2ForFork0_thidvar0_2, t_funThread1of2ForFork0_#res#1.base=|v_t_funThread1of2ForFork0_#res#1.base_4|, t_funThread1of2ForFork0_#t~post7#1=|v_t_funThread1of2ForFork0_#t~post7#1_8|, t_funThread1of2ForFork0_~arg#1.offset=|v_t_funThread1of2ForFork0_~arg#1.offset_4|, t_funThread1of2ForFork0_~arg#1.base=|v_t_funThread1of2ForFork0_~arg#1.base_4|, t_funThread1of2ForFork0_#res#1.offset=|v_t_funThread1of2ForFork0_#res#1.offset_4|, t_funThread1of2ForFork0_#in~arg#1.offset=|v_t_funThread1of2ForFork0_#in~arg#1.offset_4|} AuxVars[] AssignedVars[t_funThread1of2ForFork0_#in~arg#1.base, t_funThread1of2ForFork0_#t~post5#1, t_funThread1of2ForFork0_thidvar0, t_funThread1of2ForFork0_lock_#t~nondet3#1, t_funThread1of2ForFork0_#t~nondet6#1, t_funThread1of2ForFork0_#res#1.base, t_funThread1of2ForFork0_#t~post7#1, t_funThread1of2ForFork0_#t~nondet4#1, t_funThread1of2ForFork0_~arg#1.offset, t_funThread1of2ForFork0_~arg#1.base, t_funThread1of2ForFork0_#res#1.offset, t_funThread1of2ForFork0_#in~arg#1.offset] {20543#(<= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 20:41:09,020 INFO L290 TraceCheckUtils]: 34: Hoare triple {20543#(<= |ULTIMATE.start_main_~i~0#1| 0)} [335] L712-8-->L712-9: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre9#1] {20543#(<= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 20:41:09,020 INFO L290 TraceCheckUtils]: 35: Hoare triple {20543#(<= |ULTIMATE.start_main_~i~0#1| 0)} [414] L712-9-->L712-10: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet10#1] {20543#(<= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 20:41:09,021 INFO L290 TraceCheckUtils]: 36: Hoare triple {20543#(<= |ULTIMATE.start_main_~i~0#1| 0)} [391] L712-10-->L712-11: Formula: (= |v_ULTIMATE.start_main_#t~post8#1_2| |v_ULTIMATE.start_main_~i~0#1_6|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_6|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_6|, ULTIMATE.start_main_#t~post8#1=|v_ULTIMATE.start_main_#t~post8#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post8#1] {20568#(<= |ULTIMATE.start_main_#t~post8#1| 0)} is VALID [2022-02-20 20:41:09,021 INFO L290 TraceCheckUtils]: 37: Hoare triple {20568#(<= |ULTIMATE.start_main_#t~post8#1| 0)} [409] L712-11-->L712-12: Formula: (= (+ |v_ULTIMATE.start_main_#t~post8#1_3| 1) |v_ULTIMATE.start_main_~i~0#1_7|) InVars {ULTIMATE.start_main_#t~post8#1=|v_ULTIMATE.start_main_#t~post8#1_3|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_7|, ULTIMATE.start_main_#t~post8#1=|v_ULTIMATE.start_main_#t~post8#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {20455#(<= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:41:09,022 INFO L290 TraceCheckUtils]: 38: Hoare triple {20455#(<= |ULTIMATE.start_main_~i~0#1| 1)} [428] L712-12-->L712-13: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post8#1=|v_ULTIMATE.start_main_#t~post8#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post8#1] {20455#(<= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:41:09,022 INFO L290 TraceCheckUtils]: 39: Hoare triple {20455#(<= |ULTIMATE.start_main_~i~0#1| 1)} [325] L712-13-->L712-14: Formula: (not (< |v_ULTIMATE.start_main_~i~0#1_3| 10000)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_3|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_3|} AuxVars[] AssignedVars[] {20452#false} is VALID [2022-02-20 20:41:09,022 INFO L290 TraceCheckUtils]: 40: Hoare triple {20452#false} [412] L712-14-->L713: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {20452#false} is VALID [2022-02-20 20:41:09,022 INFO L290 TraceCheckUtils]: 41: Hoare triple {20452#false} [400] L713-->L700: Formula: true InVars {} OutVars{ULTIMATE.start_lock_#t~nondet3#1=|v_ULTIMATE.start_lock_#t~nondet3#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_lock_#t~nondet3#1] {20452#false} is VALID [2022-02-20 20:41:09,022 INFO L290 TraceCheckUtils]: 42: Hoare triple {20452#false} [369] L700-->L700-1: Formula: (let ((.cse0 (select |v_#pthreadsMutex_2| |v_~#mutex~0.base_7|))) (and (= |v_ULTIMATE.start_lock_#t~nondet3#1_2| 0) (= |v_#pthreadsMutex_1| (store |v_#pthreadsMutex_2| |v_~#mutex~0.base_7| (store .cse0 |v_~#mutex~0.offset_7| 1))) (= (select .cse0 |v_~#mutex~0.offset_7|) 0))) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_7|, #pthreadsMutex=|v_#pthreadsMutex_2|, ~#mutex~0.base=|v_~#mutex~0.base_7|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_7|, #pthreadsMutex=|v_#pthreadsMutex_1|, ~#mutex~0.base=|v_~#mutex~0.base_7|, ULTIMATE.start_lock_#t~nondet3#1=|v_ULTIMATE.start_lock_#t~nondet3#1_2|} AuxVars[] AssignedVars[#pthreadsMutex, ULTIMATE.start_lock_#t~nondet3#1] {20452#false} is VALID [2022-02-20 20:41:09,023 INFO L290 TraceCheckUtils]: 43: Hoare triple {20452#false} [376] L700-1-->L699: Formula: true InVars {} OutVars{ULTIMATE.start_lock_#t~nondet3#1=|v_ULTIMATE.start_lock_#t~nondet3#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_lock_#t~nondet3#1] {20452#false} is VALID [2022-02-20 20:41:09,023 INFO L290 TraceCheckUtils]: 44: Hoare triple {20452#false} [353] L699-->L714-7: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {20452#false} is VALID [2022-02-20 20:41:09,023 INFO L290 TraceCheckUtils]: 45: Hoare triple {20452#false} [371] L714-7-->L714-1: Formula: (let ((.cse0 (select |v_#pthreadsMutex_4| |v_~#__global_lock~0.base_7|))) (and (= |v_ULTIMATE.start_main_#t~nondet11#1_2| 0) (= (select .cse0 |v_~#__global_lock~0.offset_7|) 0) (= |v_#pthreadsMutex_3| (store |v_#pthreadsMutex_4| |v_~#__global_lock~0.base_7| (store .cse0 |v_~#__global_lock~0.offset_7| 1))))) InVars {#pthreadsMutex=|v_#pthreadsMutex_4|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_7|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_7|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_3|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_2|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_7|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_7|} AuxVars[] AssignedVars[#pthreadsMutex, ULTIMATE.start_main_#t~nondet11#1] {20452#false} is VALID [2022-02-20 20:41:09,023 INFO L290 TraceCheckUtils]: 46: Hoare triple {20452#false} [337] L714-1-->L714-2: 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] {20452#false} is VALID [2022-02-20 20:41:09,023 INFO L290 TraceCheckUtils]: 47: Hoare triple {20452#false} [387] L714-2-->L714-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {20452#false} is VALID [2022-02-20 20:41:09,023 INFO L290 TraceCheckUtils]: 48: Hoare triple {20452#false} [323] L714-3-->L714-4: Formula: (= (ite (= v_~global~0_2 0) 1 0) |v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_1|) InVars {~global~0=v_~global~0_2} OutVars{ULTIMATE.start___VERIFIER_assert_#in~cond#1=|v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_1|, ~global~0=v_~global~0_2} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_#in~cond#1] {20452#false} is VALID [2022-02-20 20:41:09,024 INFO L290 TraceCheckUtils]: 49: Hoare triple {20452#false} [343] L714-4-->L691: Formula: true InVars {} OutVars{ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_1|} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_~cond#1] {20452#false} is VALID [2022-02-20 20:41:09,024 INFO L290 TraceCheckUtils]: 50: Hoare triple {20452#false} [349] L691-->L691-1: Formula: (= |v_ULTIMATE.start___VERIFIER_assert_~cond#1_2| |v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_2|) InVars {ULTIMATE.start___VERIFIER_assert_#in~cond#1=|v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_2|} OutVars{ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_2|, ULTIMATE.start___VERIFIER_assert_#in~cond#1=|v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_2|} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_~cond#1] {20452#false} is VALID [2022-02-20 20:41:09,024 INFO L290 TraceCheckUtils]: 51: Hoare triple {20452#false} [433] L691-1-->L691-2: Formula: (= |v_ULTIMATE.start___VERIFIER_assert_~cond#1_3| 0) InVars {ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_3|} OutVars{ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_3|} AuxVars[] AssignedVars[] {20452#false} is VALID [2022-02-20 20:41:09,024 INFO L290 TraceCheckUtils]: 52: Hoare triple {20452#false} [345] L691-2-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {20452#false} is VALID [2022-02-20 20:41:09,024 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 20:41:09,025 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 20:41:09,217 INFO L290 TraceCheckUtils]: 52: Hoare triple {20452#false} [345] L691-2-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {20452#false} is VALID [2022-02-20 20:41:09,217 INFO L290 TraceCheckUtils]: 51: Hoare triple {20452#false} [433] L691-1-->L691-2: Formula: (= |v_ULTIMATE.start___VERIFIER_assert_~cond#1_3| 0) InVars {ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_3|} OutVars{ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_3|} AuxVars[] AssignedVars[] {20452#false} is VALID [2022-02-20 20:41:09,217 INFO L290 TraceCheckUtils]: 50: Hoare triple {20452#false} [349] L691-->L691-1: Formula: (= |v_ULTIMATE.start___VERIFIER_assert_~cond#1_2| |v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_2|) InVars {ULTIMATE.start___VERIFIER_assert_#in~cond#1=|v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_2|} OutVars{ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_2|, ULTIMATE.start___VERIFIER_assert_#in~cond#1=|v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_2|} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_~cond#1] {20452#false} is VALID [2022-02-20 20:41:09,217 INFO L290 TraceCheckUtils]: 49: Hoare triple {20452#false} [343] L714-4-->L691: Formula: true InVars {} OutVars{ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_1|} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_~cond#1] {20452#false} is VALID [2022-02-20 20:41:09,217 INFO L290 TraceCheckUtils]: 48: Hoare triple {20452#false} [323] L714-3-->L714-4: Formula: (= (ite (= v_~global~0_2 0) 1 0) |v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_1|) InVars {~global~0=v_~global~0_2} OutVars{ULTIMATE.start___VERIFIER_assert_#in~cond#1=|v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_1|, ~global~0=v_~global~0_2} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_#in~cond#1] {20452#false} is VALID [2022-02-20 20:41:09,218 INFO L290 TraceCheckUtils]: 47: Hoare triple {20452#false} [387] L714-2-->L714-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {20452#false} is VALID [2022-02-20 20:41:09,218 INFO L290 TraceCheckUtils]: 46: Hoare triple {20452#false} [337] L714-1-->L714-2: 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] {20452#false} is VALID [2022-02-20 20:41:09,218 INFO L290 TraceCheckUtils]: 45: Hoare triple {20452#false} [371] L714-7-->L714-1: Formula: (let ((.cse0 (select |v_#pthreadsMutex_4| |v_~#__global_lock~0.base_7|))) (and (= |v_ULTIMATE.start_main_#t~nondet11#1_2| 0) (= (select .cse0 |v_~#__global_lock~0.offset_7|) 0) (= |v_#pthreadsMutex_3| (store |v_#pthreadsMutex_4| |v_~#__global_lock~0.base_7| (store .cse0 |v_~#__global_lock~0.offset_7| 1))))) InVars {#pthreadsMutex=|v_#pthreadsMutex_4|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_7|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_7|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_3|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_2|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_7|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_7|} AuxVars[] AssignedVars[#pthreadsMutex, ULTIMATE.start_main_#t~nondet11#1] {20452#false} is VALID [2022-02-20 20:41:09,218 INFO L290 TraceCheckUtils]: 44: Hoare triple {20452#false} [353] L699-->L714-7: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {20452#false} is VALID [2022-02-20 20:41:09,218 INFO L290 TraceCheckUtils]: 43: Hoare triple {20452#false} [376] L700-1-->L699: Formula: true InVars {} OutVars{ULTIMATE.start_lock_#t~nondet3#1=|v_ULTIMATE.start_lock_#t~nondet3#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_lock_#t~nondet3#1] {20452#false} is VALID [2022-02-20 20:41:09,218 INFO L290 TraceCheckUtils]: 42: Hoare triple {20452#false} [369] L700-->L700-1: Formula: (let ((.cse0 (select |v_#pthreadsMutex_2| |v_~#mutex~0.base_7|))) (and (= |v_ULTIMATE.start_lock_#t~nondet3#1_2| 0) (= |v_#pthreadsMutex_1| (store |v_#pthreadsMutex_2| |v_~#mutex~0.base_7| (store .cse0 |v_~#mutex~0.offset_7| 1))) (= (select .cse0 |v_~#mutex~0.offset_7|) 0))) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_7|, #pthreadsMutex=|v_#pthreadsMutex_2|, ~#mutex~0.base=|v_~#mutex~0.base_7|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_7|, #pthreadsMutex=|v_#pthreadsMutex_1|, ~#mutex~0.base=|v_~#mutex~0.base_7|, ULTIMATE.start_lock_#t~nondet3#1=|v_ULTIMATE.start_lock_#t~nondet3#1_2|} AuxVars[] AssignedVars[#pthreadsMutex, ULTIMATE.start_lock_#t~nondet3#1] {20452#false} is VALID [2022-02-20 20:41:09,219 INFO L290 TraceCheckUtils]: 41: Hoare triple {20452#false} [400] L713-->L700: Formula: true InVars {} OutVars{ULTIMATE.start_lock_#t~nondet3#1=|v_ULTIMATE.start_lock_#t~nondet3#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_lock_#t~nondet3#1] {20452#false} is VALID [2022-02-20 20:41:09,219 INFO L290 TraceCheckUtils]: 40: Hoare triple {20452#false} [412] L712-14-->L713: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {20452#false} is VALID [2022-02-20 20:41:09,219 INFO L290 TraceCheckUtils]: 39: Hoare triple {20656#(< |ULTIMATE.start_main_~i~0#1| 10000)} [325] L712-13-->L712-14: Formula: (not (< |v_ULTIMATE.start_main_~i~0#1_3| 10000)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_3|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_3|} AuxVars[] AssignedVars[] {20452#false} is VALID [2022-02-20 20:41:09,220 INFO L290 TraceCheckUtils]: 38: Hoare triple {20656#(< |ULTIMATE.start_main_~i~0#1| 10000)} [428] L712-12-->L712-13: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post8#1=|v_ULTIMATE.start_main_#t~post8#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post8#1] {20656#(< |ULTIMATE.start_main_~i~0#1| 10000)} is VALID [2022-02-20 20:41:09,220 INFO L290 TraceCheckUtils]: 37: Hoare triple {20663#(< |ULTIMATE.start_main_#t~post8#1| 9999)} [409] L712-11-->L712-12: Formula: (= (+ |v_ULTIMATE.start_main_#t~post8#1_3| 1) |v_ULTIMATE.start_main_~i~0#1_7|) InVars {ULTIMATE.start_main_#t~post8#1=|v_ULTIMATE.start_main_#t~post8#1_3|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_7|, ULTIMATE.start_main_#t~post8#1=|v_ULTIMATE.start_main_#t~post8#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {20656#(< |ULTIMATE.start_main_~i~0#1| 10000)} is VALID [2022-02-20 20:41:09,221 INFO L290 TraceCheckUtils]: 36: Hoare triple {20667#(< |ULTIMATE.start_main_~i~0#1| 9999)} [391] L712-10-->L712-11: Formula: (= |v_ULTIMATE.start_main_#t~post8#1_2| |v_ULTIMATE.start_main_~i~0#1_6|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_6|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_6|, ULTIMATE.start_main_#t~post8#1=|v_ULTIMATE.start_main_#t~post8#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post8#1] {20663#(< |ULTIMATE.start_main_#t~post8#1| 9999)} is VALID [2022-02-20 20:41:09,221 INFO L290 TraceCheckUtils]: 35: Hoare triple {20667#(< |ULTIMATE.start_main_~i~0#1| 9999)} [414] L712-9-->L712-10: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet10#1] {20667#(< |ULTIMATE.start_main_~i~0#1| 9999)} is VALID [2022-02-20 20:41:09,221 INFO L290 TraceCheckUtils]: 34: Hoare triple {20667#(< |ULTIMATE.start_main_~i~0#1| 9999)} [335] L712-8-->L712-9: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre9#1] {20667#(< |ULTIMATE.start_main_~i~0#1| 9999)} is VALID [2022-02-20 20:41:09,222 INFO L290 TraceCheckUtils]: 33: Hoare triple {20667#(< |ULTIMATE.start_main_~i~0#1| 9999)} [503] L712-7-->t_funENTRY: Formula: (and (= |v_t_funThread1of2ForFork0_#in~arg#1.base_4| 0) (= |v_t_funThread1of2ForFork0_#in~arg#1.offset_4| 0) (= |v_ULTIMATE.start_main_#t~pre9#1_8| v_t_funThread1of2ForFork0_thidvar0_2)) InVars {ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_8|} OutVars{t_funThread1of2ForFork0_#in~arg#1.base=|v_t_funThread1of2ForFork0_#in~arg#1.base_4|, t_funThread1of2ForFork0_lock_#t~nondet3#1=|v_t_funThread1of2ForFork0_lock_#t~nondet3#1_8|, t_funThread1of2ForFork0_#t~nondet6#1=|v_t_funThread1of2ForFork0_#t~nondet6#1_6|, ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_8|, t_funThread1of2ForFork0_#t~nondet4#1=|v_t_funThread1of2ForFork0_#t~nondet4#1_6|, t_funThread1of2ForFork0_#t~post5#1=|v_t_funThread1of2ForFork0_#t~post5#1_8|, t_funThread1of2ForFork0_thidvar0=v_t_funThread1of2ForFork0_thidvar0_2, t_funThread1of2ForFork0_#res#1.base=|v_t_funThread1of2ForFork0_#res#1.base_4|, t_funThread1of2ForFork0_#t~post7#1=|v_t_funThread1of2ForFork0_#t~post7#1_8|, t_funThread1of2ForFork0_~arg#1.offset=|v_t_funThread1of2ForFork0_~arg#1.offset_4|, t_funThread1of2ForFork0_~arg#1.base=|v_t_funThread1of2ForFork0_~arg#1.base_4|, t_funThread1of2ForFork0_#res#1.offset=|v_t_funThread1of2ForFork0_#res#1.offset_4|, t_funThread1of2ForFork0_#in~arg#1.offset=|v_t_funThread1of2ForFork0_#in~arg#1.offset_4|} AuxVars[] AssignedVars[t_funThread1of2ForFork0_#in~arg#1.base, t_funThread1of2ForFork0_#t~post5#1, t_funThread1of2ForFork0_thidvar0, t_funThread1of2ForFork0_lock_#t~nondet3#1, t_funThread1of2ForFork0_#t~nondet6#1, t_funThread1of2ForFork0_#res#1.base, t_funThread1of2ForFork0_#t~post7#1, t_funThread1of2ForFork0_#t~nondet4#1, t_funThread1of2ForFork0_~arg#1.offset, t_funThread1of2ForFork0_~arg#1.base, t_funThread1of2ForFork0_#res#1.offset, t_funThread1of2ForFork0_#in~arg#1.offset] {20667#(< |ULTIMATE.start_main_~i~0#1| 9999)} is VALID [2022-02-20 20:41:09,222 INFO L290 TraceCheckUtils]: 32: Hoare triple {20667#(< |ULTIMATE.start_main_~i~0#1| 9999)} [367] L712-6-->L712-7: Formula: (= |v_#memory_int_13| (store |v_#memory_int_14| |v_ULTIMATE.start_main_~#t_ids~0#1.base_3| (store (select |v_#memory_int_14| |v_ULTIMATE.start_main_~#t_ids~0#1.base_3|) (+ |v_ULTIMATE.start_main_~#t_ids~0#1.offset_3| (* |v_ULTIMATE.start_main_~i~0#1_5| 4)) |v_ULTIMATE.start_main_#t~pre9#1_3|))) InVars {#memory_int=|v_#memory_int_14|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t_ids~0#1.offset=|v_ULTIMATE.start_main_~#t_ids~0#1.offset_3|, ULTIMATE.start_main_~#t_ids~0#1.base=|v_ULTIMATE.start_main_~#t_ids~0#1.base_3|, ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_3|} OutVars{#memory_int=|v_#memory_int_13|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t_ids~0#1.offset=|v_ULTIMATE.start_main_~#t_ids~0#1.offset_3|, ULTIMATE.start_main_~#t_ids~0#1.base=|v_ULTIMATE.start_main_~#t_ids~0#1.base_3|, ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_3|} AuxVars[] AssignedVars[#memory_int] {20667#(< |ULTIMATE.start_main_~i~0#1| 9999)} is VALID [2022-02-20 20:41:09,223 INFO L290 TraceCheckUtils]: 31: Hoare triple {20667#(< |ULTIMATE.start_main_~i~0#1| 9999)} [362] L712-5-->L712-6: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] {20667#(< |ULTIMATE.start_main_~i~0#1| 9999)} is VALID [2022-02-20 20:41:09,223 INFO L290 TraceCheckUtils]: 30: Hoare triple {20667#(< |ULTIMATE.start_main_~i~0#1| 9999)} [344] L712-4-->L712-5: Formula: (= |v_ULTIMATE.start_main_#t~pre9#1_2| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre9#1] {20667#(< |ULTIMATE.start_main_~i~0#1| 9999)} is VALID [2022-02-20 20:41:09,224 INFO L290 TraceCheckUtils]: 29: Hoare triple {20667#(< |ULTIMATE.start_main_~i~0#1| 9999)} [326] L712-13-->L712-4: Formula: (< |v_ULTIMATE.start_main_~i~0#1_4| 10000) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_4|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_4|} AuxVars[] AssignedVars[] {20667#(< |ULTIMATE.start_main_~i~0#1| 9999)} is VALID [2022-02-20 20:41:09,224 INFO L290 TraceCheckUtils]: 28: Hoare triple {20451#true} [383] L712-1-->L712-13: Formula: (= |v_ULTIMATE.start_main_~i~0#1_2| 0) InVars {} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {20667#(< |ULTIMATE.start_main_~i~0#1| 9999)} is VALID [2022-02-20 20:41:09,224 INFO L290 TraceCheckUtils]: 27: Hoare triple {20451#true} [377] L712-->L712-1: Formula: (and (= (store |v_#length_6| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2| 40000) |v_#length_5|) (= |v_#valid_6| (store |v_#valid_7| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2| 1)) (= |v_ULTIMATE.start_main_~#t_ids~0#1.offset_2| 0) (not (= |v_ULTIMATE.start_main_~#t_ids~0#1.base_2| 0)) (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2|) (= (select |v_#valid_7| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_6|, #valid=|v_#valid_7|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, ULTIMATE.start_main_~#t_ids~0#1.offset=|v_ULTIMATE.start_main_~#t_ids~0#1.offset_2|, #length=|v_#length_5|, ULTIMATE.start_main_~#t_ids~0#1.base=|v_ULTIMATE.start_main_~#t_ids~0#1.base_2|, #valid=|v_#valid_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#t_ids~0#1.base, #valid, ULTIMATE.start_main_~#t_ids~0#1.offset, #length] {20451#true} is VALID [2022-02-20 20:41:09,224 INFO L290 TraceCheckUtils]: 26: Hoare triple {20451#true} [329] L-1-5-->L712: Formula: true InVars {} OutVars{ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_1|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_1|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_1|, ULTIMATE.start_main_#t~mem13#1=|v_ULTIMATE.start_main_#t~mem13#1_1|, ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_1|, ULTIMATE.start_main_~#t_ids~0#1.base=|v_ULTIMATE.start_main_~#t_ids~0#1.base_1|, ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_1|, ULTIMATE.start_main_#t~post12#1=|v_ULTIMATE.start_main_#t~post12#1_1|, ULTIMATE.start_main_#t~post8#1=|v_ULTIMATE.start_main_#t~post8#1_1|, ULTIMATE.start_main_~#t_ids~0#1.offset=|v_ULTIMATE.start_main_~#t_ids~0#1.offset_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet11#1, ULTIMATE.start_main_#t~mem13#1, ULTIMATE.start_main_#t~nondet10#1, ULTIMATE.start_main_~#t_ids~0#1.base, ULTIMATE.start_main_#t~pre9#1, ULTIMATE.start_main_#t~post12#1, ULTIMATE.start_main_#t~post8#1, ULTIMATE.start_main_~#t_ids~0#1.offset] {20451#true} is VALID [2022-02-20 20:41:09,224 INFO L290 TraceCheckUtils]: 25: Hoare triple {20451#true} [356] L-1-4-->L-1-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1] {20451#true} is VALID [2022-02-20 20:41:09,225 INFO L290 TraceCheckUtils]: 24: Hoare triple {20451#true} [429] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:09,225 INFO L290 TraceCheckUtils]: 23: Hoare triple {20451#true} [332] L698-7-->L-1-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:09,225 INFO L290 TraceCheckUtils]: 22: Hoare triple {20451#true} [419] L698-6-->L698-7: Formula: (= (select (select |v_#memory_int_12| |v_~#mutex~0.base_6|) (+ |v_~#mutex~0.offset_6| 16)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_6|, #memory_int=|v_#memory_int_12|, ~#mutex~0.base=|v_~#mutex~0.base_6|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_6|, #memory_int=|v_#memory_int_12|, ~#mutex~0.base=|v_~#mutex~0.base_6|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:09,225 INFO L290 TraceCheckUtils]: 21: Hoare triple {20451#true} [422] L698-5-->L698-6: Formula: (= (select (select |v_#memory_int_11| |v_~#mutex~0.base_5|) (+ |v_~#mutex~0.offset_5| 12)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_5|, #memory_int=|v_#memory_int_11|, ~#mutex~0.base=|v_~#mutex~0.base_5|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_5|, #memory_int=|v_#memory_int_11|, ~#mutex~0.base=|v_~#mutex~0.base_5|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:09,225 INFO L290 TraceCheckUtils]: 20: Hoare triple {20451#true} [396] L698-4-->L698-5: Formula: (= (select (select |v_#memory_int_10| |v_~#mutex~0.base_4|) (+ |v_~#mutex~0.offset_4| 8)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_4|, #memory_int=|v_#memory_int_10|, ~#mutex~0.base=|v_~#mutex~0.base_4|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_4|, #memory_int=|v_#memory_int_10|, ~#mutex~0.base=|v_~#mutex~0.base_4|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:09,225 INFO L290 TraceCheckUtils]: 19: Hoare triple {20451#true} [341] L698-3-->L698-4: Formula: (= (select (select |v_#memory_int_9| |v_~#mutex~0.base_3|) (+ |v_~#mutex~0.offset_3| 4)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_3|, #memory_int=|v_#memory_int_9|, ~#mutex~0.base=|v_~#mutex~0.base_3|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_3|, #memory_int=|v_#memory_int_9|, ~#mutex~0.base=|v_~#mutex~0.base_3|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:09,226 INFO L290 TraceCheckUtils]: 18: Hoare triple {20451#true} [418] L698-2-->L698-3: Formula: (= (select (select |v_#memory_int_8| |v_~#mutex~0.base_2|) |v_~#mutex~0.offset_2|) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_2|, #memory_int=|v_#memory_int_8|, ~#mutex~0.base=|v_~#mutex~0.base_2|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_2|, #memory_int=|v_#memory_int_8|, ~#mutex~0.base=|v_~#mutex~0.base_2|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:09,226 INFO L290 TraceCheckUtils]: 17: Hoare triple {20451#true} [395] L698-1-->L698-2: Formula: (and (= (select |v_#length_4| 4) 24) (= (select |v_#valid_5| 4) 1)) InVars {#length=|v_#length_4|, #valid=|v_#valid_5|} OutVars{#length=|v_#length_4|, #valid=|v_#valid_5|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:09,226 INFO L290 TraceCheckUtils]: 16: Hoare triple {20451#true} [397] L698-->L698-1: Formula: (and (= 4 |v_~#mutex~0.base_1|) (= |v_~#mutex~0.offset_1| 0)) InVars {} OutVars{~#mutex~0.base=|v_~#mutex~0.base_1|, ~#mutex~0.offset=|v_~#mutex~0.offset_1|} AuxVars[] AssignedVars[~#mutex~0.base, ~#mutex~0.offset] {20451#true} is VALID [2022-02-20 20:41:09,226 INFO L290 TraceCheckUtils]: 15: Hoare triple {20451#true} [370] L696-6-->L698: Formula: (= v_~global~0_1 0) InVars {} OutVars{~global~0=v_~global~0_1} AuxVars[] AssignedVars[~global~0] {20451#true} is VALID [2022-02-20 20:41:09,226 INFO L290 TraceCheckUtils]: 14: Hoare triple {20451#true} [361] L696-5-->L696-6: Formula: (= (select (select |v_#memory_int_7| |v_~#__global_lock~0.base_6|) (+ 16 |v_~#__global_lock~0.offset_6|)) 0) InVars {#memory_int=|v_#memory_int_7|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_6|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_6|} OutVars{#memory_int=|v_#memory_int_7|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_6|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_6|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:09,226 INFO L290 TraceCheckUtils]: 13: Hoare triple {20451#true} [413] L696-4-->L696-5: Formula: (= (select (select |v_#memory_int_6| |v_~#__global_lock~0.base_5|) (+ |v_~#__global_lock~0.offset_5| 12)) 0) InVars {#memory_int=|v_#memory_int_6|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_5|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_5|} OutVars{#memory_int=|v_#memory_int_6|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_5|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_5|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:09,227 INFO L290 TraceCheckUtils]: 12: Hoare triple {20451#true} [430] L696-3-->L696-4: Formula: (= (select (select |v_#memory_int_5| |v_~#__global_lock~0.base_4|) (+ |v_~#__global_lock~0.offset_4| 8)) 0) InVars {#memory_int=|v_#memory_int_5|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_4|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_4|} OutVars{#memory_int=|v_#memory_int_5|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_4|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_4|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:09,227 INFO L290 TraceCheckUtils]: 11: Hoare triple {20451#true} [334] L696-2-->L696-3: Formula: (= (select (select |v_#memory_int_4| |v_~#__global_lock~0.base_3|) (+ |v_~#__global_lock~0.offset_3| 4)) 0) InVars {#memory_int=|v_#memory_int_4|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_3|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_3|} OutVars{#memory_int=|v_#memory_int_4|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_3|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_3|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:09,227 INFO L290 TraceCheckUtils]: 10: Hoare triple {20451#true} [408] L696-1-->L696-2: Formula: (= (select (select |v_#memory_int_3| |v_~#__global_lock~0.base_2|) |v_~#__global_lock~0.offset_2|) 0) InVars {#memory_int=|v_#memory_int_3|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_2|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_2|} OutVars{#memory_int=|v_#memory_int_3|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_2|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_2|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:09,227 INFO L290 TraceCheckUtils]: 9: Hoare triple {20451#true} [357] L696-->L696-1: Formula: (and (= (select |v_#length_3| 3) 24) (= (select |v_#valid_4| 3) 1)) InVars {#length=|v_#length_3|, #valid=|v_#valid_4|} OutVars{#length=|v_#length_3|, #valid=|v_#valid_4|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:09,227 INFO L290 TraceCheckUtils]: 8: Hoare triple {20451#true} [375] L690-4-->L696: Formula: (and (= 3 |v_~#__global_lock~0.base_1|) (= |v_~#__global_lock~0.offset_1| 0)) InVars {} OutVars{~#__global_lock~0.base=|v_~#__global_lock~0.base_1|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_1|} AuxVars[] AssignedVars[~#__global_lock~0.offset, ~#__global_lock~0.base] {20451#true} is VALID [2022-02-20 20:41:09,227 INFO L290 TraceCheckUtils]: 7: Hoare triple {20451#true} [407] L690-3-->L690-4: Formula: (and (= (select |v_#length_2| 2) 13) (= (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[] {20451#true} is VALID [2022-02-20 20:41:09,227 INFO L290 TraceCheckUtils]: 6: Hoare triple {20451#true} [340] L690-2-->L690-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[] {20451#true} is VALID [2022-02-20 20:41:09,228 INFO L290 TraceCheckUtils]: 5: Hoare triple {20451#true} [327] L690-1-->L690-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[] {20451#true} is VALID [2022-02-20 20:41:09,228 INFO L290 TraceCheckUtils]: 4: Hoare triple {20451#true} [366] L690-->L690-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[] {20451#true} is VALID [2022-02-20 20:41:09,228 INFO L290 TraceCheckUtils]: 3: Hoare triple {20451#true} [427] L-1-2-->L690: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:09,228 INFO L290 TraceCheckUtils]: 2: Hoare triple {20451#true} [424] L-1-1-->L-1-2: Formula: (= (select |v_#valid_1| 0) 0) InVars {#valid=|v_#valid_1|} OutVars{#valid=|v_#valid_1|} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:09,228 INFO L290 TraceCheckUtils]: 1: Hoare triple {20451#true} [351] L-1-->L-1-1: Formula: (and (= |v_#NULL.base_1| 0) (= |v_#NULL.offset_1| 0)) InVars {} OutVars{#NULL.offset=|v_#NULL.offset_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {20451#true} is VALID [2022-02-20 20:41:09,228 INFO L290 TraceCheckUtils]: 0: Hoare triple {20451#true} [420] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {20451#true} is VALID [2022-02-20 20:41:09,229 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 20:41:09,229 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1393381871] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 20:41:09,229 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 20:41:09,229 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5, 5] total 10 [2022-02-20 20:41:09,229 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [508335968] [2022-02-20 20:41:09,230 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 20:41:09,230 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 7.5) internal successors, (75), 10 states have internal predecessors, (75), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 53 [2022-02-20 20:41:09,230 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 20:41:09,231 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 7.5) internal successors, (75), 10 states have internal predecessors, (75), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:09,273 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 75 edges. 75 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:41:09,273 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-02-20 20:41:09,273 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 20:41:09,274 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-02-20 20:41:09,274 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=30, Invalid=60, Unknown=0, NotChecked=0, Total=90 [2022-02-20 20:41:09,275 INFO L499 CegarLoopForPetriNet]: Number of universal loopers: 120 out of 150 [2022-02-20 20:41:09,276 INFO L92 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 138 places, 110 transitions, 242 flow. Second operand has 10 states, 10 states have (on average 122.3) internal successors, (1223), 10 states have internal predecessors, (1223), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:09,276 INFO L101 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-02-20 20:41:09,277 INFO L102 encePairwiseOnDemand]: Number of universal subtrahend loopers: 120 of 150 [2022-02-20 20:41:09,277 INFO L74 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-02-20 20:41:09,363 INFO L129 PetriNetUnfolder]: 0/108 cut-off events. [2022-02-20 20:41:09,363 INFO L130 PetriNetUnfolder]: For 5/5 co-relation queries the response was YES. [2022-02-20 20:41:09,363 INFO L84 FinitePrefix]: Finished finitePrefix Result has 141 conditions, 108 events. 0/108 cut-off events. For 5/5 co-relation queries the response was YES. Maximal size of possible extension queue 3. Compared 93 event pairs, 0 based on Foata normal form. 2/110 useless extension candidates. Maximal degree in co-relation 0. Up to 4 conditions per place. [2022-02-20 20:41:09,364 INFO L132 encePairwiseOnDemand]: 145/150 looper letters, 9 selfloop transitions, 7 changer transitions 0/102 dead transitions. [2022-02-20 20:41:09,364 INFO L138 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 111 places, 102 transitions, 256 flow [2022-02-20 20:41:09,364 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 20:41:09,364 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 9 states. [2022-02-20 20:41:09,372 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 1098 transitions. [2022-02-20 20:41:09,372 INFO L544 CegarLoopForPetriNet]: DFA transition density 0.8133333333333334 [2022-02-20 20:41:09,372 INFO L72 ComplementDD]: Start complementDD. Operand 9 states and 1098 transitions. [2022-02-20 20:41:09,373 INFO L73 IsDeterministic]: Start isDeterministic. Operand 9 states and 1098 transitions. [2022-02-20 20:41:09,373 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-02-20 20:41:09,373 INFO L117 ReachableStatesCopy]: Start reachableStatesCopy. Operand 9 states and 1098 transitions. [2022-02-20 20:41:09,375 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends has 10 states, 9 states have (on average 122.0) internal successors, (1098), 9 states have internal predecessors, (1098), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:09,377 INFO L131 ReachableStatesCopy]: Finished reachableStatesCopy Result has 10 states, 10 states have (on average 150.0) internal successors, (1500), 10 states have internal predecessors, (1500), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:09,377 INFO L81 ComplementDD]: Finished complementDD. Result has 10 states, 10 states have (on average 150.0) internal successors, (1500), 10 states have internal predecessors, (1500), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:09,377 INFO L186 Difference]: Start difference. First operand has 138 places, 110 transitions, 242 flow. Second operand 9 states and 1098 transitions. [2022-02-20 20:41:09,378 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 111 places, 102 transitions, 256 flow [2022-02-20 20:41:09,379 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 110 places, 102 transitions, 252 flow, removed 1 selfloop flow, removed 1 redundant places. [2022-02-20 20:41:09,380 INFO L242 Difference]: Finished difference. Result has 110 places, 98 transitions, 226 flow [2022-02-20 20:41:09,380 INFO L317 CegarLoopForPetriNet]: {PETRI_ALPHABET=150, PETRI_DIFFERENCE_MINUEND_FLOW=208, PETRI_DIFFERENCE_MINUEND_PLACES=102, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=96, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=5, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=91, PETRI_DIFFERENCE_SUBTRAHEND_STATES=9, PETRI_FLOW=226, PETRI_PLACES=110, PETRI_TRANSITIONS=98} [2022-02-20 20:41:09,381 INFO L334 CegarLoopForPetriNet]: 136 programPoint places, -26 predicate places. [2022-02-20 20:41:09,381 INFO L111 iNet2FiniteAutomaton]: Start petriNet2FiniteAutomaton. Operand has 110 places, 98 transitions, 226 flow [2022-02-20 20:41:09,513 INFO L133 iNet2FiniteAutomaton]: Finished petriNet2FiniteAutomaton. Result has 8938 states, 8937 states have (on average 2.8036253776435047) internal successors, (25056), 8937 states have internal predecessors, (25056), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:09,535 INFO L78 Accepts]: Start accepts. Automaton has has 8938 states, 8937 states have (on average 2.8036253776435047) internal successors, (25056), 8937 states have internal predecessors, (25056), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 53 [2022-02-20 20:41:09,535 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 20:41:09,536 INFO L470 AbstractCegarLoop]: Abstraction has has 110 places, 98 transitions, 226 flow [2022-02-20 20:41:09,536 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 122.3) internal successors, (1223), 10 states have internal predecessors, (1223), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:09,536 INFO L246 CegarLoopForPetriNet]: Found error trace [2022-02-20 20:41:09,537 INFO L254 CegarLoopForPetriNet]: trace histogram [3, 3, 3, 3, 2, 2, 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] [2022-02-20 20:41:09,557 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-02-20 20:41:09,752 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 20:41:09,752 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0INUSE_VIOLATION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATION] === [2022-02-20 20:41:09,752 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:41:09,753 INFO L85 PathProgramCache]: Analyzing trace with hash 210109917, now seen corresponding path program 1 times [2022-02-20 20:41:09,753 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:41:09,753 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [888997722] [2022-02-20 20:41:09,753 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:41:09,753 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:41:09,770 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-02-20 20:41:09,770 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-02-20 20:41:09,795 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-02-20 20:41:09,801 INFO L138 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-02-20 20:41:09,803 INFO L628 BasicCegarLoop]: Counterexample is feasible [2022-02-20 20:41:09,804 INFO L764 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0INUSE_VIOLATION (1 of 2 remaining) [2022-02-20 20:41:09,804 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 2 remaining) [2022-02-20 20:41:09,804 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2022-02-20 20:41:09,804 INFO L732 BasicCegarLoop]: Path program histogram: [1, 1, 1] [2022-02-20 20:41:09,805 WARN L235 ceAbstractionStarter]: 2 thread instances were not sufficient, I will increase this number and restart the analysis [2022-02-20 20:41:09,805 INFO L534 ceAbstractionStarter]: Constructing petrified ICFG for 3 thread instances. [2022-02-20 20:41:09,829 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_#in~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,830 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_#in~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,830 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,830 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,830 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_#in~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,830 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_#in~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,830 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,830 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,831 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,831 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,831 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,831 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,831 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,831 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,831 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,832 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,832 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,832 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,832 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,832 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,832 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,833 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,833 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,833 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,833 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,833 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,833 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,834 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,834 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_#res#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,834 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_#res#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,835 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_#res#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,835 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_#res#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,835 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,835 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,835 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,835 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,836 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,836 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,840 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_#in~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,840 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_#in~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,841 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,841 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,841 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_#in~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,841 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_#in~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,841 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,841 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,841 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,842 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,842 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,842 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,842 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,842 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,842 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,843 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,843 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,843 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,843 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,843 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,844 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,844 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,844 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,844 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,844 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,845 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,845 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,845 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,845 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_#res#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,845 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_#res#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,845 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_#res#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,845 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_#res#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,846 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,846 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,846 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,846 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,846 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,847 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,847 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_#in~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,847 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_#in~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,848 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,848 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,848 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_#in~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,848 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_#in~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,848 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,848 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,848 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,849 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,849 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,849 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,849 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,849 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,849 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,850 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,850 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,850 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,850 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,850 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,851 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,851 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,851 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,851 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,851 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,851 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,852 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,852 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,852 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_#res#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,852 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_#res#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,852 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_#res#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,852 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_#res#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,853 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,853 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,853 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,853 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,854 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,854 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,855 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_#res#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,855 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,855 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,855 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,855 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_#res#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,855 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,856 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,856 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,856 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of3ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,856 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,857 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,857 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,857 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_#res#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,857 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,857 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,858 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_#res#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,858 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,858 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of3ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,858 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,859 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,859 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_#res#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,859 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,859 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,859 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,859 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_#res#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,859 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,860 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of3ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:09,879 INFO L148 ThreadInstanceAdder]: Constructed 3 joinOtherThreadTransitions. [2022-02-20 20:41:09,880 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 20:41:09,881 INFO L339 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mLoopAccelerationTechnique=FAST_UPR [2022-02-20 20:41:09,881 INFO L340 AbstractCegarLoop]: Starting to check reachability of 2 error locations. [2022-02-20 20:41:09,905 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 166 places, 185 transitions, 400 flow [2022-02-20 20:41:09,933 INFO L129 PetriNetUnfolder]: 50/391 cut-off events. [2022-02-20 20:41:09,933 INFO L130 PetriNetUnfolder]: For 19/19 co-relation queries the response was YES. [2022-02-20 20:41:09,934 INFO L84 FinitePrefix]: Finished finitePrefix Result has 419 conditions, 391 events. 50/391 cut-off events. For 19/19 co-relation queries the response was YES. Maximal size of possible extension queue 13. Compared 1391 event pairs, 1 based on Foata normal form. 0/333 useless extension candidates. Maximal degree in co-relation 265. Up to 16 conditions per place. [2022-02-20 20:41:09,935 INFO L82 GeneralOperation]: Start removeDead. Operand has 166 places, 185 transitions, 400 flow [2022-02-20 20:41:09,937 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 166 places, 185 transitions, 400 flow [2022-02-20 20:41:09,941 INFO L129 PetriNetUnfolder]: 6/92 cut-off events. [2022-02-20 20:41:09,941 INFO L130 PetriNetUnfolder]: For 0/0 co-relation queries the response was YES. [2022-02-20 20:41:09,941 INFO L246 CegarLoopForPetriNet]: Found error trace [2022-02-20 20:41:09,941 INFO L254 CegarLoopForPetriNet]: trace 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] [2022-02-20 20:41:09,941 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATION] === [2022-02-20 20:41:09,941 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:41:09,941 INFO L85 PathProgramCache]: Analyzing trace with hash 1164806739, now seen corresponding path program 1 times [2022-02-20 20:41:09,942 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:41:09,942 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [60777322] [2022-02-20 20:41:09,942 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:41:09,942 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:41:09,950 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:41:09,962 INFO L290 TraceCheckUtils]: 0: Hoare triple {169#true} [605] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {169#true} is VALID [2022-02-20 20:41:09,962 INFO L290 TraceCheckUtils]: 1: Hoare triple {169#true} [536] L-1-->L-1-1: Formula: (and (= |v_#NULL.base_1| 0) (= |v_#NULL.offset_1| 0)) InVars {} OutVars{#NULL.offset=|v_#NULL.offset_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {169#true} is VALID [2022-02-20 20:41:09,962 INFO L290 TraceCheckUtils]: 2: Hoare triple {169#true} [609] L-1-1-->L-1-2: Formula: (= (select |v_#valid_1| 0) 0) InVars {#valid=|v_#valid_1|} OutVars{#valid=|v_#valid_1|} AuxVars[] AssignedVars[] {169#true} is VALID [2022-02-20 20:41:09,962 INFO L290 TraceCheckUtils]: 3: Hoare triple {169#true} [612] L-1-2-->L690: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {169#true} is VALID [2022-02-20 20:41:09,962 INFO L290 TraceCheckUtils]: 4: Hoare triple {169#true} [551] L690-->L690-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[] {169#true} is VALID [2022-02-20 20:41:09,963 INFO L290 TraceCheckUtils]: 5: Hoare triple {169#true} [512] L690-1-->L690-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[] {169#true} is VALID [2022-02-20 20:41:09,963 INFO L290 TraceCheckUtils]: 6: Hoare triple {169#true} [525] L690-2-->L690-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[] {169#true} is VALID [2022-02-20 20:41:09,963 INFO L290 TraceCheckUtils]: 7: Hoare triple {169#true} [592] L690-3-->L690-4: Formula: (and (= (select |v_#length_2| 2) 13) (= (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[] {169#true} is VALID [2022-02-20 20:41:09,963 INFO L290 TraceCheckUtils]: 8: Hoare triple {169#true} [560] L690-4-->L696: Formula: (and (= 3 |v_~#__global_lock~0.base_1|) (= |v_~#__global_lock~0.offset_1| 0)) InVars {} OutVars{~#__global_lock~0.base=|v_~#__global_lock~0.base_1|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_1|} AuxVars[] AssignedVars[~#__global_lock~0.offset, ~#__global_lock~0.base] {169#true} is VALID [2022-02-20 20:41:09,963 INFO L290 TraceCheckUtils]: 9: Hoare triple {169#true} [542] L696-->L696-1: Formula: (and (= (select |v_#length_3| 3) 24) (= (select |v_#valid_4| 3) 1)) InVars {#length=|v_#length_3|, #valid=|v_#valid_4|} OutVars{#length=|v_#length_3|, #valid=|v_#valid_4|} AuxVars[] AssignedVars[] {169#true} is VALID [2022-02-20 20:41:09,963 INFO L290 TraceCheckUtils]: 10: Hoare triple {169#true} [593] L696-1-->L696-2: Formula: (= (select (select |v_#memory_int_3| |v_~#__global_lock~0.base_2|) |v_~#__global_lock~0.offset_2|) 0) InVars {#memory_int=|v_#memory_int_3|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_2|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_2|} OutVars{#memory_int=|v_#memory_int_3|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_2|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_2|} AuxVars[] AssignedVars[] {169#true} is VALID [2022-02-20 20:41:09,963 INFO L290 TraceCheckUtils]: 11: Hoare triple {169#true} [519] L696-2-->L696-3: Formula: (= (select (select |v_#memory_int_4| |v_~#__global_lock~0.base_3|) (+ |v_~#__global_lock~0.offset_3| 4)) 0) InVars {#memory_int=|v_#memory_int_4|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_3|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_3|} OutVars{#memory_int=|v_#memory_int_4|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_3|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_3|} AuxVars[] AssignedVars[] {169#true} is VALID [2022-02-20 20:41:09,964 INFO L290 TraceCheckUtils]: 12: Hoare triple {169#true} [615] L696-3-->L696-4: Formula: (= (select (select |v_#memory_int_5| |v_~#__global_lock~0.base_4|) (+ |v_~#__global_lock~0.offset_4| 8)) 0) InVars {#memory_int=|v_#memory_int_5|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_4|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_4|} OutVars{#memory_int=|v_#memory_int_5|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_4|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_4|} AuxVars[] AssignedVars[] {169#true} is VALID [2022-02-20 20:41:09,964 INFO L290 TraceCheckUtils]: 13: Hoare triple {169#true} [598] L696-4-->L696-5: Formula: (= (select (select |v_#memory_int_6| |v_~#__global_lock~0.base_5|) (+ |v_~#__global_lock~0.offset_5| 12)) 0) InVars {#memory_int=|v_#memory_int_6|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_5|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_5|} OutVars{#memory_int=|v_#memory_int_6|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_5|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_5|} AuxVars[] AssignedVars[] {169#true} is VALID [2022-02-20 20:41:09,964 INFO L290 TraceCheckUtils]: 14: Hoare triple {169#true} [546] L696-5-->L696-6: Formula: (= (select (select |v_#memory_int_7| |v_~#__global_lock~0.base_6|) (+ 16 |v_~#__global_lock~0.offset_6|)) 0) InVars {#memory_int=|v_#memory_int_7|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_6|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_6|} OutVars{#memory_int=|v_#memory_int_7|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_6|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_6|} AuxVars[] AssignedVars[] {169#true} is VALID [2022-02-20 20:41:09,964 INFO L290 TraceCheckUtils]: 15: Hoare triple {169#true} [555] L696-6-->L698: Formula: (= v_~global~0_1 0) InVars {} OutVars{~global~0=v_~global~0_1} AuxVars[] AssignedVars[~global~0] {169#true} is VALID [2022-02-20 20:41:09,964 INFO L290 TraceCheckUtils]: 16: Hoare triple {169#true} [582] L698-->L698-1: Formula: (and (= 4 |v_~#mutex~0.base_1|) (= |v_~#mutex~0.offset_1| 0)) InVars {} OutVars{~#mutex~0.base=|v_~#mutex~0.base_1|, ~#mutex~0.offset=|v_~#mutex~0.offset_1|} AuxVars[] AssignedVars[~#mutex~0.base, ~#mutex~0.offset] {169#true} is VALID [2022-02-20 20:41:09,964 INFO L290 TraceCheckUtils]: 17: Hoare triple {169#true} [580] L698-1-->L698-2: Formula: (and (= (select |v_#length_4| 4) 24) (= (select |v_#valid_5| 4) 1)) InVars {#length=|v_#length_4|, #valid=|v_#valid_5|} OutVars{#length=|v_#length_4|, #valid=|v_#valid_5|} AuxVars[] AssignedVars[] {169#true} is VALID [2022-02-20 20:41:09,965 INFO L290 TraceCheckUtils]: 18: Hoare triple {169#true} [603] L698-2-->L698-3: Formula: (= (select (select |v_#memory_int_8| |v_~#mutex~0.base_2|) |v_~#mutex~0.offset_2|) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_2|, #memory_int=|v_#memory_int_8|, ~#mutex~0.base=|v_~#mutex~0.base_2|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_2|, #memory_int=|v_#memory_int_8|, ~#mutex~0.base=|v_~#mutex~0.base_2|} AuxVars[] AssignedVars[] {169#true} is VALID [2022-02-20 20:41:09,965 INFO L290 TraceCheckUtils]: 19: Hoare triple {169#true} [526] L698-3-->L698-4: Formula: (= (select (select |v_#memory_int_9| |v_~#mutex~0.base_3|) (+ |v_~#mutex~0.offset_3| 4)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_3|, #memory_int=|v_#memory_int_9|, ~#mutex~0.base=|v_~#mutex~0.base_3|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_3|, #memory_int=|v_#memory_int_9|, ~#mutex~0.base=|v_~#mutex~0.base_3|} AuxVars[] AssignedVars[] {169#true} is VALID [2022-02-20 20:41:09,965 INFO L290 TraceCheckUtils]: 20: Hoare triple {169#true} [581] L698-4-->L698-5: Formula: (= (select (select |v_#memory_int_10| |v_~#mutex~0.base_4|) (+ |v_~#mutex~0.offset_4| 8)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_4|, #memory_int=|v_#memory_int_10|, ~#mutex~0.base=|v_~#mutex~0.base_4|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_4|, #memory_int=|v_#memory_int_10|, ~#mutex~0.base=|v_~#mutex~0.base_4|} AuxVars[] AssignedVars[] {169#true} is VALID [2022-02-20 20:41:09,965 INFO L290 TraceCheckUtils]: 21: Hoare triple {169#true} [607] L698-5-->L698-6: Formula: (= (select (select |v_#memory_int_11| |v_~#mutex~0.base_5|) (+ |v_~#mutex~0.offset_5| 12)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_5|, #memory_int=|v_#memory_int_11|, ~#mutex~0.base=|v_~#mutex~0.base_5|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_5|, #memory_int=|v_#memory_int_11|, ~#mutex~0.base=|v_~#mutex~0.base_5|} AuxVars[] AssignedVars[] {169#true} is VALID [2022-02-20 20:41:09,965 INFO L290 TraceCheckUtils]: 22: Hoare triple {169#true} [604] L698-6-->L698-7: Formula: (= (select (select |v_#memory_int_12| |v_~#mutex~0.base_6|) (+ |v_~#mutex~0.offset_6| 16)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_6|, #memory_int=|v_#memory_int_12|, ~#mutex~0.base=|v_~#mutex~0.base_6|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_6|, #memory_int=|v_#memory_int_12|, ~#mutex~0.base=|v_~#mutex~0.base_6|} AuxVars[] AssignedVars[] {169#true} is VALID [2022-02-20 20:41:09,965 INFO L290 TraceCheckUtils]: 23: Hoare triple {169#true} [517] L698-7-->L-1-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {169#true} is VALID [2022-02-20 20:41:09,965 INFO L290 TraceCheckUtils]: 24: Hoare triple {169#true} [614] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {169#true} is VALID [2022-02-20 20:41:09,966 INFO L290 TraceCheckUtils]: 25: Hoare triple {169#true} [541] L-1-4-->L-1-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1] {169#true} is VALID [2022-02-20 20:41:09,966 INFO L290 TraceCheckUtils]: 26: Hoare triple {169#true} [514] L-1-5-->L712: Formula: true InVars {} OutVars{ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_1|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_1|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_1|, ULTIMATE.start_main_#t~mem13#1=|v_ULTIMATE.start_main_#t~mem13#1_1|, ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_1|, ULTIMATE.start_main_~#t_ids~0#1.base=|v_ULTIMATE.start_main_~#t_ids~0#1.base_1|, ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_1|, ULTIMATE.start_main_#t~post12#1=|v_ULTIMATE.start_main_#t~post12#1_1|, ULTIMATE.start_main_#t~post8#1=|v_ULTIMATE.start_main_#t~post8#1_1|, ULTIMATE.start_main_~#t_ids~0#1.offset=|v_ULTIMATE.start_main_~#t_ids~0#1.offset_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet11#1, ULTIMATE.start_main_#t~mem13#1, ULTIMATE.start_main_#t~nondet10#1, ULTIMATE.start_main_~#t_ids~0#1.base, ULTIMATE.start_main_#t~pre9#1, ULTIMATE.start_main_#t~post12#1, ULTIMATE.start_main_#t~post8#1, ULTIMATE.start_main_~#t_ids~0#1.offset] {169#true} is VALID [2022-02-20 20:41:09,966 INFO L290 TraceCheckUtils]: 27: Hoare triple {169#true} [562] L712-->L712-1: Formula: (and (= (store |v_#length_6| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2| 40000) |v_#length_5|) (= |v_#valid_6| (store |v_#valid_7| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2| 1)) (= |v_ULTIMATE.start_main_~#t_ids~0#1.offset_2| 0) (not (= |v_ULTIMATE.start_main_~#t_ids~0#1.base_2| 0)) (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2|) (= (select |v_#valid_7| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_6|, #valid=|v_#valid_7|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, ULTIMATE.start_main_~#t_ids~0#1.offset=|v_ULTIMATE.start_main_~#t_ids~0#1.offset_2|, #length=|v_#length_5|, ULTIMATE.start_main_~#t_ids~0#1.base=|v_ULTIMATE.start_main_~#t_ids~0#1.base_2|, #valid=|v_#valid_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#t_ids~0#1.base, #valid, ULTIMATE.start_main_~#t_ids~0#1.offset, #length] {169#true} is VALID [2022-02-20 20:41:09,966 INFO L290 TraceCheckUtils]: 28: Hoare triple {169#true} [568] L712-1-->L712-13: Formula: (= |v_ULTIMATE.start_main_~i~0#1_2| 0) InVars {} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {171#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 20:41:09,967 INFO L290 TraceCheckUtils]: 29: Hoare triple {171#(= |ULTIMATE.start_main_~i~0#1| 0)} [510] L712-13-->L712-14: Formula: (not (< |v_ULTIMATE.start_main_~i~0#1_3| 10000)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_3|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_3|} AuxVars[] AssignedVars[] {170#false} is VALID [2022-02-20 20:41:09,967 INFO L290 TraceCheckUtils]: 30: Hoare triple {170#false} [597] L712-14-->L713: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {170#false} is VALID [2022-02-20 20:41:09,967 INFO L290 TraceCheckUtils]: 31: Hoare triple {170#false} [585] L713-->L700: Formula: true InVars {} OutVars{ULTIMATE.start_lock_#t~nondet3#1=|v_ULTIMATE.start_lock_#t~nondet3#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_lock_#t~nondet3#1] {170#false} is VALID [2022-02-20 20:41:09,967 INFO L290 TraceCheckUtils]: 32: Hoare triple {170#false} [554] L700-->L700-1: Formula: (let ((.cse0 (select |v_#pthreadsMutex_2| |v_~#mutex~0.base_7|))) (and (= |v_ULTIMATE.start_lock_#t~nondet3#1_2| 0) (= |v_#pthreadsMutex_1| (store |v_#pthreadsMutex_2| |v_~#mutex~0.base_7| (store .cse0 |v_~#mutex~0.offset_7| 1))) (= (select .cse0 |v_~#mutex~0.offset_7|) 0))) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_7|, #pthreadsMutex=|v_#pthreadsMutex_2|, ~#mutex~0.base=|v_~#mutex~0.base_7|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_7|, #pthreadsMutex=|v_#pthreadsMutex_1|, ~#mutex~0.base=|v_~#mutex~0.base_7|, ULTIMATE.start_lock_#t~nondet3#1=|v_ULTIMATE.start_lock_#t~nondet3#1_2|} AuxVars[] AssignedVars[#pthreadsMutex, ULTIMATE.start_lock_#t~nondet3#1] {170#false} is VALID [2022-02-20 20:41:09,967 INFO L290 TraceCheckUtils]: 33: Hoare triple {170#false} [561] L700-1-->L699: Formula: true InVars {} OutVars{ULTIMATE.start_lock_#t~nondet3#1=|v_ULTIMATE.start_lock_#t~nondet3#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_lock_#t~nondet3#1] {170#false} is VALID [2022-02-20 20:41:09,967 INFO L290 TraceCheckUtils]: 34: Hoare triple {170#false} [538] L699-->L714-7: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {170#false} is VALID [2022-02-20 20:41:09,968 INFO L290 TraceCheckUtils]: 35: Hoare triple {170#false} [556] L714-7-->L714-1: Formula: (let ((.cse0 (select |v_#pthreadsMutex_4| |v_~#__global_lock~0.base_7|))) (and (= |v_ULTIMATE.start_main_#t~nondet11#1_2| 0) (= (select .cse0 |v_~#__global_lock~0.offset_7|) 0) (= |v_#pthreadsMutex_3| (store |v_#pthreadsMutex_4| |v_~#__global_lock~0.base_7| (store .cse0 |v_~#__global_lock~0.offset_7| 1))))) InVars {#pthreadsMutex=|v_#pthreadsMutex_4|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_7|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_7|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_3|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_2|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_7|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_7|} AuxVars[] AssignedVars[#pthreadsMutex, ULTIMATE.start_main_#t~nondet11#1] {170#false} is VALID [2022-02-20 20:41:09,968 INFO L290 TraceCheckUtils]: 36: Hoare triple {170#false} [522] L714-1-->L714-2: 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] {170#false} is VALID [2022-02-20 20:41:09,968 INFO L290 TraceCheckUtils]: 37: Hoare triple {170#false} [572] L714-2-->L714-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {170#false} is VALID [2022-02-20 20:41:09,968 INFO L290 TraceCheckUtils]: 38: Hoare triple {170#false} [508] L714-3-->L714-4: Formula: (= (ite (= v_~global~0_2 0) 1 0) |v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_1|) InVars {~global~0=v_~global~0_2} OutVars{ULTIMATE.start___VERIFIER_assert_#in~cond#1=|v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_1|, ~global~0=v_~global~0_2} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_#in~cond#1] {170#false} is VALID [2022-02-20 20:41:09,968 INFO L290 TraceCheckUtils]: 39: Hoare triple {170#false} [528] L714-4-->L691: Formula: true InVars {} OutVars{ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_1|} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_~cond#1] {170#false} is VALID [2022-02-20 20:41:09,968 INFO L290 TraceCheckUtils]: 40: Hoare triple {170#false} [534] L691-->L691-1: Formula: (= |v_ULTIMATE.start___VERIFIER_assert_~cond#1_2| |v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_2|) InVars {ULTIMATE.start___VERIFIER_assert_#in~cond#1=|v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_2|} OutVars{ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_2|, ULTIMATE.start___VERIFIER_assert_#in~cond#1=|v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_2|} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_~cond#1] {170#false} is VALID [2022-02-20 20:41:09,968 INFO L290 TraceCheckUtils]: 41: Hoare triple {170#false} [618] L691-1-->L691-2: Formula: (= |v_ULTIMATE.start___VERIFIER_assert_~cond#1_3| 0) InVars {ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_3|} OutVars{ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_3|} AuxVars[] AssignedVars[] {170#false} is VALID [2022-02-20 20:41:09,969 INFO L290 TraceCheckUtils]: 42: Hoare triple {170#false} [530] L691-2-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {170#false} is VALID [2022-02-20 20:41:09,969 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 20:41:09,969 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 20:41:09,969 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [60777322] [2022-02-20 20:41:09,969 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [60777322] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 20:41:09,969 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 20:41:09,970 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 20:41:09,970 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [282084304] [2022-02-20 20:41:09,970 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 20:41:09,970 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 14.333333333333334) internal successors, (43), 3 states have internal predecessors, (43), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 43 [2022-02-20 20:41:09,970 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 20:41:09,971 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 14.333333333333334) internal successors, (43), 3 states have internal predecessors, (43), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:09,993 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:41:09,993 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 20:41:09,993 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 20:41:09,994 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 20:41:09,994 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 20:41:09,994 INFO L499 CegarLoopForPetriNet]: Number of universal loopers: 148 out of 185 [2022-02-20 20:41:09,995 INFO L92 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 166 places, 185 transitions, 400 flow. Second operand has 3 states, 3 states have (on average 149.0) internal successors, (447), 3 states have internal predecessors, (447), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:09,995 INFO L101 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-02-20 20:41:09,995 INFO L102 encePairwiseOnDemand]: Number of universal subtrahend loopers: 148 of 185 [2022-02-20 20:41:09,995 INFO L74 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-02-20 20:41:10,051 INFO L129 PetriNetUnfolder]: 7/323 cut-off events. [2022-02-20 20:41:10,051 INFO L130 PetriNetUnfolder]: For 49/91 co-relation queries the response was YES. [2022-02-20 20:41:10,052 INFO L84 FinitePrefix]: Finished finitePrefix Result has 386 conditions, 323 events. 7/323 cut-off events. For 49/91 co-relation queries the response was YES. Maximal size of possible extension queue 9. Compared 1018 event pairs, 1 based on Foata normal form. 174/483 useless extension candidates. Maximal degree in co-relation 237. Up to 30 conditions per place. [2022-02-20 20:41:10,053 INFO L132 encePairwiseOnDemand]: 159/185 looper letters, 12 selfloop transitions, 2 changer transitions 24/165 dead transitions. [2022-02-20 20:41:10,053 INFO L138 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 167 places, 165 transitions, 394 flow [2022-02-20 20:41:10,053 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 20:41:10,053 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2022-02-20 20:41:10,057 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 492 transitions. [2022-02-20 20:41:10,057 INFO L544 CegarLoopForPetriNet]: DFA transition density 0.8864864864864865 [2022-02-20 20:41:10,057 INFO L72 ComplementDD]: Start complementDD. Operand 3 states and 492 transitions. [2022-02-20 20:41:10,057 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3 states and 492 transitions. [2022-02-20 20:41:10,057 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-02-20 20:41:10,058 INFO L117 ReachableStatesCopy]: Start reachableStatesCopy. Operand 3 states and 492 transitions. [2022-02-20 20:41:10,058 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends has 4 states, 3 states have (on average 164.0) internal successors, (492), 3 states have internal predecessors, (492), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:10,059 INFO L131 ReachableStatesCopy]: Finished reachableStatesCopy Result has 4 states, 4 states have (on average 185.0) internal successors, (740), 4 states have internal predecessors, (740), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:10,060 INFO L81 ComplementDD]: Finished complementDD. Result has 4 states, 4 states have (on average 185.0) internal successors, (740), 4 states have internal predecessors, (740), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:10,060 INFO L186 Difference]: Start difference. First operand has 166 places, 185 transitions, 400 flow. Second operand 3 states and 492 transitions. [2022-02-20 20:41:10,060 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 167 places, 165 transitions, 394 flow [2022-02-20 20:41:10,102 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 167 places, 165 transitions, 394 flow, removed 0 selfloop flow, removed 0 redundant places. [2022-02-20 20:41:10,104 INFO L242 Difference]: Finished difference. Result has 168 places, 138 transitions, 307 flow [2022-02-20 20:41:10,104 INFO L317 CegarLoopForPetriNet]: {PETRI_ALPHABET=185, PETRI_DIFFERENCE_MINUEND_FLOW=352, PETRI_DIFFERENCE_MINUEND_PLACES=165, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=161, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=159, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=307, PETRI_PLACES=168, PETRI_TRANSITIONS=138} [2022-02-20 20:41:10,105 INFO L334 CegarLoopForPetriNet]: 166 programPoint places, 2 predicate places. [2022-02-20 20:41:10,105 INFO L111 iNet2FiniteAutomaton]: Start petriNet2FiniteAutomaton. Operand has 168 places, 138 transitions, 307 flow [2022-02-20 20:41:22,692 INFO L133 iNet2FiniteAutomaton]: Finished petriNet2FiniteAutomaton. Result has 568322 states, 568318 states have (on average 3.819879011398548) internal successors, (2170906), 568321 states have internal predecessors, (2170906), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:24,487 INFO L78 Accepts]: Start accepts. Automaton has has 568322 states, 568318 states have (on average 3.819879011398548) internal successors, (2170906), 568321 states have internal predecessors, (2170906), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 43 [2022-02-20 20:41:24,488 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 20:41:24,488 INFO L470 AbstractCegarLoop]: Abstraction has has 168 places, 138 transitions, 307 flow [2022-02-20 20:41:24,488 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 149.0) internal successors, (447), 3 states have internal predecessors, (447), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:24,489 INFO L246 CegarLoopForPetriNet]: Found error trace [2022-02-20 20:41:24,489 INFO L254 CegarLoopForPetriNet]: trace 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] [2022-02-20 20:41:24,489 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2022-02-20 20:41:24,490 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATION] === [2022-02-20 20:41:24,494 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:41:24,494 INFO L85 PathProgramCache]: Analyzing trace with hash -1762072419, now seen corresponding path program 1 times [2022-02-20 20:41:24,494 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:41:24,494 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [771200822] [2022-02-20 20:41:24,495 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:41:24,495 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:41:24,512 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:41:24,540 INFO L290 TraceCheckUtils]: 0: Hoare triple {568497#true} [605] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,541 INFO L290 TraceCheckUtils]: 1: Hoare triple {568497#true} [536] L-1-->L-1-1: Formula: (and (= |v_#NULL.base_1| 0) (= |v_#NULL.offset_1| 0)) InVars {} OutVars{#NULL.offset=|v_#NULL.offset_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {568497#true} is VALID [2022-02-20 20:41:24,541 INFO L290 TraceCheckUtils]: 2: Hoare triple {568497#true} [609] L-1-1-->L-1-2: Formula: (= (select |v_#valid_1| 0) 0) InVars {#valid=|v_#valid_1|} OutVars{#valid=|v_#valid_1|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,541 INFO L290 TraceCheckUtils]: 3: Hoare triple {568497#true} [612] L-1-2-->L690: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,541 INFO L290 TraceCheckUtils]: 4: Hoare triple {568497#true} [551] L690-->L690-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[] {568497#true} is VALID [2022-02-20 20:41:24,541 INFO L290 TraceCheckUtils]: 5: Hoare triple {568497#true} [512] L690-1-->L690-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[] {568497#true} is VALID [2022-02-20 20:41:24,542 INFO L290 TraceCheckUtils]: 6: Hoare triple {568497#true} [525] L690-2-->L690-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[] {568497#true} is VALID [2022-02-20 20:41:24,542 INFO L290 TraceCheckUtils]: 7: Hoare triple {568497#true} [592] L690-3-->L690-4: Formula: (and (= (select |v_#length_2| 2) 13) (= (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[] {568497#true} is VALID [2022-02-20 20:41:24,542 INFO L290 TraceCheckUtils]: 8: Hoare triple {568497#true} [560] L690-4-->L696: Formula: (and (= 3 |v_~#__global_lock~0.base_1|) (= |v_~#__global_lock~0.offset_1| 0)) InVars {} OutVars{~#__global_lock~0.base=|v_~#__global_lock~0.base_1|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_1|} AuxVars[] AssignedVars[~#__global_lock~0.offset, ~#__global_lock~0.base] {568497#true} is VALID [2022-02-20 20:41:24,542 INFO L290 TraceCheckUtils]: 9: Hoare triple {568497#true} [542] L696-->L696-1: Formula: (and (= (select |v_#length_3| 3) 24) (= (select |v_#valid_4| 3) 1)) InVars {#length=|v_#length_3|, #valid=|v_#valid_4|} OutVars{#length=|v_#length_3|, #valid=|v_#valid_4|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,542 INFO L290 TraceCheckUtils]: 10: Hoare triple {568497#true} [593] L696-1-->L696-2: Formula: (= (select (select |v_#memory_int_3| |v_~#__global_lock~0.base_2|) |v_~#__global_lock~0.offset_2|) 0) InVars {#memory_int=|v_#memory_int_3|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_2|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_2|} OutVars{#memory_int=|v_#memory_int_3|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_2|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_2|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,542 INFO L290 TraceCheckUtils]: 11: Hoare triple {568497#true} [519] L696-2-->L696-3: Formula: (= (select (select |v_#memory_int_4| |v_~#__global_lock~0.base_3|) (+ |v_~#__global_lock~0.offset_3| 4)) 0) InVars {#memory_int=|v_#memory_int_4|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_3|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_3|} OutVars{#memory_int=|v_#memory_int_4|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_3|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_3|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,543 INFO L290 TraceCheckUtils]: 12: Hoare triple {568497#true} [615] L696-3-->L696-4: Formula: (= (select (select |v_#memory_int_5| |v_~#__global_lock~0.base_4|) (+ |v_~#__global_lock~0.offset_4| 8)) 0) InVars {#memory_int=|v_#memory_int_5|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_4|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_4|} OutVars{#memory_int=|v_#memory_int_5|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_4|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_4|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,543 INFO L290 TraceCheckUtils]: 13: Hoare triple {568497#true} [598] L696-4-->L696-5: Formula: (= (select (select |v_#memory_int_6| |v_~#__global_lock~0.base_5|) (+ |v_~#__global_lock~0.offset_5| 12)) 0) InVars {#memory_int=|v_#memory_int_6|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_5|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_5|} OutVars{#memory_int=|v_#memory_int_6|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_5|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_5|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,543 INFO L290 TraceCheckUtils]: 14: Hoare triple {568497#true} [546] L696-5-->L696-6: Formula: (= (select (select |v_#memory_int_7| |v_~#__global_lock~0.base_6|) (+ 16 |v_~#__global_lock~0.offset_6|)) 0) InVars {#memory_int=|v_#memory_int_7|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_6|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_6|} OutVars{#memory_int=|v_#memory_int_7|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_6|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_6|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,543 INFO L290 TraceCheckUtils]: 15: Hoare triple {568497#true} [555] L696-6-->L698: Formula: (= v_~global~0_1 0) InVars {} OutVars{~global~0=v_~global~0_1} AuxVars[] AssignedVars[~global~0] {568497#true} is VALID [2022-02-20 20:41:24,543 INFO L290 TraceCheckUtils]: 16: Hoare triple {568497#true} [582] L698-->L698-1: Formula: (and (= 4 |v_~#mutex~0.base_1|) (= |v_~#mutex~0.offset_1| 0)) InVars {} OutVars{~#mutex~0.base=|v_~#mutex~0.base_1|, ~#mutex~0.offset=|v_~#mutex~0.offset_1|} AuxVars[] AssignedVars[~#mutex~0.base, ~#mutex~0.offset] {568497#true} is VALID [2022-02-20 20:41:24,544 INFO L290 TraceCheckUtils]: 17: Hoare triple {568497#true} [580] L698-1-->L698-2: Formula: (and (= (select |v_#length_4| 4) 24) (= (select |v_#valid_5| 4) 1)) InVars {#length=|v_#length_4|, #valid=|v_#valid_5|} OutVars{#length=|v_#length_4|, #valid=|v_#valid_5|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,544 INFO L290 TraceCheckUtils]: 18: Hoare triple {568497#true} [603] L698-2-->L698-3: Formula: (= (select (select |v_#memory_int_8| |v_~#mutex~0.base_2|) |v_~#mutex~0.offset_2|) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_2|, #memory_int=|v_#memory_int_8|, ~#mutex~0.base=|v_~#mutex~0.base_2|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_2|, #memory_int=|v_#memory_int_8|, ~#mutex~0.base=|v_~#mutex~0.base_2|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,544 INFO L290 TraceCheckUtils]: 19: Hoare triple {568497#true} [526] L698-3-->L698-4: Formula: (= (select (select |v_#memory_int_9| |v_~#mutex~0.base_3|) (+ |v_~#mutex~0.offset_3| 4)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_3|, #memory_int=|v_#memory_int_9|, ~#mutex~0.base=|v_~#mutex~0.base_3|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_3|, #memory_int=|v_#memory_int_9|, ~#mutex~0.base=|v_~#mutex~0.base_3|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,544 INFO L290 TraceCheckUtils]: 20: Hoare triple {568497#true} [581] L698-4-->L698-5: Formula: (= (select (select |v_#memory_int_10| |v_~#mutex~0.base_4|) (+ |v_~#mutex~0.offset_4| 8)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_4|, #memory_int=|v_#memory_int_10|, ~#mutex~0.base=|v_~#mutex~0.base_4|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_4|, #memory_int=|v_#memory_int_10|, ~#mutex~0.base=|v_~#mutex~0.base_4|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,544 INFO L290 TraceCheckUtils]: 21: Hoare triple {568497#true} [607] L698-5-->L698-6: Formula: (= (select (select |v_#memory_int_11| |v_~#mutex~0.base_5|) (+ |v_~#mutex~0.offset_5| 12)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_5|, #memory_int=|v_#memory_int_11|, ~#mutex~0.base=|v_~#mutex~0.base_5|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_5|, #memory_int=|v_#memory_int_11|, ~#mutex~0.base=|v_~#mutex~0.base_5|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,544 INFO L290 TraceCheckUtils]: 22: Hoare triple {568497#true} [604] L698-6-->L698-7: Formula: (= (select (select |v_#memory_int_12| |v_~#mutex~0.base_6|) (+ |v_~#mutex~0.offset_6| 16)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_6|, #memory_int=|v_#memory_int_12|, ~#mutex~0.base=|v_~#mutex~0.base_6|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_6|, #memory_int=|v_#memory_int_12|, ~#mutex~0.base=|v_~#mutex~0.base_6|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,545 INFO L290 TraceCheckUtils]: 23: Hoare triple {568497#true} [517] L698-7-->L-1-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,545 INFO L290 TraceCheckUtils]: 24: Hoare triple {568497#true} [614] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,545 INFO L290 TraceCheckUtils]: 25: Hoare triple {568497#true} [541] L-1-4-->L-1-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1] {568497#true} is VALID [2022-02-20 20:41:24,545 INFO L290 TraceCheckUtils]: 26: Hoare triple {568497#true} [514] L-1-5-->L712: Formula: true InVars {} OutVars{ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_1|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_1|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_1|, ULTIMATE.start_main_#t~mem13#1=|v_ULTIMATE.start_main_#t~mem13#1_1|, ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_1|, ULTIMATE.start_main_~#t_ids~0#1.base=|v_ULTIMATE.start_main_~#t_ids~0#1.base_1|, ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_1|, ULTIMATE.start_main_#t~post12#1=|v_ULTIMATE.start_main_#t~post12#1_1|, ULTIMATE.start_main_#t~post8#1=|v_ULTIMATE.start_main_#t~post8#1_1|, ULTIMATE.start_main_~#t_ids~0#1.offset=|v_ULTIMATE.start_main_~#t_ids~0#1.offset_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet11#1, ULTIMATE.start_main_#t~mem13#1, ULTIMATE.start_main_#t~nondet10#1, ULTIMATE.start_main_~#t_ids~0#1.base, ULTIMATE.start_main_#t~pre9#1, ULTIMATE.start_main_#t~post12#1, ULTIMATE.start_main_#t~post8#1, ULTIMATE.start_main_~#t_ids~0#1.offset] {568497#true} is VALID [2022-02-20 20:41:24,545 INFO L290 TraceCheckUtils]: 27: Hoare triple {568497#true} [562] L712-->L712-1: Formula: (and (= (store |v_#length_6| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2| 40000) |v_#length_5|) (= |v_#valid_6| (store |v_#valid_7| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2| 1)) (= |v_ULTIMATE.start_main_~#t_ids~0#1.offset_2| 0) (not (= |v_ULTIMATE.start_main_~#t_ids~0#1.base_2| 0)) (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2|) (= (select |v_#valid_7| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_6|, #valid=|v_#valid_7|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, ULTIMATE.start_main_~#t_ids~0#1.offset=|v_ULTIMATE.start_main_~#t_ids~0#1.offset_2|, #length=|v_#length_5|, ULTIMATE.start_main_~#t_ids~0#1.base=|v_ULTIMATE.start_main_~#t_ids~0#1.base_2|, #valid=|v_#valid_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#t_ids~0#1.base, #valid, ULTIMATE.start_main_~#t_ids~0#1.offset, #length] {568497#true} is VALID [2022-02-20 20:41:24,546 INFO L290 TraceCheckUtils]: 28: Hoare triple {568497#true} [568] L712-1-->L712-13: Formula: (= |v_ULTIMATE.start_main_~i~0#1_2| 0) InVars {} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {568499#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 20:41:24,546 INFO L290 TraceCheckUtils]: 29: Hoare triple {568499#(= |ULTIMATE.start_main_~i~0#1| 0)} [511] L712-13-->L712-4: Formula: (< |v_ULTIMATE.start_main_~i~0#1_4| 10000) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_4|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_4|} AuxVars[] AssignedVars[] {568499#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 20:41:24,546 INFO L290 TraceCheckUtils]: 30: Hoare triple {568499#(= |ULTIMATE.start_main_~i~0#1| 0)} [529] L712-4-->L712-5: Formula: (= |v_ULTIMATE.start_main_#t~pre9#1_2| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre9#1] {568499#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 20:41:24,547 INFO L290 TraceCheckUtils]: 31: Hoare triple {568499#(= |ULTIMATE.start_main_~i~0#1| 0)} [547] L712-5-->L712-6: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] {568499#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 20:41:24,547 INFO L290 TraceCheckUtils]: 32: Hoare triple {568499#(= |ULTIMATE.start_main_~i~0#1| 0)} [552] L712-6-->L712-7: Formula: (= |v_#memory_int_13| (store |v_#memory_int_14| |v_ULTIMATE.start_main_~#t_ids~0#1.base_3| (store (select |v_#memory_int_14| |v_ULTIMATE.start_main_~#t_ids~0#1.base_3|) (+ |v_ULTIMATE.start_main_~#t_ids~0#1.offset_3| (* |v_ULTIMATE.start_main_~i~0#1_5| 4)) |v_ULTIMATE.start_main_#t~pre9#1_3|))) InVars {#memory_int=|v_#memory_int_14|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t_ids~0#1.offset=|v_ULTIMATE.start_main_~#t_ids~0#1.offset_3|, ULTIMATE.start_main_~#t_ids~0#1.base=|v_ULTIMATE.start_main_~#t_ids~0#1.base_3|, ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_3|} OutVars{#memory_int=|v_#memory_int_13|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t_ids~0#1.offset=|v_ULTIMATE.start_main_~#t_ids~0#1.offset_3|, ULTIMATE.start_main_~#t_ids~0#1.base=|v_ULTIMATE.start_main_~#t_ids~0#1.base_3|, ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_3|} AuxVars[] AssignedVars[#memory_int] {568499#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 20:41:24,548 INFO L290 TraceCheckUtils]: 33: Hoare triple {568499#(= |ULTIMATE.start_main_~i~0#1| 0)} [721] L712-7-->t_funENTRY: Formula: (and (= |v_t_funThread1of3ForFork0_#in~arg#1.offset_4| 0) (= |v_ULTIMATE.start_main_#t~pre9#1_14| v_t_funThread1of3ForFork0_thidvar0_2) (= |v_t_funThread1of3ForFork0_#in~arg#1.base_4| 0)) InVars {ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_14|} OutVars{ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_14|, t_funThread1of3ForFork0_#in~arg#1.base=|v_t_funThread1of3ForFork0_#in~arg#1.base_4|, t_funThread1of3ForFork0_lock_#t~nondet3#1=|v_t_funThread1of3ForFork0_lock_#t~nondet3#1_8|, t_funThread1of3ForFork0_thidvar0=v_t_funThread1of3ForFork0_thidvar0_2, t_funThread1of3ForFork0_#t~post7#1=|v_t_funThread1of3ForFork0_#t~post7#1_8|, t_funThread1of3ForFork0_#t~post5#1=|v_t_funThread1of3ForFork0_#t~post5#1_8|, t_funThread1of3ForFork0_#res#1.base=|v_t_funThread1of3ForFork0_#res#1.base_4|, t_funThread1of3ForFork0_#in~arg#1.offset=|v_t_funThread1of3ForFork0_#in~arg#1.offset_4|, t_funThread1of3ForFork0_#t~nondet4#1=|v_t_funThread1of3ForFork0_#t~nondet4#1_6|, t_funThread1of3ForFork0_#t~nondet6#1=|v_t_funThread1of3ForFork0_#t~nondet6#1_6|, t_funThread1of3ForFork0_#res#1.offset=|v_t_funThread1of3ForFork0_#res#1.offset_4|, t_funThread1of3ForFork0_~arg#1.offset=|v_t_funThread1of3ForFork0_~arg#1.offset_4|, t_funThread1of3ForFork0_~arg#1.base=|v_t_funThread1of3ForFork0_~arg#1.base_4|} AuxVars[] AssignedVars[t_funThread1of3ForFork0_#res#1.base, t_funThread1of3ForFork0_#in~arg#1.offset, t_funThread1of3ForFork0_#t~nondet4#1, t_funThread1of3ForFork0_#in~arg#1.base, t_funThread1of3ForFork0_lock_#t~nondet3#1, t_funThread1of3ForFork0_thidvar0, t_funThread1of3ForFork0_#t~nondet6#1, t_funThread1of3ForFork0_#res#1.offset, t_funThread1of3ForFork0_#t~post7#1, t_funThread1of3ForFork0_~arg#1.offset, t_funThread1of3ForFork0_~arg#1.base, t_funThread1of3ForFork0_#t~post5#1] {568499#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 20:41:24,548 INFO L290 TraceCheckUtils]: 34: Hoare triple {568499#(= |ULTIMATE.start_main_~i~0#1| 0)} [520] L712-8-->L712-9: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre9#1] {568499#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 20:41:24,548 INFO L290 TraceCheckUtils]: 35: Hoare triple {568499#(= |ULTIMATE.start_main_~i~0#1| 0)} [599] L712-9-->L712-10: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet10#1] {568499#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 20:41:24,549 INFO L290 TraceCheckUtils]: 36: Hoare triple {568499#(= |ULTIMATE.start_main_~i~0#1| 0)} [576] L712-10-->L712-11: Formula: (= |v_ULTIMATE.start_main_#t~post8#1_2| |v_ULTIMATE.start_main_~i~0#1_6|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_6|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_6|, ULTIMATE.start_main_#t~post8#1=|v_ULTIMATE.start_main_#t~post8#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post8#1] {568500#(= |ULTIMATE.start_main_#t~post8#1| 0)} is VALID [2022-02-20 20:41:24,549 INFO L290 TraceCheckUtils]: 37: Hoare triple {568500#(= |ULTIMATE.start_main_#t~post8#1| 0)} [594] L712-11-->L712-12: Formula: (= (+ |v_ULTIMATE.start_main_#t~post8#1_3| 1) |v_ULTIMATE.start_main_~i~0#1_7|) InVars {ULTIMATE.start_main_#t~post8#1=|v_ULTIMATE.start_main_#t~post8#1_3|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_7|, ULTIMATE.start_main_#t~post8#1=|v_ULTIMATE.start_main_#t~post8#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {568501#(<= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:41:24,550 INFO L290 TraceCheckUtils]: 38: Hoare triple {568501#(<= |ULTIMATE.start_main_~i~0#1| 1)} [613] L712-12-->L712-13: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post8#1=|v_ULTIMATE.start_main_#t~post8#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post8#1] {568501#(<= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:41:24,550 INFO L290 TraceCheckUtils]: 39: Hoare triple {568501#(<= |ULTIMATE.start_main_~i~0#1| 1)} [510] L712-13-->L712-14: Formula: (not (< |v_ULTIMATE.start_main_~i~0#1_3| 10000)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_3|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_3|} AuxVars[] AssignedVars[] {568498#false} is VALID [2022-02-20 20:41:24,550 INFO L290 TraceCheckUtils]: 40: Hoare triple {568498#false} [597] L712-14-->L713: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {568498#false} is VALID [2022-02-20 20:41:24,550 INFO L290 TraceCheckUtils]: 41: Hoare triple {568498#false} [585] L713-->L700: Formula: true InVars {} OutVars{ULTIMATE.start_lock_#t~nondet3#1=|v_ULTIMATE.start_lock_#t~nondet3#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_lock_#t~nondet3#1] {568498#false} is VALID [2022-02-20 20:41:24,551 INFO L290 TraceCheckUtils]: 42: Hoare triple {568498#false} [554] L700-->L700-1: Formula: (let ((.cse0 (select |v_#pthreadsMutex_2| |v_~#mutex~0.base_7|))) (and (= |v_ULTIMATE.start_lock_#t~nondet3#1_2| 0) (= |v_#pthreadsMutex_1| (store |v_#pthreadsMutex_2| |v_~#mutex~0.base_7| (store .cse0 |v_~#mutex~0.offset_7| 1))) (= (select .cse0 |v_~#mutex~0.offset_7|) 0))) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_7|, #pthreadsMutex=|v_#pthreadsMutex_2|, ~#mutex~0.base=|v_~#mutex~0.base_7|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_7|, #pthreadsMutex=|v_#pthreadsMutex_1|, ~#mutex~0.base=|v_~#mutex~0.base_7|, ULTIMATE.start_lock_#t~nondet3#1=|v_ULTIMATE.start_lock_#t~nondet3#1_2|} AuxVars[] AssignedVars[#pthreadsMutex, ULTIMATE.start_lock_#t~nondet3#1] {568498#false} is VALID [2022-02-20 20:41:24,551 INFO L290 TraceCheckUtils]: 43: Hoare triple {568498#false} [561] L700-1-->L699: Formula: true InVars {} OutVars{ULTIMATE.start_lock_#t~nondet3#1=|v_ULTIMATE.start_lock_#t~nondet3#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_lock_#t~nondet3#1] {568498#false} is VALID [2022-02-20 20:41:24,551 INFO L290 TraceCheckUtils]: 44: Hoare triple {568498#false} [538] L699-->L714-7: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {568498#false} is VALID [2022-02-20 20:41:24,551 INFO L290 TraceCheckUtils]: 45: Hoare triple {568498#false} [556] L714-7-->L714-1: Formula: (let ((.cse0 (select |v_#pthreadsMutex_4| |v_~#__global_lock~0.base_7|))) (and (= |v_ULTIMATE.start_main_#t~nondet11#1_2| 0) (= (select .cse0 |v_~#__global_lock~0.offset_7|) 0) (= |v_#pthreadsMutex_3| (store |v_#pthreadsMutex_4| |v_~#__global_lock~0.base_7| (store .cse0 |v_~#__global_lock~0.offset_7| 1))))) InVars {#pthreadsMutex=|v_#pthreadsMutex_4|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_7|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_7|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_3|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_2|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_7|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_7|} AuxVars[] AssignedVars[#pthreadsMutex, ULTIMATE.start_main_#t~nondet11#1] {568498#false} is VALID [2022-02-20 20:41:24,551 INFO L290 TraceCheckUtils]: 46: Hoare triple {568498#false} [522] L714-1-->L714-2: 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] {568498#false} is VALID [2022-02-20 20:41:24,552 INFO L290 TraceCheckUtils]: 47: Hoare triple {568498#false} [572] L714-2-->L714-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {568498#false} is VALID [2022-02-20 20:41:24,552 INFO L290 TraceCheckUtils]: 48: Hoare triple {568498#false} [508] L714-3-->L714-4: Formula: (= (ite (= v_~global~0_2 0) 1 0) |v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_1|) InVars {~global~0=v_~global~0_2} OutVars{ULTIMATE.start___VERIFIER_assert_#in~cond#1=|v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_1|, ~global~0=v_~global~0_2} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_#in~cond#1] {568498#false} is VALID [2022-02-20 20:41:24,552 INFO L290 TraceCheckUtils]: 49: Hoare triple {568498#false} [528] L714-4-->L691: Formula: true InVars {} OutVars{ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_1|} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_~cond#1] {568498#false} is VALID [2022-02-20 20:41:24,552 INFO L290 TraceCheckUtils]: 50: Hoare triple {568498#false} [534] L691-->L691-1: Formula: (= |v_ULTIMATE.start___VERIFIER_assert_~cond#1_2| |v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_2|) InVars {ULTIMATE.start___VERIFIER_assert_#in~cond#1=|v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_2|} OutVars{ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_2|, ULTIMATE.start___VERIFIER_assert_#in~cond#1=|v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_2|} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_~cond#1] {568498#false} is VALID [2022-02-20 20:41:24,552 INFO L290 TraceCheckUtils]: 51: Hoare triple {568498#false} [618] L691-1-->L691-2: Formula: (= |v_ULTIMATE.start___VERIFIER_assert_~cond#1_3| 0) InVars {ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_3|} OutVars{ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_3|} AuxVars[] AssignedVars[] {568498#false} is VALID [2022-02-20 20:41:24,553 INFO L290 TraceCheckUtils]: 52: Hoare triple {568498#false} [530] L691-2-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {568498#false} is VALID [2022-02-20 20:41:24,553 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 20:41:24,553 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 20:41:24,553 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [771200822] [2022-02-20 20:41:24,554 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [771200822] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 20:41:24,556 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1497070346] [2022-02-20 20:41:24,556 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:41:24,556 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 20:41:24,557 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 20:41:24,564 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 20:41:24,565 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-02-20 20:41:24,633 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:41:24,634 INFO L263 TraceCheckSpWp]: Trace formula consists of 131 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-20 20:41:24,644 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:41:24,646 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 20:41:24,768 INFO L290 TraceCheckUtils]: 0: Hoare triple {568497#true} [605] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,769 INFO L290 TraceCheckUtils]: 1: Hoare triple {568497#true} [536] L-1-->L-1-1: Formula: (and (= |v_#NULL.base_1| 0) (= |v_#NULL.offset_1| 0)) InVars {} OutVars{#NULL.offset=|v_#NULL.offset_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {568497#true} is VALID [2022-02-20 20:41:24,769 INFO L290 TraceCheckUtils]: 2: Hoare triple {568497#true} [609] L-1-1-->L-1-2: Formula: (= (select |v_#valid_1| 0) 0) InVars {#valid=|v_#valid_1|} OutVars{#valid=|v_#valid_1|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,769 INFO L290 TraceCheckUtils]: 3: Hoare triple {568497#true} [612] L-1-2-->L690: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,769 INFO L290 TraceCheckUtils]: 4: Hoare triple {568497#true} [551] L690-->L690-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[] {568497#true} is VALID [2022-02-20 20:41:24,770 INFO L290 TraceCheckUtils]: 5: Hoare triple {568497#true} [512] L690-1-->L690-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[] {568497#true} is VALID [2022-02-20 20:41:24,770 INFO L290 TraceCheckUtils]: 6: Hoare triple {568497#true} [525] L690-2-->L690-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[] {568497#true} is VALID [2022-02-20 20:41:24,770 INFO L290 TraceCheckUtils]: 7: Hoare triple {568497#true} [592] L690-3-->L690-4: Formula: (and (= (select |v_#length_2| 2) 13) (= (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[] {568497#true} is VALID [2022-02-20 20:41:24,770 INFO L290 TraceCheckUtils]: 8: Hoare triple {568497#true} [560] L690-4-->L696: Formula: (and (= 3 |v_~#__global_lock~0.base_1|) (= |v_~#__global_lock~0.offset_1| 0)) InVars {} OutVars{~#__global_lock~0.base=|v_~#__global_lock~0.base_1|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_1|} AuxVars[] AssignedVars[~#__global_lock~0.offset, ~#__global_lock~0.base] {568497#true} is VALID [2022-02-20 20:41:24,770 INFO L290 TraceCheckUtils]: 9: Hoare triple {568497#true} [542] L696-->L696-1: Formula: (and (= (select |v_#length_3| 3) 24) (= (select |v_#valid_4| 3) 1)) InVars {#length=|v_#length_3|, #valid=|v_#valid_4|} OutVars{#length=|v_#length_3|, #valid=|v_#valid_4|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,771 INFO L290 TraceCheckUtils]: 10: Hoare triple {568497#true} [593] L696-1-->L696-2: Formula: (= (select (select |v_#memory_int_3| |v_~#__global_lock~0.base_2|) |v_~#__global_lock~0.offset_2|) 0) InVars {#memory_int=|v_#memory_int_3|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_2|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_2|} OutVars{#memory_int=|v_#memory_int_3|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_2|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_2|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,771 INFO L290 TraceCheckUtils]: 11: Hoare triple {568497#true} [519] L696-2-->L696-3: Formula: (= (select (select |v_#memory_int_4| |v_~#__global_lock~0.base_3|) (+ |v_~#__global_lock~0.offset_3| 4)) 0) InVars {#memory_int=|v_#memory_int_4|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_3|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_3|} OutVars{#memory_int=|v_#memory_int_4|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_3|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_3|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,771 INFO L290 TraceCheckUtils]: 12: Hoare triple {568497#true} [615] L696-3-->L696-4: Formula: (= (select (select |v_#memory_int_5| |v_~#__global_lock~0.base_4|) (+ |v_~#__global_lock~0.offset_4| 8)) 0) InVars {#memory_int=|v_#memory_int_5|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_4|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_4|} OutVars{#memory_int=|v_#memory_int_5|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_4|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_4|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,771 INFO L290 TraceCheckUtils]: 13: Hoare triple {568497#true} [598] L696-4-->L696-5: Formula: (= (select (select |v_#memory_int_6| |v_~#__global_lock~0.base_5|) (+ |v_~#__global_lock~0.offset_5| 12)) 0) InVars {#memory_int=|v_#memory_int_6|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_5|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_5|} OutVars{#memory_int=|v_#memory_int_6|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_5|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_5|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,771 INFO L290 TraceCheckUtils]: 14: Hoare triple {568497#true} [546] L696-5-->L696-6: Formula: (= (select (select |v_#memory_int_7| |v_~#__global_lock~0.base_6|) (+ 16 |v_~#__global_lock~0.offset_6|)) 0) InVars {#memory_int=|v_#memory_int_7|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_6|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_6|} OutVars{#memory_int=|v_#memory_int_7|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_6|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_6|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,771 INFO L290 TraceCheckUtils]: 15: Hoare triple {568497#true} [555] L696-6-->L698: Formula: (= v_~global~0_1 0) InVars {} OutVars{~global~0=v_~global~0_1} AuxVars[] AssignedVars[~global~0] {568497#true} is VALID [2022-02-20 20:41:24,772 INFO L290 TraceCheckUtils]: 16: Hoare triple {568497#true} [582] L698-->L698-1: Formula: (and (= 4 |v_~#mutex~0.base_1|) (= |v_~#mutex~0.offset_1| 0)) InVars {} OutVars{~#mutex~0.base=|v_~#mutex~0.base_1|, ~#mutex~0.offset=|v_~#mutex~0.offset_1|} AuxVars[] AssignedVars[~#mutex~0.base, ~#mutex~0.offset] {568497#true} is VALID [2022-02-20 20:41:24,772 INFO L290 TraceCheckUtils]: 17: Hoare triple {568497#true} [580] L698-1-->L698-2: Formula: (and (= (select |v_#length_4| 4) 24) (= (select |v_#valid_5| 4) 1)) InVars {#length=|v_#length_4|, #valid=|v_#valid_5|} OutVars{#length=|v_#length_4|, #valid=|v_#valid_5|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,772 INFO L290 TraceCheckUtils]: 18: Hoare triple {568497#true} [603] L698-2-->L698-3: Formula: (= (select (select |v_#memory_int_8| |v_~#mutex~0.base_2|) |v_~#mutex~0.offset_2|) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_2|, #memory_int=|v_#memory_int_8|, ~#mutex~0.base=|v_~#mutex~0.base_2|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_2|, #memory_int=|v_#memory_int_8|, ~#mutex~0.base=|v_~#mutex~0.base_2|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,772 INFO L290 TraceCheckUtils]: 19: Hoare triple {568497#true} [526] L698-3-->L698-4: Formula: (= (select (select |v_#memory_int_9| |v_~#mutex~0.base_3|) (+ |v_~#mutex~0.offset_3| 4)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_3|, #memory_int=|v_#memory_int_9|, ~#mutex~0.base=|v_~#mutex~0.base_3|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_3|, #memory_int=|v_#memory_int_9|, ~#mutex~0.base=|v_~#mutex~0.base_3|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,772 INFO L290 TraceCheckUtils]: 20: Hoare triple {568497#true} [581] L698-4-->L698-5: Formula: (= (select (select |v_#memory_int_10| |v_~#mutex~0.base_4|) (+ |v_~#mutex~0.offset_4| 8)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_4|, #memory_int=|v_#memory_int_10|, ~#mutex~0.base=|v_~#mutex~0.base_4|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_4|, #memory_int=|v_#memory_int_10|, ~#mutex~0.base=|v_~#mutex~0.base_4|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,773 INFO L290 TraceCheckUtils]: 21: Hoare triple {568497#true} [607] L698-5-->L698-6: Formula: (= (select (select |v_#memory_int_11| |v_~#mutex~0.base_5|) (+ |v_~#mutex~0.offset_5| 12)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_5|, #memory_int=|v_#memory_int_11|, ~#mutex~0.base=|v_~#mutex~0.base_5|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_5|, #memory_int=|v_#memory_int_11|, ~#mutex~0.base=|v_~#mutex~0.base_5|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,773 INFO L290 TraceCheckUtils]: 22: Hoare triple {568497#true} [604] L698-6-->L698-7: Formula: (= (select (select |v_#memory_int_12| |v_~#mutex~0.base_6|) (+ |v_~#mutex~0.offset_6| 16)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_6|, #memory_int=|v_#memory_int_12|, ~#mutex~0.base=|v_~#mutex~0.base_6|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_6|, #memory_int=|v_#memory_int_12|, ~#mutex~0.base=|v_~#mutex~0.base_6|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,773 INFO L290 TraceCheckUtils]: 23: Hoare triple {568497#true} [517] L698-7-->L-1-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,775 INFO L290 TraceCheckUtils]: 24: Hoare triple {568497#true} [614] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,775 INFO L290 TraceCheckUtils]: 25: Hoare triple {568497#true} [541] L-1-4-->L-1-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1] {568497#true} is VALID [2022-02-20 20:41:24,775 INFO L290 TraceCheckUtils]: 26: Hoare triple {568497#true} [514] L-1-5-->L712: Formula: true InVars {} OutVars{ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_1|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_1|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_1|, ULTIMATE.start_main_#t~mem13#1=|v_ULTIMATE.start_main_#t~mem13#1_1|, ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_1|, ULTIMATE.start_main_~#t_ids~0#1.base=|v_ULTIMATE.start_main_~#t_ids~0#1.base_1|, ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_1|, ULTIMATE.start_main_#t~post12#1=|v_ULTIMATE.start_main_#t~post12#1_1|, ULTIMATE.start_main_#t~post8#1=|v_ULTIMATE.start_main_#t~post8#1_1|, ULTIMATE.start_main_~#t_ids~0#1.offset=|v_ULTIMATE.start_main_~#t_ids~0#1.offset_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet11#1, ULTIMATE.start_main_#t~mem13#1, ULTIMATE.start_main_#t~nondet10#1, ULTIMATE.start_main_~#t_ids~0#1.base, ULTIMATE.start_main_#t~pre9#1, ULTIMATE.start_main_#t~post12#1, ULTIMATE.start_main_#t~post8#1, ULTIMATE.start_main_~#t_ids~0#1.offset] {568497#true} is VALID [2022-02-20 20:41:24,775 INFO L290 TraceCheckUtils]: 27: Hoare triple {568497#true} [562] L712-->L712-1: Formula: (and (= (store |v_#length_6| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2| 40000) |v_#length_5|) (= |v_#valid_6| (store |v_#valid_7| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2| 1)) (= |v_ULTIMATE.start_main_~#t_ids~0#1.offset_2| 0) (not (= |v_ULTIMATE.start_main_~#t_ids~0#1.base_2| 0)) (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2|) (= (select |v_#valid_7| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_6|, #valid=|v_#valid_7|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, ULTIMATE.start_main_~#t_ids~0#1.offset=|v_ULTIMATE.start_main_~#t_ids~0#1.offset_2|, #length=|v_#length_5|, ULTIMATE.start_main_~#t_ids~0#1.base=|v_ULTIMATE.start_main_~#t_ids~0#1.base_2|, #valid=|v_#valid_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#t_ids~0#1.base, #valid, ULTIMATE.start_main_~#t_ids~0#1.offset, #length] {568497#true} is VALID [2022-02-20 20:41:24,776 INFO L290 TraceCheckUtils]: 28: Hoare triple {568497#true} [568] L712-1-->L712-13: Formula: (= |v_ULTIMATE.start_main_~i~0#1_2| 0) InVars {} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {568589#(<= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 20:41:24,776 INFO L290 TraceCheckUtils]: 29: Hoare triple {568589#(<= |ULTIMATE.start_main_~i~0#1| 0)} [511] L712-13-->L712-4: Formula: (< |v_ULTIMATE.start_main_~i~0#1_4| 10000) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_4|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_4|} AuxVars[] AssignedVars[] {568589#(<= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 20:41:24,776 INFO L290 TraceCheckUtils]: 30: Hoare triple {568589#(<= |ULTIMATE.start_main_~i~0#1| 0)} [529] L712-4-->L712-5: Formula: (= |v_ULTIMATE.start_main_#t~pre9#1_2| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre9#1] {568589#(<= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 20:41:24,778 INFO L290 TraceCheckUtils]: 31: Hoare triple {568589#(<= |ULTIMATE.start_main_~i~0#1| 0)} [547] L712-5-->L712-6: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] {568589#(<= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 20:41:24,778 INFO L290 TraceCheckUtils]: 32: Hoare triple {568589#(<= |ULTIMATE.start_main_~i~0#1| 0)} [552] L712-6-->L712-7: Formula: (= |v_#memory_int_13| (store |v_#memory_int_14| |v_ULTIMATE.start_main_~#t_ids~0#1.base_3| (store (select |v_#memory_int_14| |v_ULTIMATE.start_main_~#t_ids~0#1.base_3|) (+ |v_ULTIMATE.start_main_~#t_ids~0#1.offset_3| (* |v_ULTIMATE.start_main_~i~0#1_5| 4)) |v_ULTIMATE.start_main_#t~pre9#1_3|))) InVars {#memory_int=|v_#memory_int_14|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t_ids~0#1.offset=|v_ULTIMATE.start_main_~#t_ids~0#1.offset_3|, ULTIMATE.start_main_~#t_ids~0#1.base=|v_ULTIMATE.start_main_~#t_ids~0#1.base_3|, ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_3|} OutVars{#memory_int=|v_#memory_int_13|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t_ids~0#1.offset=|v_ULTIMATE.start_main_~#t_ids~0#1.offset_3|, ULTIMATE.start_main_~#t_ids~0#1.base=|v_ULTIMATE.start_main_~#t_ids~0#1.base_3|, ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_3|} AuxVars[] AssignedVars[#memory_int] {568589#(<= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 20:41:24,782 INFO L290 TraceCheckUtils]: 33: Hoare triple {568589#(<= |ULTIMATE.start_main_~i~0#1| 0)} [721] L712-7-->t_funENTRY: Formula: (and (= |v_t_funThread1of3ForFork0_#in~arg#1.offset_4| 0) (= |v_ULTIMATE.start_main_#t~pre9#1_14| v_t_funThread1of3ForFork0_thidvar0_2) (= |v_t_funThread1of3ForFork0_#in~arg#1.base_4| 0)) InVars {ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_14|} OutVars{ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_14|, t_funThread1of3ForFork0_#in~arg#1.base=|v_t_funThread1of3ForFork0_#in~arg#1.base_4|, t_funThread1of3ForFork0_lock_#t~nondet3#1=|v_t_funThread1of3ForFork0_lock_#t~nondet3#1_8|, t_funThread1of3ForFork0_thidvar0=v_t_funThread1of3ForFork0_thidvar0_2, t_funThread1of3ForFork0_#t~post7#1=|v_t_funThread1of3ForFork0_#t~post7#1_8|, t_funThread1of3ForFork0_#t~post5#1=|v_t_funThread1of3ForFork0_#t~post5#1_8|, t_funThread1of3ForFork0_#res#1.base=|v_t_funThread1of3ForFork0_#res#1.base_4|, t_funThread1of3ForFork0_#in~arg#1.offset=|v_t_funThread1of3ForFork0_#in~arg#1.offset_4|, t_funThread1of3ForFork0_#t~nondet4#1=|v_t_funThread1of3ForFork0_#t~nondet4#1_6|, t_funThread1of3ForFork0_#t~nondet6#1=|v_t_funThread1of3ForFork0_#t~nondet6#1_6|, t_funThread1of3ForFork0_#res#1.offset=|v_t_funThread1of3ForFork0_#res#1.offset_4|, t_funThread1of3ForFork0_~arg#1.offset=|v_t_funThread1of3ForFork0_~arg#1.offset_4|, t_funThread1of3ForFork0_~arg#1.base=|v_t_funThread1of3ForFork0_~arg#1.base_4|} AuxVars[] AssignedVars[t_funThread1of3ForFork0_#res#1.base, t_funThread1of3ForFork0_#in~arg#1.offset, t_funThread1of3ForFork0_#t~nondet4#1, t_funThread1of3ForFork0_#in~arg#1.base, t_funThread1of3ForFork0_lock_#t~nondet3#1, t_funThread1of3ForFork0_thidvar0, t_funThread1of3ForFork0_#t~nondet6#1, t_funThread1of3ForFork0_#res#1.offset, t_funThread1of3ForFork0_#t~post7#1, t_funThread1of3ForFork0_~arg#1.offset, t_funThread1of3ForFork0_~arg#1.base, t_funThread1of3ForFork0_#t~post5#1] {568589#(<= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 20:41:24,783 INFO L290 TraceCheckUtils]: 34: Hoare triple {568589#(<= |ULTIMATE.start_main_~i~0#1| 0)} [520] L712-8-->L712-9: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre9#1] {568589#(<= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 20:41:24,783 INFO L290 TraceCheckUtils]: 35: Hoare triple {568589#(<= |ULTIMATE.start_main_~i~0#1| 0)} [599] L712-9-->L712-10: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet10#1] {568589#(<= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 20:41:24,783 INFO L290 TraceCheckUtils]: 36: Hoare triple {568589#(<= |ULTIMATE.start_main_~i~0#1| 0)} [576] L712-10-->L712-11: Formula: (= |v_ULTIMATE.start_main_#t~post8#1_2| |v_ULTIMATE.start_main_~i~0#1_6|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_6|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_6|, ULTIMATE.start_main_#t~post8#1=|v_ULTIMATE.start_main_#t~post8#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post8#1] {568614#(<= |ULTIMATE.start_main_#t~post8#1| 0)} is VALID [2022-02-20 20:41:24,784 INFO L290 TraceCheckUtils]: 37: Hoare triple {568614#(<= |ULTIMATE.start_main_#t~post8#1| 0)} [594] L712-11-->L712-12: Formula: (= (+ |v_ULTIMATE.start_main_#t~post8#1_3| 1) |v_ULTIMATE.start_main_~i~0#1_7|) InVars {ULTIMATE.start_main_#t~post8#1=|v_ULTIMATE.start_main_#t~post8#1_3|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_7|, ULTIMATE.start_main_#t~post8#1=|v_ULTIMATE.start_main_#t~post8#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {568501#(<= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:41:24,784 INFO L290 TraceCheckUtils]: 38: Hoare triple {568501#(<= |ULTIMATE.start_main_~i~0#1| 1)} [613] L712-12-->L712-13: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post8#1=|v_ULTIMATE.start_main_#t~post8#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post8#1] {568501#(<= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:41:24,786 INFO L290 TraceCheckUtils]: 39: Hoare triple {568501#(<= |ULTIMATE.start_main_~i~0#1| 1)} [510] L712-13-->L712-14: Formula: (not (< |v_ULTIMATE.start_main_~i~0#1_3| 10000)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_3|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_3|} AuxVars[] AssignedVars[] {568498#false} is VALID [2022-02-20 20:41:24,786 INFO L290 TraceCheckUtils]: 40: Hoare triple {568498#false} [597] L712-14-->L713: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {568498#false} is VALID [2022-02-20 20:41:24,786 INFO L290 TraceCheckUtils]: 41: Hoare triple {568498#false} [585] L713-->L700: Formula: true InVars {} OutVars{ULTIMATE.start_lock_#t~nondet3#1=|v_ULTIMATE.start_lock_#t~nondet3#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_lock_#t~nondet3#1] {568498#false} is VALID [2022-02-20 20:41:24,789 INFO L290 TraceCheckUtils]: 42: Hoare triple {568498#false} [554] L700-->L700-1: Formula: (let ((.cse0 (select |v_#pthreadsMutex_2| |v_~#mutex~0.base_7|))) (and (= |v_ULTIMATE.start_lock_#t~nondet3#1_2| 0) (= |v_#pthreadsMutex_1| (store |v_#pthreadsMutex_2| |v_~#mutex~0.base_7| (store .cse0 |v_~#mutex~0.offset_7| 1))) (= (select .cse0 |v_~#mutex~0.offset_7|) 0))) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_7|, #pthreadsMutex=|v_#pthreadsMutex_2|, ~#mutex~0.base=|v_~#mutex~0.base_7|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_7|, #pthreadsMutex=|v_#pthreadsMutex_1|, ~#mutex~0.base=|v_~#mutex~0.base_7|, ULTIMATE.start_lock_#t~nondet3#1=|v_ULTIMATE.start_lock_#t~nondet3#1_2|} AuxVars[] AssignedVars[#pthreadsMutex, ULTIMATE.start_lock_#t~nondet3#1] {568498#false} is VALID [2022-02-20 20:41:24,789 INFO L290 TraceCheckUtils]: 43: Hoare triple {568498#false} [561] L700-1-->L699: Formula: true InVars {} OutVars{ULTIMATE.start_lock_#t~nondet3#1=|v_ULTIMATE.start_lock_#t~nondet3#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_lock_#t~nondet3#1] {568498#false} is VALID [2022-02-20 20:41:24,789 INFO L290 TraceCheckUtils]: 44: Hoare triple {568498#false} [538] L699-->L714-7: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {568498#false} is VALID [2022-02-20 20:41:24,790 INFO L290 TraceCheckUtils]: 45: Hoare triple {568498#false} [556] L714-7-->L714-1: Formula: (let ((.cse0 (select |v_#pthreadsMutex_4| |v_~#__global_lock~0.base_7|))) (and (= |v_ULTIMATE.start_main_#t~nondet11#1_2| 0) (= (select .cse0 |v_~#__global_lock~0.offset_7|) 0) (= |v_#pthreadsMutex_3| (store |v_#pthreadsMutex_4| |v_~#__global_lock~0.base_7| (store .cse0 |v_~#__global_lock~0.offset_7| 1))))) InVars {#pthreadsMutex=|v_#pthreadsMutex_4|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_7|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_7|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_3|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_2|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_7|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_7|} AuxVars[] AssignedVars[#pthreadsMutex, ULTIMATE.start_main_#t~nondet11#1] {568498#false} is VALID [2022-02-20 20:41:24,790 INFO L290 TraceCheckUtils]: 46: Hoare triple {568498#false} [522] L714-1-->L714-2: 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] {568498#false} is VALID [2022-02-20 20:41:24,790 INFO L290 TraceCheckUtils]: 47: Hoare triple {568498#false} [572] L714-2-->L714-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {568498#false} is VALID [2022-02-20 20:41:24,790 INFO L290 TraceCheckUtils]: 48: Hoare triple {568498#false} [508] L714-3-->L714-4: Formula: (= (ite (= v_~global~0_2 0) 1 0) |v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_1|) InVars {~global~0=v_~global~0_2} OutVars{ULTIMATE.start___VERIFIER_assert_#in~cond#1=|v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_1|, ~global~0=v_~global~0_2} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_#in~cond#1] {568498#false} is VALID [2022-02-20 20:41:24,790 INFO L290 TraceCheckUtils]: 49: Hoare triple {568498#false} [528] L714-4-->L691: Formula: true InVars {} OutVars{ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_1|} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_~cond#1] {568498#false} is VALID [2022-02-20 20:41:24,790 INFO L290 TraceCheckUtils]: 50: Hoare triple {568498#false} [534] L691-->L691-1: Formula: (= |v_ULTIMATE.start___VERIFIER_assert_~cond#1_2| |v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_2|) InVars {ULTIMATE.start___VERIFIER_assert_#in~cond#1=|v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_2|} OutVars{ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_2|, ULTIMATE.start___VERIFIER_assert_#in~cond#1=|v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_2|} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_~cond#1] {568498#false} is VALID [2022-02-20 20:41:24,791 INFO L290 TraceCheckUtils]: 51: Hoare triple {568498#false} [618] L691-1-->L691-2: Formula: (= |v_ULTIMATE.start___VERIFIER_assert_~cond#1_3| 0) InVars {ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_3|} OutVars{ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_3|} AuxVars[] AssignedVars[] {568498#false} is VALID [2022-02-20 20:41:24,791 INFO L290 TraceCheckUtils]: 52: Hoare triple {568498#false} [530] L691-2-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {568498#false} is VALID [2022-02-20 20:41:24,793 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 20:41:24,793 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 20:41:24,909 INFO L290 TraceCheckUtils]: 52: Hoare triple {568498#false} [530] L691-2-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {568498#false} is VALID [2022-02-20 20:41:24,909 INFO L290 TraceCheckUtils]: 51: Hoare triple {568498#false} [618] L691-1-->L691-2: Formula: (= |v_ULTIMATE.start___VERIFIER_assert_~cond#1_3| 0) InVars {ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_3|} OutVars{ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_3|} AuxVars[] AssignedVars[] {568498#false} is VALID [2022-02-20 20:41:24,909 INFO L290 TraceCheckUtils]: 50: Hoare triple {568498#false} [534] L691-->L691-1: Formula: (= |v_ULTIMATE.start___VERIFIER_assert_~cond#1_2| |v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_2|) InVars {ULTIMATE.start___VERIFIER_assert_#in~cond#1=|v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_2|} OutVars{ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_2|, ULTIMATE.start___VERIFIER_assert_#in~cond#1=|v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_2|} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_~cond#1] {568498#false} is VALID [2022-02-20 20:41:24,909 INFO L290 TraceCheckUtils]: 49: Hoare triple {568498#false} [528] L714-4-->L691: Formula: true InVars {} OutVars{ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_1|} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_~cond#1] {568498#false} is VALID [2022-02-20 20:41:24,910 INFO L290 TraceCheckUtils]: 48: Hoare triple {568498#false} [508] L714-3-->L714-4: Formula: (= (ite (= v_~global~0_2 0) 1 0) |v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_1|) InVars {~global~0=v_~global~0_2} OutVars{ULTIMATE.start___VERIFIER_assert_#in~cond#1=|v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_1|, ~global~0=v_~global~0_2} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_#in~cond#1] {568498#false} is VALID [2022-02-20 20:41:24,910 INFO L290 TraceCheckUtils]: 47: Hoare triple {568498#false} [572] L714-2-->L714-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {568498#false} is VALID [2022-02-20 20:41:24,910 INFO L290 TraceCheckUtils]: 46: Hoare triple {568498#false} [522] L714-1-->L714-2: 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] {568498#false} is VALID [2022-02-20 20:41:24,910 INFO L290 TraceCheckUtils]: 45: Hoare triple {568498#false} [556] L714-7-->L714-1: Formula: (let ((.cse0 (select |v_#pthreadsMutex_4| |v_~#__global_lock~0.base_7|))) (and (= |v_ULTIMATE.start_main_#t~nondet11#1_2| 0) (= (select .cse0 |v_~#__global_lock~0.offset_7|) 0) (= |v_#pthreadsMutex_3| (store |v_#pthreadsMutex_4| |v_~#__global_lock~0.base_7| (store .cse0 |v_~#__global_lock~0.offset_7| 1))))) InVars {#pthreadsMutex=|v_#pthreadsMutex_4|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_7|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_7|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_3|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_2|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_7|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_7|} AuxVars[] AssignedVars[#pthreadsMutex, ULTIMATE.start_main_#t~nondet11#1] {568498#false} is VALID [2022-02-20 20:41:24,910 INFO L290 TraceCheckUtils]: 44: Hoare triple {568498#false} [538] L699-->L714-7: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {568498#false} is VALID [2022-02-20 20:41:24,910 INFO L290 TraceCheckUtils]: 43: Hoare triple {568498#false} [561] L700-1-->L699: Formula: true InVars {} OutVars{ULTIMATE.start_lock_#t~nondet3#1=|v_ULTIMATE.start_lock_#t~nondet3#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_lock_#t~nondet3#1] {568498#false} is VALID [2022-02-20 20:41:24,911 INFO L290 TraceCheckUtils]: 42: Hoare triple {568498#false} [554] L700-->L700-1: Formula: (let ((.cse0 (select |v_#pthreadsMutex_2| |v_~#mutex~0.base_7|))) (and (= |v_ULTIMATE.start_lock_#t~nondet3#1_2| 0) (= |v_#pthreadsMutex_1| (store |v_#pthreadsMutex_2| |v_~#mutex~0.base_7| (store .cse0 |v_~#mutex~0.offset_7| 1))) (= (select .cse0 |v_~#mutex~0.offset_7|) 0))) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_7|, #pthreadsMutex=|v_#pthreadsMutex_2|, ~#mutex~0.base=|v_~#mutex~0.base_7|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_7|, #pthreadsMutex=|v_#pthreadsMutex_1|, ~#mutex~0.base=|v_~#mutex~0.base_7|, ULTIMATE.start_lock_#t~nondet3#1=|v_ULTIMATE.start_lock_#t~nondet3#1_2|} AuxVars[] AssignedVars[#pthreadsMutex, ULTIMATE.start_lock_#t~nondet3#1] {568498#false} is VALID [2022-02-20 20:41:24,911 INFO L290 TraceCheckUtils]: 41: Hoare triple {568498#false} [585] L713-->L700: Formula: true InVars {} OutVars{ULTIMATE.start_lock_#t~nondet3#1=|v_ULTIMATE.start_lock_#t~nondet3#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_lock_#t~nondet3#1] {568498#false} is VALID [2022-02-20 20:41:24,911 INFO L290 TraceCheckUtils]: 40: Hoare triple {568498#false} [597] L712-14-->L713: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {568498#false} is VALID [2022-02-20 20:41:24,911 INFO L290 TraceCheckUtils]: 39: Hoare triple {568702#(< |ULTIMATE.start_main_~i~0#1| 10000)} [510] L712-13-->L712-14: Formula: (not (< |v_ULTIMATE.start_main_~i~0#1_3| 10000)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_3|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_3|} AuxVars[] AssignedVars[] {568498#false} is VALID [2022-02-20 20:41:24,912 INFO L290 TraceCheckUtils]: 38: Hoare triple {568702#(< |ULTIMATE.start_main_~i~0#1| 10000)} [613] L712-12-->L712-13: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post8#1=|v_ULTIMATE.start_main_#t~post8#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post8#1] {568702#(< |ULTIMATE.start_main_~i~0#1| 10000)} is VALID [2022-02-20 20:41:24,912 INFO L290 TraceCheckUtils]: 37: Hoare triple {568709#(< |ULTIMATE.start_main_#t~post8#1| 9999)} [594] L712-11-->L712-12: Formula: (= (+ |v_ULTIMATE.start_main_#t~post8#1_3| 1) |v_ULTIMATE.start_main_~i~0#1_7|) InVars {ULTIMATE.start_main_#t~post8#1=|v_ULTIMATE.start_main_#t~post8#1_3|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_7|, ULTIMATE.start_main_#t~post8#1=|v_ULTIMATE.start_main_#t~post8#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {568702#(< |ULTIMATE.start_main_~i~0#1| 10000)} is VALID [2022-02-20 20:41:24,912 INFO L290 TraceCheckUtils]: 36: Hoare triple {568713#(< |ULTIMATE.start_main_~i~0#1| 9999)} [576] L712-10-->L712-11: Formula: (= |v_ULTIMATE.start_main_#t~post8#1_2| |v_ULTIMATE.start_main_~i~0#1_6|) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_6|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_6|, ULTIMATE.start_main_#t~post8#1=|v_ULTIMATE.start_main_#t~post8#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post8#1] {568709#(< |ULTIMATE.start_main_#t~post8#1| 9999)} is VALID [2022-02-20 20:41:24,913 INFO L290 TraceCheckUtils]: 35: Hoare triple {568713#(< |ULTIMATE.start_main_~i~0#1| 9999)} [599] L712-9-->L712-10: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet10#1] {568713#(< |ULTIMATE.start_main_~i~0#1| 9999)} is VALID [2022-02-20 20:41:24,913 INFO L290 TraceCheckUtils]: 34: Hoare triple {568713#(< |ULTIMATE.start_main_~i~0#1| 9999)} [520] L712-8-->L712-9: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre9#1] {568713#(< |ULTIMATE.start_main_~i~0#1| 9999)} is VALID [2022-02-20 20:41:24,913 INFO L290 TraceCheckUtils]: 33: Hoare triple {568713#(< |ULTIMATE.start_main_~i~0#1| 9999)} [721] L712-7-->t_funENTRY: Formula: (and (= |v_t_funThread1of3ForFork0_#in~arg#1.offset_4| 0) (= |v_ULTIMATE.start_main_#t~pre9#1_14| v_t_funThread1of3ForFork0_thidvar0_2) (= |v_t_funThread1of3ForFork0_#in~arg#1.base_4| 0)) InVars {ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_14|} OutVars{ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_14|, t_funThread1of3ForFork0_#in~arg#1.base=|v_t_funThread1of3ForFork0_#in~arg#1.base_4|, t_funThread1of3ForFork0_lock_#t~nondet3#1=|v_t_funThread1of3ForFork0_lock_#t~nondet3#1_8|, t_funThread1of3ForFork0_thidvar0=v_t_funThread1of3ForFork0_thidvar0_2, t_funThread1of3ForFork0_#t~post7#1=|v_t_funThread1of3ForFork0_#t~post7#1_8|, t_funThread1of3ForFork0_#t~post5#1=|v_t_funThread1of3ForFork0_#t~post5#1_8|, t_funThread1of3ForFork0_#res#1.base=|v_t_funThread1of3ForFork0_#res#1.base_4|, t_funThread1of3ForFork0_#in~arg#1.offset=|v_t_funThread1of3ForFork0_#in~arg#1.offset_4|, t_funThread1of3ForFork0_#t~nondet4#1=|v_t_funThread1of3ForFork0_#t~nondet4#1_6|, t_funThread1of3ForFork0_#t~nondet6#1=|v_t_funThread1of3ForFork0_#t~nondet6#1_6|, t_funThread1of3ForFork0_#res#1.offset=|v_t_funThread1of3ForFork0_#res#1.offset_4|, t_funThread1of3ForFork0_~arg#1.offset=|v_t_funThread1of3ForFork0_~arg#1.offset_4|, t_funThread1of3ForFork0_~arg#1.base=|v_t_funThread1of3ForFork0_~arg#1.base_4|} AuxVars[] AssignedVars[t_funThread1of3ForFork0_#res#1.base, t_funThread1of3ForFork0_#in~arg#1.offset, t_funThread1of3ForFork0_#t~nondet4#1, t_funThread1of3ForFork0_#in~arg#1.base, t_funThread1of3ForFork0_lock_#t~nondet3#1, t_funThread1of3ForFork0_thidvar0, t_funThread1of3ForFork0_#t~nondet6#1, t_funThread1of3ForFork0_#res#1.offset, t_funThread1of3ForFork0_#t~post7#1, t_funThread1of3ForFork0_~arg#1.offset, t_funThread1of3ForFork0_~arg#1.base, t_funThread1of3ForFork0_#t~post5#1] {568713#(< |ULTIMATE.start_main_~i~0#1| 9999)} is VALID [2022-02-20 20:41:24,914 INFO L290 TraceCheckUtils]: 32: Hoare triple {568713#(< |ULTIMATE.start_main_~i~0#1| 9999)} [552] L712-6-->L712-7: Formula: (= |v_#memory_int_13| (store |v_#memory_int_14| |v_ULTIMATE.start_main_~#t_ids~0#1.base_3| (store (select |v_#memory_int_14| |v_ULTIMATE.start_main_~#t_ids~0#1.base_3|) (+ |v_ULTIMATE.start_main_~#t_ids~0#1.offset_3| (* |v_ULTIMATE.start_main_~i~0#1_5| 4)) |v_ULTIMATE.start_main_#t~pre9#1_3|))) InVars {#memory_int=|v_#memory_int_14|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t_ids~0#1.offset=|v_ULTIMATE.start_main_~#t_ids~0#1.offset_3|, ULTIMATE.start_main_~#t_ids~0#1.base=|v_ULTIMATE.start_main_~#t_ids~0#1.base_3|, ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_3|} OutVars{#memory_int=|v_#memory_int_13|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t_ids~0#1.offset=|v_ULTIMATE.start_main_~#t_ids~0#1.offset_3|, ULTIMATE.start_main_~#t_ids~0#1.base=|v_ULTIMATE.start_main_~#t_ids~0#1.base_3|, ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_3|} AuxVars[] AssignedVars[#memory_int] {568713#(< |ULTIMATE.start_main_~i~0#1| 9999)} is VALID [2022-02-20 20:41:24,914 INFO L290 TraceCheckUtils]: 31: Hoare triple {568713#(< |ULTIMATE.start_main_~i~0#1| 9999)} [547] L712-5-->L712-6: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] {568713#(< |ULTIMATE.start_main_~i~0#1| 9999)} is VALID [2022-02-20 20:41:24,915 INFO L290 TraceCheckUtils]: 30: Hoare triple {568713#(< |ULTIMATE.start_main_~i~0#1| 9999)} [529] L712-4-->L712-5: Formula: (= |v_ULTIMATE.start_main_#t~pre9#1_2| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre9#1] {568713#(< |ULTIMATE.start_main_~i~0#1| 9999)} is VALID [2022-02-20 20:41:24,915 INFO L290 TraceCheckUtils]: 29: Hoare triple {568713#(< |ULTIMATE.start_main_~i~0#1| 9999)} [511] L712-13-->L712-4: Formula: (< |v_ULTIMATE.start_main_~i~0#1_4| 10000) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_4|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_4|} AuxVars[] AssignedVars[] {568713#(< |ULTIMATE.start_main_~i~0#1| 9999)} is VALID [2022-02-20 20:41:24,915 INFO L290 TraceCheckUtils]: 28: Hoare triple {568497#true} [568] L712-1-->L712-13: Formula: (= |v_ULTIMATE.start_main_~i~0#1_2| 0) InVars {} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {568713#(< |ULTIMATE.start_main_~i~0#1| 9999)} is VALID [2022-02-20 20:41:24,915 INFO L290 TraceCheckUtils]: 27: Hoare triple {568497#true} [562] L712-->L712-1: Formula: (and (= (store |v_#length_6| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2| 40000) |v_#length_5|) (= |v_#valid_6| (store |v_#valid_7| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2| 1)) (= |v_ULTIMATE.start_main_~#t_ids~0#1.offset_2| 0) (not (= |v_ULTIMATE.start_main_~#t_ids~0#1.base_2| 0)) (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2|) (= (select |v_#valid_7| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_6|, #valid=|v_#valid_7|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, ULTIMATE.start_main_~#t_ids~0#1.offset=|v_ULTIMATE.start_main_~#t_ids~0#1.offset_2|, #length=|v_#length_5|, ULTIMATE.start_main_~#t_ids~0#1.base=|v_ULTIMATE.start_main_~#t_ids~0#1.base_2|, #valid=|v_#valid_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#t_ids~0#1.base, #valid, ULTIMATE.start_main_~#t_ids~0#1.offset, #length] {568497#true} is VALID [2022-02-20 20:41:24,916 INFO L290 TraceCheckUtils]: 26: Hoare triple {568497#true} [514] L-1-5-->L712: Formula: true InVars {} OutVars{ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_1|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_1|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_1|, ULTIMATE.start_main_#t~mem13#1=|v_ULTIMATE.start_main_#t~mem13#1_1|, ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_1|, ULTIMATE.start_main_~#t_ids~0#1.base=|v_ULTIMATE.start_main_~#t_ids~0#1.base_1|, ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_1|, ULTIMATE.start_main_#t~post12#1=|v_ULTIMATE.start_main_#t~post12#1_1|, ULTIMATE.start_main_#t~post8#1=|v_ULTIMATE.start_main_#t~post8#1_1|, ULTIMATE.start_main_~#t_ids~0#1.offset=|v_ULTIMATE.start_main_~#t_ids~0#1.offset_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet11#1, ULTIMATE.start_main_#t~mem13#1, ULTIMATE.start_main_#t~nondet10#1, ULTIMATE.start_main_~#t_ids~0#1.base, ULTIMATE.start_main_#t~pre9#1, ULTIMATE.start_main_#t~post12#1, ULTIMATE.start_main_#t~post8#1, ULTIMATE.start_main_~#t_ids~0#1.offset] {568497#true} is VALID [2022-02-20 20:41:24,916 INFO L290 TraceCheckUtils]: 25: Hoare triple {568497#true} [541] L-1-4-->L-1-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1] {568497#true} is VALID [2022-02-20 20:41:24,916 INFO L290 TraceCheckUtils]: 24: Hoare triple {568497#true} [614] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,916 INFO L290 TraceCheckUtils]: 23: Hoare triple {568497#true} [517] L698-7-->L-1-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,916 INFO L290 TraceCheckUtils]: 22: Hoare triple {568497#true} [604] L698-6-->L698-7: Formula: (= (select (select |v_#memory_int_12| |v_~#mutex~0.base_6|) (+ |v_~#mutex~0.offset_6| 16)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_6|, #memory_int=|v_#memory_int_12|, ~#mutex~0.base=|v_~#mutex~0.base_6|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_6|, #memory_int=|v_#memory_int_12|, ~#mutex~0.base=|v_~#mutex~0.base_6|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,916 INFO L290 TraceCheckUtils]: 21: Hoare triple {568497#true} [607] L698-5-->L698-6: Formula: (= (select (select |v_#memory_int_11| |v_~#mutex~0.base_5|) (+ |v_~#mutex~0.offset_5| 12)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_5|, #memory_int=|v_#memory_int_11|, ~#mutex~0.base=|v_~#mutex~0.base_5|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_5|, #memory_int=|v_#memory_int_11|, ~#mutex~0.base=|v_~#mutex~0.base_5|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,917 INFO L290 TraceCheckUtils]: 20: Hoare triple {568497#true} [581] L698-4-->L698-5: Formula: (= (select (select |v_#memory_int_10| |v_~#mutex~0.base_4|) (+ |v_~#mutex~0.offset_4| 8)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_4|, #memory_int=|v_#memory_int_10|, ~#mutex~0.base=|v_~#mutex~0.base_4|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_4|, #memory_int=|v_#memory_int_10|, ~#mutex~0.base=|v_~#mutex~0.base_4|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,917 INFO L290 TraceCheckUtils]: 19: Hoare triple {568497#true} [526] L698-3-->L698-4: Formula: (= (select (select |v_#memory_int_9| |v_~#mutex~0.base_3|) (+ |v_~#mutex~0.offset_3| 4)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_3|, #memory_int=|v_#memory_int_9|, ~#mutex~0.base=|v_~#mutex~0.base_3|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_3|, #memory_int=|v_#memory_int_9|, ~#mutex~0.base=|v_~#mutex~0.base_3|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,917 INFO L290 TraceCheckUtils]: 18: Hoare triple {568497#true} [603] L698-2-->L698-3: Formula: (= (select (select |v_#memory_int_8| |v_~#mutex~0.base_2|) |v_~#mutex~0.offset_2|) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_2|, #memory_int=|v_#memory_int_8|, ~#mutex~0.base=|v_~#mutex~0.base_2|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_2|, #memory_int=|v_#memory_int_8|, ~#mutex~0.base=|v_~#mutex~0.base_2|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,917 INFO L290 TraceCheckUtils]: 17: Hoare triple {568497#true} [580] L698-1-->L698-2: Formula: (and (= (select |v_#length_4| 4) 24) (= (select |v_#valid_5| 4) 1)) InVars {#length=|v_#length_4|, #valid=|v_#valid_5|} OutVars{#length=|v_#length_4|, #valid=|v_#valid_5|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,917 INFO L290 TraceCheckUtils]: 16: Hoare triple {568497#true} [582] L698-->L698-1: Formula: (and (= 4 |v_~#mutex~0.base_1|) (= |v_~#mutex~0.offset_1| 0)) InVars {} OutVars{~#mutex~0.base=|v_~#mutex~0.base_1|, ~#mutex~0.offset=|v_~#mutex~0.offset_1|} AuxVars[] AssignedVars[~#mutex~0.base, ~#mutex~0.offset] {568497#true} is VALID [2022-02-20 20:41:24,917 INFO L290 TraceCheckUtils]: 15: Hoare triple {568497#true} [555] L696-6-->L698: Formula: (= v_~global~0_1 0) InVars {} OutVars{~global~0=v_~global~0_1} AuxVars[] AssignedVars[~global~0] {568497#true} is VALID [2022-02-20 20:41:24,918 INFO L290 TraceCheckUtils]: 14: Hoare triple {568497#true} [546] L696-5-->L696-6: Formula: (= (select (select |v_#memory_int_7| |v_~#__global_lock~0.base_6|) (+ 16 |v_~#__global_lock~0.offset_6|)) 0) InVars {#memory_int=|v_#memory_int_7|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_6|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_6|} OutVars{#memory_int=|v_#memory_int_7|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_6|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_6|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,918 INFO L290 TraceCheckUtils]: 13: Hoare triple {568497#true} [598] L696-4-->L696-5: Formula: (= (select (select |v_#memory_int_6| |v_~#__global_lock~0.base_5|) (+ |v_~#__global_lock~0.offset_5| 12)) 0) InVars {#memory_int=|v_#memory_int_6|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_5|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_5|} OutVars{#memory_int=|v_#memory_int_6|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_5|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_5|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,918 INFO L290 TraceCheckUtils]: 12: Hoare triple {568497#true} [615] L696-3-->L696-4: Formula: (= (select (select |v_#memory_int_5| |v_~#__global_lock~0.base_4|) (+ |v_~#__global_lock~0.offset_4| 8)) 0) InVars {#memory_int=|v_#memory_int_5|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_4|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_4|} OutVars{#memory_int=|v_#memory_int_5|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_4|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_4|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,918 INFO L290 TraceCheckUtils]: 11: Hoare triple {568497#true} [519] L696-2-->L696-3: Formula: (= (select (select |v_#memory_int_4| |v_~#__global_lock~0.base_3|) (+ |v_~#__global_lock~0.offset_3| 4)) 0) InVars {#memory_int=|v_#memory_int_4|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_3|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_3|} OutVars{#memory_int=|v_#memory_int_4|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_3|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_3|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,918 INFO L290 TraceCheckUtils]: 10: Hoare triple {568497#true} [593] L696-1-->L696-2: Formula: (= (select (select |v_#memory_int_3| |v_~#__global_lock~0.base_2|) |v_~#__global_lock~0.offset_2|) 0) InVars {#memory_int=|v_#memory_int_3|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_2|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_2|} OutVars{#memory_int=|v_#memory_int_3|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_2|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_2|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,918 INFO L290 TraceCheckUtils]: 9: Hoare triple {568497#true} [542] L696-->L696-1: Formula: (and (= (select |v_#length_3| 3) 24) (= (select |v_#valid_4| 3) 1)) InVars {#length=|v_#length_3|, #valid=|v_#valid_4|} OutVars{#length=|v_#length_3|, #valid=|v_#valid_4|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,919 INFO L290 TraceCheckUtils]: 8: Hoare triple {568497#true} [560] L690-4-->L696: Formula: (and (= 3 |v_~#__global_lock~0.base_1|) (= |v_~#__global_lock~0.offset_1| 0)) InVars {} OutVars{~#__global_lock~0.base=|v_~#__global_lock~0.base_1|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_1|} AuxVars[] AssignedVars[~#__global_lock~0.offset, ~#__global_lock~0.base] {568497#true} is VALID [2022-02-20 20:41:24,919 INFO L290 TraceCheckUtils]: 7: Hoare triple {568497#true} [592] L690-3-->L690-4: Formula: (and (= (select |v_#length_2| 2) 13) (= (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[] {568497#true} is VALID [2022-02-20 20:41:24,919 INFO L290 TraceCheckUtils]: 6: Hoare triple {568497#true} [525] L690-2-->L690-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[] {568497#true} is VALID [2022-02-20 20:41:24,919 INFO L290 TraceCheckUtils]: 5: Hoare triple {568497#true} [512] L690-1-->L690-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[] {568497#true} is VALID [2022-02-20 20:41:24,919 INFO L290 TraceCheckUtils]: 4: Hoare triple {568497#true} [551] L690-->L690-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[] {568497#true} is VALID [2022-02-20 20:41:24,919 INFO L290 TraceCheckUtils]: 3: Hoare triple {568497#true} [612] L-1-2-->L690: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,919 INFO L290 TraceCheckUtils]: 2: Hoare triple {568497#true} [609] L-1-1-->L-1-2: Formula: (= (select |v_#valid_1| 0) 0) InVars {#valid=|v_#valid_1|} OutVars{#valid=|v_#valid_1|} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,920 INFO L290 TraceCheckUtils]: 1: Hoare triple {568497#true} [536] L-1-->L-1-1: Formula: (and (= |v_#NULL.base_1| 0) (= |v_#NULL.offset_1| 0)) InVars {} OutVars{#NULL.offset=|v_#NULL.offset_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {568497#true} is VALID [2022-02-20 20:41:24,920 INFO L290 TraceCheckUtils]: 0: Hoare triple {568497#true} [605] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {568497#true} is VALID [2022-02-20 20:41:24,920 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 20:41:24,923 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1497070346] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 20:41:24,923 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 20:41:24,923 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5, 5] total 10 [2022-02-20 20:41:24,923 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1255276654] [2022-02-20 20:41:24,923 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 20:41:24,924 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 7.5) internal successors, (75), 10 states have internal predecessors, (75), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 53 [2022-02-20 20:41:24,924 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 20:41:24,924 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 7.5) internal successors, (75), 10 states have internal predecessors, (75), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:24,975 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 75 edges. 75 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:41:24,976 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-02-20 20:41:24,976 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 20:41:24,977 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-02-20 20:41:24,977 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=30, Invalid=60, Unknown=0, NotChecked=0, Total=90 [2022-02-20 20:41:24,978 INFO L499 CegarLoopForPetriNet]: Number of universal loopers: 147 out of 185 [2022-02-20 20:41:24,980 INFO L92 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 168 places, 138 transitions, 307 flow. Second operand has 10 states, 10 states have (on average 149.3) internal successors, (1493), 10 states have internal predecessors, (1493), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:24,980 INFO L101 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-02-20 20:41:24,980 INFO L102 encePairwiseOnDemand]: Number of universal subtrahend loopers: 147 of 185 [2022-02-20 20:41:24,980 INFO L74 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-02-20 20:41:25,104 INFO L129 PetriNetUnfolder]: 0/159 cut-off events. [2022-02-20 20:41:25,104 INFO L130 PetriNetUnfolder]: For 10/10 co-relation queries the response was YES. [2022-02-20 20:41:25,105 INFO L84 FinitePrefix]: Finished finitePrefix Result has 207 conditions, 159 events. 0/159 cut-off events. For 10/10 co-relation queries the response was YES. Maximal size of possible extension queue 5. Compared 260 event pairs, 0 based on Foata normal form. 2/161 useless extension candidates. Maximal degree in co-relation 0. Up to 7 conditions per place. [2022-02-20 20:41:25,105 INFO L132 encePairwiseOnDemand]: 179/185 looper letters, 13 selfloop transitions, 9 changer transitions 0/148 dead transitions. [2022-02-20 20:41:25,105 INFO L138 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 155 places, 148 transitions, 373 flow [2022-02-20 20:41:25,105 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 20:41:25,105 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 9 states. [2022-02-20 20:41:25,116 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 1347 transitions. [2022-02-20 20:41:25,117 INFO L544 CegarLoopForPetriNet]: DFA transition density 0.809009009009009 [2022-02-20 20:41:25,117 INFO L72 ComplementDD]: Start complementDD. Operand 9 states and 1347 transitions. [2022-02-20 20:41:25,117 INFO L73 IsDeterministic]: Start isDeterministic. Operand 9 states and 1347 transitions. [2022-02-20 20:41:25,118 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-02-20 20:41:25,118 INFO L117 ReachableStatesCopy]: Start reachableStatesCopy. Operand 9 states and 1347 transitions. [2022-02-20 20:41:25,120 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends has 10 states, 9 states have (on average 149.66666666666666) internal successors, (1347), 9 states have internal predecessors, (1347), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:25,121 INFO L131 ReachableStatesCopy]: Finished reachableStatesCopy Result has 10 states, 10 states have (on average 185.0) internal successors, (1850), 10 states have internal predecessors, (1850), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:25,122 INFO L81 ComplementDD]: Finished complementDD. Result has 10 states, 10 states have (on average 185.0) internal successors, (1850), 10 states have internal predecessors, (1850), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:25,122 INFO L186 Difference]: Start difference. First operand has 168 places, 138 transitions, 307 flow. Second operand 9 states and 1347 transitions. [2022-02-20 20:41:25,122 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 155 places, 148 transitions, 373 flow [2022-02-20 20:41:25,123 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 154 places, 148 transitions, 365 flow, removed 3 selfloop flow, removed 1 redundant places. [2022-02-20 20:41:25,125 INFO L242 Difference]: Finished difference. Result has 157 places, 144 transitions, 349 flow [2022-02-20 20:41:25,126 INFO L317 CegarLoopForPetriNet]: {PETRI_ALPHABET=185, PETRI_DIFFERENCE_MINUEND_FLOW=299, PETRI_DIFFERENCE_MINUEND_PLACES=146, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=138, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=5, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=132, PETRI_DIFFERENCE_SUBTRAHEND_STATES=9, PETRI_FLOW=349, PETRI_PLACES=157, PETRI_TRANSITIONS=144} [2022-02-20 20:41:25,127 INFO L334 CegarLoopForPetriNet]: 166 programPoint places, -9 predicate places. [2022-02-20 20:41:25,127 INFO L111 iNet2FiniteAutomaton]: Start petriNet2FiniteAutomaton. Operand has 157 places, 144 transitions, 349 flow [2022-02-20 20:41:38,268 INFO L133 iNet2FiniteAutomaton]: Finished petriNet2FiniteAutomaton. Result has 556954 states, 556952 states have (on average 3.838736551803387) internal successors, (2137992), 556953 states have internal predecessors, (2137992), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:40,307 INFO L78 Accepts]: Start accepts. Automaton has has 556954 states, 556952 states have (on average 3.838736551803387) internal successors, (2137992), 556953 states have internal predecessors, (2137992), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 53 [2022-02-20 20:41:40,307 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 20:41:40,307 INFO L470 AbstractCegarLoop]: Abstraction has has 157 places, 144 transitions, 349 flow [2022-02-20 20:41:40,308 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 149.3) internal successors, (1493), 10 states have internal predecessors, (1493), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:40,308 INFO L246 CegarLoopForPetriNet]: Found error trace [2022-02-20 20:41:40,308 INFO L254 CegarLoopForPetriNet]: trace histogram [4, 4, 4, 4, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 20:41:40,352 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-02-20 20:41:40,543 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable6 [2022-02-20 20:41:40,543 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0INUSE_VIOLATION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATION] === [2022-02-20 20:41:40,544 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:41:40,544 INFO L85 PathProgramCache]: Analyzing trace with hash -1592736104, now seen corresponding path program 1 times [2022-02-20 20:41:40,544 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:41:40,544 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [438267908] [2022-02-20 20:41:40,544 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:41:40,544 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:41:40,589 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-02-20 20:41:40,603 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-02-20 20:41:40,620 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-02-20 20:41:40,643 INFO L138 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-02-20 20:41:40,644 INFO L628 BasicCegarLoop]: Counterexample is feasible [2022-02-20 20:41:40,644 INFO L764 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0INUSE_VIOLATION (1 of 2 remaining) [2022-02-20 20:41:40,644 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 2 remaining) [2022-02-20 20:41:40,644 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7 [2022-02-20 20:41:40,645 INFO L732 BasicCegarLoop]: Path program histogram: [1, 1, 1] [2022-02-20 20:41:40,645 WARN L235 ceAbstractionStarter]: 3 thread instances were not sufficient, I will increase this number and restart the analysis [2022-02-20 20:41:40,645 INFO L534 ceAbstractionStarter]: Constructing petrified ICFG for 4 thread instances. [2022-02-20 20:41:40,662 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_#in~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,662 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_#in~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,662 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,662 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,662 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_#in~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,662 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_#in~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,662 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,662 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,663 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,663 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,663 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,663 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,663 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,663 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,663 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,663 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,663 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,663 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,663 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,663 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,664 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,664 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,664 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,664 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,664 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,665 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,665 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,665 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,666 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_#res#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,666 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_#res#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,666 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_#res#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,666 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_#res#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,666 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,666 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,666 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,666 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,666 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,666 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,666 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_#in~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,666 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_#in~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,666 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,666 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,667 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_#in~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,667 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_#in~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,667 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,667 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,667 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,667 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,667 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,667 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,667 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,667 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,667 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,667 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,667 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,667 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,667 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,667 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,668 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,668 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,668 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,668 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,668 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,668 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,668 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,668 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,668 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_#res#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,668 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_#res#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,668 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_#res#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,668 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_#res#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,668 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,668 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,668 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,669 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,669 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,669 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,680 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_#in~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,680 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_#in~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,680 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,680 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,680 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_#in~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,680 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_#in~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,680 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,680 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,680 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,681 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,681 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,681 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,681 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,681 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,681 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,681 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,681 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,681 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,681 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,681 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,681 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,681 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,682 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,682 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,682 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,682 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,682 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,683 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,683 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_#res#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,683 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_#res#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,683 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_#res#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,683 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_#res#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,683 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,683 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,683 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,684 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,684 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,684 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,685 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_#in~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,685 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_#in~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,685 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,685 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,685 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_#in~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,685 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_#in~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,685 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,685 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,685 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,685 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,686 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,686 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,686 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,686 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,686 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,686 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,686 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,687 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,687 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,687 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,687 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,687 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,687 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,687 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,687 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,688 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,688 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,688 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,688 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_#res#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,688 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_#res#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,688 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_#res#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,688 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_#res#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,688 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,689 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,689 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,689 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,689 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,689 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,689 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,690 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,690 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_#res#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,690 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,690 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,690 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,690 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,690 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_#res#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,690 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of4ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,691 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,707 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,707 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_#res#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,707 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,707 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,708 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,708 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_#res#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,708 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,708 WARN L322 ript$VariableManager]: TermVariabe |t_funThread2of4ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,708 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_#res#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,709 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,709 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,709 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,709 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,709 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,709 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,709 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_#res#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,709 WARN L322 ript$VariableManager]: TermVariabe |t_funThread3of4ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,710 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_#res#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,710 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_~arg#1.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,710 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_#t~post5#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,710 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_~arg#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,710 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_#t~nondet4#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,711 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_#t~post7#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,711 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_#res#1.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,711 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_#t~nondet6#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,711 WARN L322 ript$VariableManager]: TermVariabe |t_funThread4of4ForFork0_lock_#t~nondet3#1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:41:40,718 INFO L148 ThreadInstanceAdder]: Constructed 4 joinOtherThreadTransitions. [2022-02-20 20:41:40,719 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 20:41:40,722 INFO L339 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mLoopAccelerationTechnique=FAST_UPR [2022-02-20 20:41:40,723 INFO L340 AbstractCegarLoop]: Starting to check reachability of 2 error locations. [2022-02-20 20:41:40,724 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 196 places, 220 transitions, 484 flow [2022-02-20 20:41:40,815 INFO L129 PetriNetUnfolder]: 81/593 cut-off events. [2022-02-20 20:41:40,815 INFO L130 PetriNetUnfolder]: For 48/48 co-relation queries the response was YES. [2022-02-20 20:41:40,820 INFO L84 FinitePrefix]: Finished finitePrefix Result has 648 conditions, 593 events. 81/593 cut-off events. For 48/48 co-relation queries the response was YES. Maximal size of possible extension queue 15. Compared 2389 event pairs, 6 based on Foata normal form. 0/507 useless extension candidates. Maximal degree in co-relation 411. Up to 32 conditions per place. [2022-02-20 20:41:40,820 INFO L82 GeneralOperation]: Start removeDead. Operand has 196 places, 220 transitions, 484 flow [2022-02-20 20:41:40,824 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 196 places, 220 transitions, 484 flow [2022-02-20 20:41:40,828 INFO L129 PetriNetUnfolder]: 6/94 cut-off events. [2022-02-20 20:41:40,828 INFO L130 PetriNetUnfolder]: For 1/1 co-relation queries the response was YES. [2022-02-20 20:41:40,828 INFO L246 CegarLoopForPetriNet]: Found error trace [2022-02-20 20:41:40,829 INFO L254 CegarLoopForPetriNet]: trace 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] [2022-02-20 20:41:40,829 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATION] === [2022-02-20 20:41:40,829 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:41:40,829 INFO L85 PathProgramCache]: Analyzing trace with hash 808663471, now seen corresponding path program 1 times [2022-02-20 20:41:40,829 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:41:40,829 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [192331335] [2022-02-20 20:41:40,830 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:41:40,830 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:41:40,841 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:41:40,864 INFO L290 TraceCheckUtils]: 0: Hoare triple {199#true} [825] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {199#true} is VALID [2022-02-20 20:41:40,864 INFO L290 TraceCheckUtils]: 1: Hoare triple {199#true} [756] L-1-->L-1-1: Formula: (and (= |v_#NULL.base_1| 0) (= |v_#NULL.offset_1| 0)) InVars {} OutVars{#NULL.offset=|v_#NULL.offset_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {199#true} is VALID [2022-02-20 20:41:40,864 INFO L290 TraceCheckUtils]: 2: Hoare triple {199#true} [829] L-1-1-->L-1-2: Formula: (= (select |v_#valid_1| 0) 0) InVars {#valid=|v_#valid_1|} OutVars{#valid=|v_#valid_1|} AuxVars[] AssignedVars[] {199#true} is VALID [2022-02-20 20:41:40,864 INFO L290 TraceCheckUtils]: 3: Hoare triple {199#true} [832] L-1-2-->L690: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {199#true} is VALID [2022-02-20 20:41:40,865 INFO L290 TraceCheckUtils]: 4: Hoare triple {199#true} [771] L690-->L690-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[] {199#true} is VALID [2022-02-20 20:41:40,865 INFO L290 TraceCheckUtils]: 5: Hoare triple {199#true} [732] L690-1-->L690-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[] {199#true} is VALID [2022-02-20 20:41:40,865 INFO L290 TraceCheckUtils]: 6: Hoare triple {199#true} [745] L690-2-->L690-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[] {199#true} is VALID [2022-02-20 20:41:40,865 INFO L290 TraceCheckUtils]: 7: Hoare triple {199#true} [812] L690-3-->L690-4: Formula: (and (= (select |v_#length_2| 2) 13) (= (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[] {199#true} is VALID [2022-02-20 20:41:40,865 INFO L290 TraceCheckUtils]: 8: Hoare triple {199#true} [780] L690-4-->L696: Formula: (and (= 3 |v_~#__global_lock~0.base_1|) (= |v_~#__global_lock~0.offset_1| 0)) InVars {} OutVars{~#__global_lock~0.base=|v_~#__global_lock~0.base_1|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_1|} AuxVars[] AssignedVars[~#__global_lock~0.offset, ~#__global_lock~0.base] {199#true} is VALID [2022-02-20 20:41:40,865 INFO L290 TraceCheckUtils]: 9: Hoare triple {199#true} [762] L696-->L696-1: Formula: (and (= (select |v_#length_3| 3) 24) (= (select |v_#valid_4| 3) 1)) InVars {#length=|v_#length_3|, #valid=|v_#valid_4|} OutVars{#length=|v_#length_3|, #valid=|v_#valid_4|} AuxVars[] AssignedVars[] {199#true} is VALID [2022-02-20 20:41:40,865 INFO L290 TraceCheckUtils]: 10: Hoare triple {199#true} [813] L696-1-->L696-2: Formula: (= (select (select |v_#memory_int_3| |v_~#__global_lock~0.base_2|) |v_~#__global_lock~0.offset_2|) 0) InVars {#memory_int=|v_#memory_int_3|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_2|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_2|} OutVars{#memory_int=|v_#memory_int_3|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_2|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_2|} AuxVars[] AssignedVars[] {199#true} is VALID [2022-02-20 20:41:40,866 INFO L290 TraceCheckUtils]: 11: Hoare triple {199#true} [739] L696-2-->L696-3: Formula: (= (select (select |v_#memory_int_4| |v_~#__global_lock~0.base_3|) (+ |v_~#__global_lock~0.offset_3| 4)) 0) InVars {#memory_int=|v_#memory_int_4|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_3|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_3|} OutVars{#memory_int=|v_#memory_int_4|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_3|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_3|} AuxVars[] AssignedVars[] {199#true} is VALID [2022-02-20 20:41:40,866 INFO L290 TraceCheckUtils]: 12: Hoare triple {199#true} [835] L696-3-->L696-4: Formula: (= (select (select |v_#memory_int_5| |v_~#__global_lock~0.base_4|) (+ |v_~#__global_lock~0.offset_4| 8)) 0) InVars {#memory_int=|v_#memory_int_5|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_4|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_4|} OutVars{#memory_int=|v_#memory_int_5|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_4|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_4|} AuxVars[] AssignedVars[] {199#true} is VALID [2022-02-20 20:41:40,866 INFO L290 TraceCheckUtils]: 13: Hoare triple {199#true} [818] L696-4-->L696-5: Formula: (= (select (select |v_#memory_int_6| |v_~#__global_lock~0.base_5|) (+ |v_~#__global_lock~0.offset_5| 12)) 0) InVars {#memory_int=|v_#memory_int_6|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_5|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_5|} OutVars{#memory_int=|v_#memory_int_6|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_5|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_5|} AuxVars[] AssignedVars[] {199#true} is VALID [2022-02-20 20:41:40,866 INFO L290 TraceCheckUtils]: 14: Hoare triple {199#true} [766] L696-5-->L696-6: Formula: (= (select (select |v_#memory_int_7| |v_~#__global_lock~0.base_6|) (+ 16 |v_~#__global_lock~0.offset_6|)) 0) InVars {#memory_int=|v_#memory_int_7|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_6|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_6|} OutVars{#memory_int=|v_#memory_int_7|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_6|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_6|} AuxVars[] AssignedVars[] {199#true} is VALID [2022-02-20 20:41:40,866 INFO L290 TraceCheckUtils]: 15: Hoare triple {199#true} [775] L696-6-->L698: Formula: (= v_~global~0_1 0) InVars {} OutVars{~global~0=v_~global~0_1} AuxVars[] AssignedVars[~global~0] {199#true} is VALID [2022-02-20 20:41:40,866 INFO L290 TraceCheckUtils]: 16: Hoare triple {199#true} [802] L698-->L698-1: Formula: (and (= 4 |v_~#mutex~0.base_1|) (= |v_~#mutex~0.offset_1| 0)) InVars {} OutVars{~#mutex~0.base=|v_~#mutex~0.base_1|, ~#mutex~0.offset=|v_~#mutex~0.offset_1|} AuxVars[] AssignedVars[~#mutex~0.base, ~#mutex~0.offset] {199#true} is VALID [2022-02-20 20:41:40,867 INFO L290 TraceCheckUtils]: 17: Hoare triple {199#true} [800] L698-1-->L698-2: Formula: (and (= (select |v_#length_4| 4) 24) (= (select |v_#valid_5| 4) 1)) InVars {#length=|v_#length_4|, #valid=|v_#valid_5|} OutVars{#length=|v_#length_4|, #valid=|v_#valid_5|} AuxVars[] AssignedVars[] {199#true} is VALID [2022-02-20 20:41:40,867 INFO L290 TraceCheckUtils]: 18: Hoare triple {199#true} [823] L698-2-->L698-3: Formula: (= (select (select |v_#memory_int_8| |v_~#mutex~0.base_2|) |v_~#mutex~0.offset_2|) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_2|, #memory_int=|v_#memory_int_8|, ~#mutex~0.base=|v_~#mutex~0.base_2|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_2|, #memory_int=|v_#memory_int_8|, ~#mutex~0.base=|v_~#mutex~0.base_2|} AuxVars[] AssignedVars[] {199#true} is VALID [2022-02-20 20:41:40,867 INFO L290 TraceCheckUtils]: 19: Hoare triple {199#true} [746] L698-3-->L698-4: Formula: (= (select (select |v_#memory_int_9| |v_~#mutex~0.base_3|) (+ |v_~#mutex~0.offset_3| 4)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_3|, #memory_int=|v_#memory_int_9|, ~#mutex~0.base=|v_~#mutex~0.base_3|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_3|, #memory_int=|v_#memory_int_9|, ~#mutex~0.base=|v_~#mutex~0.base_3|} AuxVars[] AssignedVars[] {199#true} is VALID [2022-02-20 20:41:40,867 INFO L290 TraceCheckUtils]: 20: Hoare triple {199#true} [801] L698-4-->L698-5: Formula: (= (select (select |v_#memory_int_10| |v_~#mutex~0.base_4|) (+ |v_~#mutex~0.offset_4| 8)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_4|, #memory_int=|v_#memory_int_10|, ~#mutex~0.base=|v_~#mutex~0.base_4|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_4|, #memory_int=|v_#memory_int_10|, ~#mutex~0.base=|v_~#mutex~0.base_4|} AuxVars[] AssignedVars[] {199#true} is VALID [2022-02-20 20:41:40,867 INFO L290 TraceCheckUtils]: 21: Hoare triple {199#true} [827] L698-5-->L698-6: Formula: (= (select (select |v_#memory_int_11| |v_~#mutex~0.base_5|) (+ |v_~#mutex~0.offset_5| 12)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_5|, #memory_int=|v_#memory_int_11|, ~#mutex~0.base=|v_~#mutex~0.base_5|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_5|, #memory_int=|v_#memory_int_11|, ~#mutex~0.base=|v_~#mutex~0.base_5|} AuxVars[] AssignedVars[] {199#true} is VALID [2022-02-20 20:41:40,867 INFO L290 TraceCheckUtils]: 22: Hoare triple {199#true} [824] L698-6-->L698-7: Formula: (= (select (select |v_#memory_int_12| |v_~#mutex~0.base_6|) (+ |v_~#mutex~0.offset_6| 16)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_6|, #memory_int=|v_#memory_int_12|, ~#mutex~0.base=|v_~#mutex~0.base_6|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_6|, #memory_int=|v_#memory_int_12|, ~#mutex~0.base=|v_~#mutex~0.base_6|} AuxVars[] AssignedVars[] {199#true} is VALID [2022-02-20 20:41:40,867 INFO L290 TraceCheckUtils]: 23: Hoare triple {199#true} [737] L698-7-->L-1-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {199#true} is VALID [2022-02-20 20:41:40,868 INFO L290 TraceCheckUtils]: 24: Hoare triple {199#true} [834] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {199#true} is VALID [2022-02-20 20:41:40,868 INFO L290 TraceCheckUtils]: 25: Hoare triple {199#true} [761] L-1-4-->L-1-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1] {199#true} is VALID [2022-02-20 20:41:40,868 INFO L290 TraceCheckUtils]: 26: Hoare triple {199#true} [734] L-1-5-->L712: Formula: true InVars {} OutVars{ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_1|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_1|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_1|, ULTIMATE.start_main_#t~mem13#1=|v_ULTIMATE.start_main_#t~mem13#1_1|, ULTIMATE.start_main_#t~nondet10#1=|v_ULTIMATE.start_main_#t~nondet10#1_1|, ULTIMATE.start_main_~#t_ids~0#1.base=|v_ULTIMATE.start_main_~#t_ids~0#1.base_1|, ULTIMATE.start_main_#t~pre9#1=|v_ULTIMATE.start_main_#t~pre9#1_1|, ULTIMATE.start_main_#t~post12#1=|v_ULTIMATE.start_main_#t~post12#1_1|, ULTIMATE.start_main_#t~post8#1=|v_ULTIMATE.start_main_#t~post8#1_1|, ULTIMATE.start_main_~#t_ids~0#1.offset=|v_ULTIMATE.start_main_~#t_ids~0#1.offset_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~1#1, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet11#1, ULTIMATE.start_main_#t~mem13#1, ULTIMATE.start_main_#t~nondet10#1, ULTIMATE.start_main_~#t_ids~0#1.base, ULTIMATE.start_main_#t~pre9#1, ULTIMATE.start_main_#t~post12#1, ULTIMATE.start_main_#t~post8#1, ULTIMATE.start_main_~#t_ids~0#1.offset] {199#true} is VALID [2022-02-20 20:41:40,868 INFO L290 TraceCheckUtils]: 27: Hoare triple {199#true} [782] L712-->L712-1: Formula: (and (= (store |v_#length_6| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2| 40000) |v_#length_5|) (= |v_#valid_6| (store |v_#valid_7| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2| 1)) (= |v_ULTIMATE.start_main_~#t_ids~0#1.offset_2| 0) (not (= |v_ULTIMATE.start_main_~#t_ids~0#1.base_2| 0)) (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2|) (= (select |v_#valid_7| |v_ULTIMATE.start_main_~#t_ids~0#1.base_2|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_6|, #valid=|v_#valid_7|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, ULTIMATE.start_main_~#t_ids~0#1.offset=|v_ULTIMATE.start_main_~#t_ids~0#1.offset_2|, #length=|v_#length_5|, ULTIMATE.start_main_~#t_ids~0#1.base=|v_ULTIMATE.start_main_~#t_ids~0#1.base_2|, #valid=|v_#valid_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#t_ids~0#1.base, #valid, ULTIMATE.start_main_~#t_ids~0#1.offset, #length] {199#true} is VALID [2022-02-20 20:41:40,868 INFO L290 TraceCheckUtils]: 28: Hoare triple {199#true} [788] L712-1-->L712-13: Formula: (= |v_ULTIMATE.start_main_~i~0#1_2| 0) InVars {} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {201#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 20:41:40,869 INFO L290 TraceCheckUtils]: 29: Hoare triple {201#(= |ULTIMATE.start_main_~i~0#1| 0)} [730] L712-13-->L712-14: Formula: (not (< |v_ULTIMATE.start_main_~i~0#1_3| 10000)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_3|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_3|} AuxVars[] AssignedVars[] {200#false} is VALID [2022-02-20 20:41:40,869 INFO L290 TraceCheckUtils]: 30: Hoare triple {200#false} [817] L712-14-->L713: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {200#false} is VALID [2022-02-20 20:41:40,869 INFO L290 TraceCheckUtils]: 31: Hoare triple {200#false} [805] L713-->L700: Formula: true InVars {} OutVars{ULTIMATE.start_lock_#t~nondet3#1=|v_ULTIMATE.start_lock_#t~nondet3#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_lock_#t~nondet3#1] {200#false} is VALID [2022-02-20 20:41:40,869 INFO L290 TraceCheckUtils]: 32: Hoare triple {200#false} [774] L700-->L700-1: Formula: (let ((.cse0 (select |v_#pthreadsMutex_2| |v_~#mutex~0.base_7|))) (and (= |v_ULTIMATE.start_lock_#t~nondet3#1_2| 0) (= |v_#pthreadsMutex_1| (store |v_#pthreadsMutex_2| |v_~#mutex~0.base_7| (store .cse0 |v_~#mutex~0.offset_7| 1))) (= (select .cse0 |v_~#mutex~0.offset_7|) 0))) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_7|, #pthreadsMutex=|v_#pthreadsMutex_2|, ~#mutex~0.base=|v_~#mutex~0.base_7|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_7|, #pthreadsMutex=|v_#pthreadsMutex_1|, ~#mutex~0.base=|v_~#mutex~0.base_7|, ULTIMATE.start_lock_#t~nondet3#1=|v_ULTIMATE.start_lock_#t~nondet3#1_2|} AuxVars[] AssignedVars[#pthreadsMutex, ULTIMATE.start_lock_#t~nondet3#1] {200#false} is VALID [2022-02-20 20:41:40,869 INFO L290 TraceCheckUtils]: 33: Hoare triple {200#false} [781] L700-1-->L699: Formula: true InVars {} OutVars{ULTIMATE.start_lock_#t~nondet3#1=|v_ULTIMATE.start_lock_#t~nondet3#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_lock_#t~nondet3#1] {200#false} is VALID [2022-02-20 20:41:40,869 INFO L290 TraceCheckUtils]: 34: Hoare triple {200#false} [758] L699-->L714-7: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {200#false} is VALID [2022-02-20 20:41:40,870 INFO L290 TraceCheckUtils]: 35: Hoare triple {200#false} [776] L714-7-->L714-1: Formula: (let ((.cse0 (select |v_#pthreadsMutex_4| |v_~#__global_lock~0.base_7|))) (and (= |v_ULTIMATE.start_main_#t~nondet11#1_2| 0) (= (select .cse0 |v_~#__global_lock~0.offset_7|) 0) (= |v_#pthreadsMutex_3| (store |v_#pthreadsMutex_4| |v_~#__global_lock~0.base_7| (store .cse0 |v_~#__global_lock~0.offset_7| 1))))) InVars {#pthreadsMutex=|v_#pthreadsMutex_4|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_7|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_7|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_3|, ULTIMATE.start_main_#t~nondet11#1=|v_ULTIMATE.start_main_#t~nondet11#1_2|, ~#__global_lock~0.base=|v_~#__global_lock~0.base_7|, ~#__global_lock~0.offset=|v_~#__global_lock~0.offset_7|} AuxVars[] AssignedVars[#pthreadsMutex, ULTIMATE.start_main_#t~nondet11#1] {200#false} is VALID [2022-02-20 20:41:40,870 INFO L290 TraceCheckUtils]: 36: Hoare triple {200#false} [742] L714-1-->L714-2: 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] {200#false} is VALID [2022-02-20 20:41:40,870 INFO L290 TraceCheckUtils]: 37: Hoare triple {200#false} [792] L714-2-->L714-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {200#false} is VALID [2022-02-20 20:41:40,870 INFO L290 TraceCheckUtils]: 38: Hoare triple {200#false} [728] L714-3-->L714-4: Formula: (= (ite (= v_~global~0_2 0) 1 0) |v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_1|) InVars {~global~0=v_~global~0_2} OutVars{ULTIMATE.start___VERIFIER_assert_#in~cond#1=|v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_1|, ~global~0=v_~global~0_2} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_#in~cond#1] {200#false} is VALID [2022-02-20 20:41:40,870 INFO L290 TraceCheckUtils]: 39: Hoare triple {200#false} [748] L714-4-->L691: Formula: true InVars {} OutVars{ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_1|} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_~cond#1] {200#false} is VALID [2022-02-20 20:41:40,870 INFO L290 TraceCheckUtils]: 40: Hoare triple {200#false} [754] L691-->L691-1: Formula: (= |v_ULTIMATE.start___VERIFIER_assert_~cond#1_2| |v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_2|) InVars {ULTIMATE.start___VERIFIER_assert_#in~cond#1=|v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_2|} OutVars{ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_2|, ULTIMATE.start___VERIFIER_assert_#in~cond#1=|v_ULTIMATE.start___VERIFIER_assert_#in~cond#1_2|} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_~cond#1] {200#false} is VALID [2022-02-20 20:41:40,870 INFO L290 TraceCheckUtils]: 41: Hoare triple {200#false} [838] L691-1-->L691-2: Formula: (= |v_ULTIMATE.start___VERIFIER_assert_~cond#1_3| 0) InVars {ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_3|} OutVars{ULTIMATE.start___VERIFIER_assert_~cond#1=|v_ULTIMATE.start___VERIFIER_assert_~cond#1_3|} AuxVars[] AssignedVars[] {200#false} is VALID [2022-02-20 20:41:40,871 INFO L290 TraceCheckUtils]: 42: Hoare triple {200#false} [750] L691-2-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {200#false} is VALID [2022-02-20 20:41:40,871 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 20:41:40,871 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 20:41:40,871 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [192331335] [2022-02-20 20:41:40,871 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [192331335] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 20:41:40,871 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 20:41:40,871 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 20:41:40,872 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [660982925] [2022-02-20 20:41:40,872 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 20:41:40,872 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 14.333333333333334) internal successors, (43), 3 states have internal predecessors, (43), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 43 [2022-02-20 20:41:40,872 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 20:41:40,872 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 14.333333333333334) internal successors, (43), 3 states have internal predecessors, (43), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:40,893 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:41:40,893 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 20:41:40,893 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 20:41:40,894 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 20:41:40,894 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 20:41:40,896 INFO L499 CegarLoopForPetriNet]: Number of universal loopers: 175 out of 220 [2022-02-20 20:41:40,896 INFO L92 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 196 places, 220 transitions, 484 flow. Second operand has 3 states, 3 states have (on average 176.0) internal successors, (528), 3 states have internal predecessors, (528), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:40,896 INFO L101 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-02-20 20:41:40,896 INFO L102 encePairwiseOnDemand]: Number of universal subtrahend loopers: 175 of 220 [2022-02-20 20:41:40,897 INFO L74 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-02-20 20:41:41,110 INFO L129 PetriNetUnfolder]: 20/506 cut-off events. [2022-02-20 20:41:41,110 INFO L130 PetriNetUnfolder]: For 112/167 co-relation queries the response was YES. [2022-02-20 20:41:41,112 INFO L84 FinitePrefix]: Finished finitePrefix Result has 622 conditions, 506 events. 20/506 cut-off events. For 112/167 co-relation queries the response was YES. Maximal size of possible extension queue 12. Compared 2049 event pairs, 6 based on Foata normal form. 396/878 useless extension candidates. Maximal degree in co-relation 384. Up to 56 conditions per place. [2022-02-20 20:41:41,113 INFO L132 encePairwiseOnDemand]: 188/220 looper letters, 13 selfloop transitions, 2 changer transitions 25/194 dead transitions. [2022-02-20 20:41:41,113 INFO L138 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 197 places, 194 transitions, 470 flow [2022-02-20 20:41:41,113 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 20:41:41,114 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2022-02-20 20:41:41,117 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 581 transitions. [2022-02-20 20:41:41,118 INFO L544 CegarLoopForPetriNet]: DFA transition density 0.8803030303030303 [2022-02-20 20:41:41,118 INFO L72 ComplementDD]: Start complementDD. Operand 3 states and 581 transitions. [2022-02-20 20:41:41,118 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3 states and 581 transitions. [2022-02-20 20:41:41,118 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-02-20 20:41:41,118 INFO L117 ReachableStatesCopy]: Start reachableStatesCopy. Operand 3 states and 581 transitions. [2022-02-20 20:41:41,119 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends has 4 states, 3 states have (on average 193.66666666666666) internal successors, (581), 3 states have internal predecessors, (581), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:41,120 INFO L131 ReachableStatesCopy]: Finished reachableStatesCopy Result has 4 states, 4 states have (on average 220.0) internal successors, (880), 4 states have internal predecessors, (880), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:41,120 INFO L81 ComplementDD]: Finished complementDD. Result has 4 states, 4 states have (on average 220.0) internal successors, (880), 4 states have internal predecessors, (880), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 20:41:41,120 INFO L186 Difference]: Start difference. First operand has 196 places, 220 transitions, 484 flow. Second operand 3 states and 581 transitions. [2022-02-20 20:41:41,120 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 197 places, 194 transitions, 470 flow [2022-02-20 20:41:41,186 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 197 places, 194 transitions, 470 flow, removed 0 selfloop flow, removed 0 redundant places. [2022-02-20 20:41:41,188 INFO L242 Difference]: Finished difference. Result has 198 places, 166 transitions, 374 flow [2022-02-20 20:41:41,189 INFO L317 CegarLoopForPetriNet]: {PETRI_ALPHABET=220, PETRI_DIFFERENCE_MINUEND_FLOW=424, PETRI_DIFFERENCE_MINUEND_PLACES=195, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=190, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=188, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=374, PETRI_PLACES=198, PETRI_TRANSITIONS=166} [2022-02-20 20:41:41,190 INFO L334 CegarLoopForPetriNet]: 196 programPoint places, 2 predicate places. [2022-02-20 20:41:41,190 INFO L111 iNet2FiniteAutomaton]: Start petriNet2FiniteAutomaton. Operand has 198 places, 166 transitions, 374 flow