./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/pthread-deagle/floating_read-10.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/pthread-deagle/floating_read-10.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 8144e99ab74da6c65d7c38142aa4ddc1b99b688ea06937a7acd153b5a75ad731 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 20:59:51,835 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 20:59:51,837 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 20:59:51,880 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 20:59:51,880 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 20:59:51,887 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 20:59:51,888 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 20:59:51,891 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 20:59:51,893 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 20:59:51,896 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 20:59:51,897 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 20:59:51,898 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 20:59:51,898 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 20:59:51,901 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 20:59:51,902 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 20:59:51,905 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 20:59:51,905 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 20:59:51,906 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 20:59:51,908 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 20:59:51,913 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 20:59:51,914 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 20:59:51,915 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 20:59:51,916 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 20:59:51,917 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 20:59:51,922 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 20:59:51,923 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 20:59:51,923 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 20:59:51,924 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 20:59:51,924 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 20:59:51,925 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 20:59:51,926 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 20:59:51,926 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 20:59:51,928 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 20:59:51,929 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 20:59:51,930 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 20:59:51,930 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 20:59:51,930 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 20:59:51,932 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 20:59:51,932 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 20:59:51,932 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 20:59:51,933 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 20:59:51,934 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:59:51,962 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 20:59:51,963 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 20:59:51,963 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 20:59:51,963 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 20:59:51,964 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 20:59:51,964 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 20:59:51,965 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 20:59:51,965 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 20:59:51,965 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 20:59:51,966 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 20:59:51,966 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 20:59:51,967 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 20:59:51,967 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 20:59:51,967 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 20:59:51,967 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-02-20 20:59:51,967 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 20:59:51,968 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-02-20 20:59:51,968 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 20:59:51,968 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-02-20 20:59:51,968 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 20:59:51,968 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-02-20 20:59:51,969 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 20:59:51,969 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 20:59:51,969 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 20:59:51,969 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 20:59:51,969 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 20:59:51,970 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 20:59:51,971 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-02-20 20:59:51,971 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 20:59:51,971 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 20:59:51,971 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-02-20 20:59:51,972 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-02-20 20:59:51,972 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-02-20 20:59:51,972 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 -> 8144e99ab74da6c65d7c38142aa4ddc1b99b688ea06937a7acd153b5a75ad731 [2022-02-20 20:59:52,208 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 20:59:52,232 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 20:59:52,234 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 20:59:52,235 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 20:59:52,235 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 20:59:52,236 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/pthread-deagle/floating_read-10.i [2022-02-20 20:59:52,296 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/627d59fa8/162de1c91f55424c952cc36c691bedad/FLAG7cc19f957 [2022-02-20 20:59:52,706 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 20:59:52,706 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-deagle/floating_read-10.i [2022-02-20 20:59:52,720 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/627d59fa8/162de1c91f55424c952cc36c691bedad/FLAG7cc19f957 [2022-02-20 20:59:52,731 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/627d59fa8/162de1c91f55424c952cc36c691bedad [2022-02-20 20:59:52,734 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 20:59:52,735 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 20:59:52,736 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 20:59:52,736 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 20:59:52,738 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 20:59:52,739 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 08:59:52" (1/1) ... [2022-02-20 20:59:52,740 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@6bb71671 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:59:52, skipping insertion in model container [2022-02-20 20:59:52,740 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 08:59:52" (1/1) ... [2022-02-20 20:59:52,749 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 20:59:52,779 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 20:59:53,073 WARN L1545 CHandler]: Possible shadowing of function thread [2022-02-20 20:59:53,087 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/pthread-deagle/floating_read-10.i[31197,31210] [2022-02-20 20:59:53,092 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 20:59:53,101 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 20:59:53,145 WARN L1545 CHandler]: Possible shadowing of function thread [2022-02-20 20:59:53,156 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/pthread-deagle/floating_read-10.i[31197,31210] [2022-02-20 20:59:53,160 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 20:59:53,205 INFO L208 MainTranslator]: Completed translation [2022-02-20 20:59:53,206 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:59:53 WrapperNode [2022-02-20 20:59:53,206 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 20:59:53,207 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 20:59:53,207 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 20:59:53,208 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 20:59:53,213 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:59:53" (1/1) ... [2022-02-20 20:59:53,226 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:59:53" (1/1) ... [2022-02-20 20:59:53,257 INFO L137 Inliner]: procedures = 162, calls = 17, calls flagged for inlining = 2, calls inlined = 2, statements flattened = 52 [2022-02-20 20:59:53,258 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 20:59:53,259 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 20:59:53,259 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 20:59:53,259 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 20:59:53,266 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:59:53" (1/1) ... [2022-02-20 20:59:53,267 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:59:53" (1/1) ... [2022-02-20 20:59:53,281 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:59:53" (1/1) ... [2022-02-20 20:59:53,282 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:59:53" (1/1) ... [2022-02-20 20:59:53,287 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:59:53" (1/1) ... [2022-02-20 20:59:53,298 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:59:53" (1/1) ... [2022-02-20 20:59:53,302 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:59:53" (1/1) ... [2022-02-20 20:59:53,309 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 20:59:53,310 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 20:59:53,310 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 20:59:53,310 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 20:59:53,311 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:59:53" (1/1) ... [2022-02-20 20:59:53,321 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 20:59:53,332 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 20:59:53,341 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:59:53,347 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:59:53,367 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-02-20 20:59:53,367 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-02-20 20:59:53,368 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2022-02-20 20:59:53,368 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 20:59:53,368 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-02-20 20:59:53,368 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 20:59:53,368 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-02-20 20:59:53,368 INFO L130 BoogieDeclarations]: Found specification of procedure thread [2022-02-20 20:59:53,369 INFO L138 BoogieDeclarations]: Found implementation of procedure thread [2022-02-20 20:59:53,369 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2022-02-20 20:59:53,369 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 20:59:53,369 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 20:59:53,370 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:59:53,463 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 20:59:53,464 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 20:59:53,587 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 20:59:53,592 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 20:59:53,593 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-02-20 20:59:53,594 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 08:59:53 BoogieIcfgContainer [2022-02-20 20:59:53,594 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 20:59:53,596 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 20:59:53,596 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 20:59:53,599 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 20:59:53,599 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 08:59:52" (1/3) ... [2022-02-20 20:59:53,599 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@713c034b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 08:59:53, skipping insertion in model container [2022-02-20 20:59:53,600 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:59:53" (2/3) ... [2022-02-20 20:59:53,600 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@713c034b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 08:59:53, skipping insertion in model container [2022-02-20 20:59:53,600 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 08:59:53" (3/3) ... [2022-02-20 20:59:53,601 INFO L111 eAbstractionObserver]: Analyzing ICFG floating_read-10.i [2022-02-20 20:59:53,607 WARN L150 ceAbstractionStarter]: Switching off computation of Hoare annotation because input is a concurrent program [2022-02-20 20:59:53,607 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 20:59:53,607 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-02-20 20:59:53,608 INFO L534 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2022-02-20 20:59:53,650 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of1ForFork0_#in~arg.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:53,650 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of1ForFork0_#in~arg.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:53,651 WARN L322 ript$VariableManager]: TermVariabe threadThread1of1ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:53,651 WARN L322 ript$VariableManager]: TermVariabe threadThread1of1ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:53,651 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of1ForFork0_#in~arg.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:53,652 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of1ForFork0_#in~arg.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:53,652 WARN L322 ript$VariableManager]: TermVariabe threadThread1of1ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:53,652 WARN L322 ript$VariableManager]: TermVariabe threadThread1of1ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:53,652 WARN L322 ript$VariableManager]: TermVariabe threadThread1of1ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:53,653 WARN L322 ript$VariableManager]: TermVariabe threadThread1of1ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:53,653 WARN L322 ript$VariableManager]: TermVariabe threadThread1of1ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:53,653 WARN L322 ript$VariableManager]: TermVariabe threadThread1of1ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:53,653 WARN L322 ript$VariableManager]: TermVariabe threadThread1of1ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:53,653 WARN L322 ript$VariableManager]: TermVariabe threadThread1of1ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:53,654 WARN L322 ript$VariableManager]: TermVariabe threadThread1of1ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:53,654 WARN L322 ript$VariableManager]: TermVariabe threadThread1of1ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:53,654 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of1ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:53,654 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of1ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:53,654 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of1ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:53,655 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of1ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:53,657 WARN L322 ript$VariableManager]: TermVariabe threadThread1of1ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:53,657 WARN L322 ript$VariableManager]: TermVariabe threadThread1of1ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:53,658 WARN L322 ript$VariableManager]: TermVariabe threadThread1of1ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:53,658 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of1ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:53,658 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of1ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:53,665 INFO L148 ThreadInstanceAdder]: Constructed 1 joinOtherThreadTransitions. [2022-02-20 20:59:53,701 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 20:59:53,707 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:59:53,707 INFO L340 AbstractCegarLoop]: Starting to check reachability of 2 error locations. [2022-02-20 20:59:53,721 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 58 places, 59 transitions, 126 flow [2022-02-20 20:59:53,769 INFO L129 PetriNetUnfolder]: 7/81 cut-off events. [2022-02-20 20:59:53,770 INFO L130 PetriNetUnfolder]: For 1/1 co-relation queries the response was YES. [2022-02-20 20:59:53,772 INFO L84 FinitePrefix]: Finished finitePrefix Result has 87 conditions, 81 events. 7/81 cut-off events. For 1/1 co-relation queries the response was YES. Maximal size of possible extension queue 5. Compared 104 event pairs, 0 based on Foata normal form. 0/69 useless extension candidates. Maximal degree in co-relation 42. Up to 4 conditions per place. [2022-02-20 20:59:53,772 INFO L82 GeneralOperation]: Start removeDead. Operand has 58 places, 59 transitions, 126 flow [2022-02-20 20:59:53,775 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 42 places, 40 transitions, 85 flow [2022-02-20 20:59:53,781 INFO L129 PetriNetUnfolder]: 1/25 cut-off events. [2022-02-20 20:59:53,781 INFO L130 PetriNetUnfolder]: For 0/0 co-relation queries the response was YES. [2022-02-20 20:59:53,781 INFO L246 CegarLoopForPetriNet]: Found error trace [2022-02-20 20:59:53,782 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] [2022-02-20 20:59:53,782 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATION] === [2022-02-20 20:59:53,786 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:59:53,786 INFO L85 PathProgramCache]: Analyzing trace with hash 1781753840, now seen corresponding path program 1 times [2022-02-20 20:59:53,794 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:59:53,795 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [906447917] [2022-02-20 20:59:53,795 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:59:53,796 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:59:53,882 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:59:53,973 INFO L290 TraceCheckUtils]: 0: Hoare triple {61#true} [126] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {61#true} is VALID [2022-02-20 20:59:53,973 INFO L290 TraceCheckUtils]: 1: Hoare triple {61#true} [116] 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] {61#true} is VALID [2022-02-20 20:59:53,973 INFO L290 TraceCheckUtils]: 2: Hoare triple {61#true} [133] 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[] {61#true} is VALID [2022-02-20 20:59:53,974 INFO L290 TraceCheckUtils]: 3: Hoare triple {61#true} [134] L-1-2-->L16: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {61#true} is VALID [2022-02-20 20:59:53,974 INFO L290 TraceCheckUtils]: 4: Hoare triple {61#true} [115] L16-->L16-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[] {61#true} is VALID [2022-02-20 20:59:53,975 INFO L290 TraceCheckUtils]: 5: Hoare triple {61#true} [83] L16-1-->L16-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[] {61#true} is VALID [2022-02-20 20:59:53,975 INFO L290 TraceCheckUtils]: 6: Hoare triple {61#true} [138] L16-2-->L16-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[] {61#true} is VALID [2022-02-20 20:59:53,976 INFO L290 TraceCheckUtils]: 7: Hoare triple {61#true} [120] L16-3-->L16-4: Formula: (and (= (select |v_#valid_3| 2) 1) (= (select |v_#length_2| 2) 1)) InVars {#length=|v_#length_2|, #valid=|v_#valid_3|} OutVars{#length=|v_#length_2|, #valid=|v_#valid_3|} AuxVars[] AssignedVars[] {61#true} is VALID [2022-02-20 20:59:53,976 INFO L290 TraceCheckUtils]: 8: Hoare triple {61#true} [123] L16-4-->L16-5: Formula: (= (select (select |v_#memory_int_3| 2) 0) 0) InVars {#memory_int=|v_#memory_int_3|} OutVars{#memory_int=|v_#memory_int_3|} AuxVars[] AssignedVars[] {61#true} is VALID [2022-02-20 20:59:53,977 INFO L290 TraceCheckUtils]: 9: Hoare triple {61#true} [113] L16-5-->L-1-3: Formula: (= v_~x~0_1 0) InVars {} OutVars{~x~0=v_~x~0_1} AuxVars[] AssignedVars[~x~0] {61#true} is VALID [2022-02-20 20:59:53,978 INFO L290 TraceCheckUtils]: 10: Hoare triple {61#true} [135] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {61#true} is VALID [2022-02-20 20:59:53,978 INFO L290 TraceCheckUtils]: 11: Hoare triple {61#true} [118] L-1-4-->L-1-5: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {61#true} is VALID [2022-02-20 20:59:53,978 INFO L290 TraceCheckUtils]: 12: Hoare triple {61#true} [97] L-1-5-->L-1-6: Formula: (and (= |v_ULTIMATE.start_#in~argv#1.offset_1| |v_ULTIMATE.start_main_#in~argv#1.offset_1|) (= |v_ULTIMATE.start_main_#in~argv#1.base_1| |v_ULTIMATE.start_#in~argv#1.base_1|) (= |v_ULTIMATE.start_main_#in~argc#1_1| |v_ULTIMATE.start_#in~argc#1_1|)) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} OutVars{ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_1|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_1|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_#in~argv#1.offset] {61#true} is VALID [2022-02-20 20:59:53,979 INFO L290 TraceCheckUtils]: 13: Hoare triple {61#true} [117] L-1-6-->L-1-7: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1] {61#true} is VALID [2022-02-20 20:59:53,980 INFO L290 TraceCheckUtils]: 14: Hoare triple {61#true} [93] L-1-7-->L718: Formula: true InVars {} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_1|, ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_1|, ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_1|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_1|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_1|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_1|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_1|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_1|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_1|, ULTIMATE.start_main_#t~mem5#1=|v_ULTIMATE.start_main_#t~mem5#1_1|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~1#1, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1, ULTIMATE.start_main_~#t~0#1.offset, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_#t~mem5#1, ULTIMATE.start_main_~#t~0#1.base, ULTIMATE.start_main_#t~pre2#1] {61#true} is VALID [2022-02-20 20:59:53,981 INFO L290 TraceCheckUtils]: 15: Hoare triple {61#true} [102] L718-->L718-1: Formula: (= |v_ULTIMATE.start_main_#in~argc#1_2| |v_ULTIMATE.start_main_~argc#1_2|) InVars {ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_2|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1] {61#true} is VALID [2022-02-20 20:59:53,981 INFO L290 TraceCheckUtils]: 16: Hoare triple {61#true} [139] L718-1-->L719: Formula: (and (= |v_ULTIMATE.start_main_~argv#1.offset_2| |v_ULTIMATE.start_main_#in~argv#1.offset_2|) (= |v_ULTIMATE.start_main_#in~argv#1.base_2| |v_ULTIMATE.start_main_~argv#1.base_2|)) InVars {ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|} OutVars{ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~argv#1.offset] {61#true} is VALID [2022-02-20 20:59:53,983 INFO L290 TraceCheckUtils]: 17: Hoare triple {61#true} [85] L719-->L719-1: Formula: (and (not (= |v_ULTIMATE.start_main_~#t~0#1.base_2| 0)) (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#t~0#1.base_2|) (= (store |v_#length_4| |v_ULTIMATE.start_main_~#t~0#1.base_2| 44) |v_#length_3|) (= |v_ULTIMATE.start_main_~#t~0#1.offset_2| 0) (= |v_#valid_4| (store |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2| 1)) (= (select |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_4|, #valid=|v_#valid_5|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_3|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_2|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_2|, #valid=|v_#valid_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#t~0#1.offset, #valid, #length, ULTIMATE.start_main_~#t~0#1.base] {61#true} is VALID [2022-02-20 20:59:53,983 INFO L290 TraceCheckUtils]: 18: Hoare triple {61#true} [124] L719-1-->L722: Formula: (= v_~x~0_2 0) InVars {} OutVars{~x~0=v_~x~0_2} AuxVars[] AssignedVars[~x~0] {61#true} is VALID [2022-02-20 20:59:53,983 INFO L290 TraceCheckUtils]: 19: Hoare triple {61#true} [136] L722-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_2| 1) InVars {} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {61#true} is VALID [2022-02-20 20:59:53,984 INFO L290 TraceCheckUtils]: 20: Hoare triple {61#true} [103] L723-5-->L723-6: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {62#false} is VALID [2022-02-20 20:59:53,985 INFO L290 TraceCheckUtils]: 21: Hoare triple {62#false} [88] L723-6-->L727: Formula: (not (< v_~x~0_4 11)) InVars {~x~0=v_~x~0_4} OutVars{~x~0=v_~x~0_4} AuxVars[] AssignedVars[] {62#false} is VALID [2022-02-20 20:59:53,985 INFO L290 TraceCheckUtils]: 22: Hoare triple {62#false} [95] L727-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {62#false} is VALID [2022-02-20 20:59:53,987 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:59:53,987 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 20:59:53,988 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [906447917] [2022-02-20 20:59:53,988 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [906447917] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 20:59:53,988 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 20:59:53,989 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 20:59:53,990 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2042376887] [2022-02-20 20:59:53,990 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 20:59:54,001 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 11.5) internal successors, (23), 2 states have internal predecessors, (23), 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 23 [2022-02-20 20:59:54,002 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 20:59:54,005 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 2 states, 2 states have (on average 11.5) internal successors, (23), 2 states have internal predecessors, (23), 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:59:54,041 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 23 edges. 23 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:59:54,044 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-02-20 20:59:54,045 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 20:59:54,078 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-02-20 20:59:54,079 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 20:59:54,082 INFO L499 CegarLoopForPetriNet]: Number of universal loopers: 53 out of 59 [2022-02-20 20:59:54,085 INFO L92 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 42 places, 40 transitions, 85 flow. Second operand has 2 states, 2 states have (on average 53.5) internal successors, (107), 2 states have internal predecessors, (107), 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:59:54,085 INFO L101 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-02-20 20:59:54,086 INFO L102 encePairwiseOnDemand]: Number of universal subtrahend loopers: 53 of 59 [2022-02-20 20:59:54,086 INFO L74 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-02-20 20:59:54,110 INFO L129 PetriNetUnfolder]: 0/46 cut-off events. [2022-02-20 20:59:54,110 INFO L130 PetriNetUnfolder]: For 1/1 co-relation queries the response was YES. [2022-02-20 20:59:54,110 INFO L84 FinitePrefix]: Finished finitePrefix Result has 53 conditions, 46 events. 0/46 cut-off events. For 1/1 co-relation queries the response was YES. Maximal size of possible extension queue 2. Compared 19 event pairs, 0 based on Foata normal form. 2/46 useless extension candidates. Maximal degree in co-relation 0. Up to 2 conditions per place. [2022-02-20 20:59:54,111 INFO L132 encePairwiseOnDemand]: 58/59 looper letters, 1 selfloop transitions, 0 changer transitions 0/39 dead transitions. [2022-02-20 20:59:54,112 INFO L138 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 43 places, 39 transitions, 85 flow [2022-02-20 20:59:54,112 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-02-20 20:59:54,113 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2022-02-20 20:59:54,129 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 108 transitions. [2022-02-20 20:59:54,130 INFO L544 CegarLoopForPetriNet]: DFA transition density 0.9152542372881356 [2022-02-20 20:59:54,131 INFO L72 ComplementDD]: Start complementDD. Operand 2 states and 108 transitions. [2022-02-20 20:59:54,131 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2 states and 108 transitions. [2022-02-20 20:59:54,131 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-02-20 20:59:54,133 INFO L117 ReachableStatesCopy]: Start reachableStatesCopy. Operand 2 states and 108 transitions. [2022-02-20 20:59:54,137 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends has 3 states, 2 states have (on average 54.0) internal successors, (108), 2 states have internal predecessors, (108), 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:59:54,142 INFO L131 ReachableStatesCopy]: Finished reachableStatesCopy Result has 3 states, 3 states have (on average 59.0) internal successors, (177), 3 states have internal predecessors, (177), 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:59:54,143 INFO L81 ComplementDD]: Finished complementDD. Result has 3 states, 3 states have (on average 59.0) internal successors, (177), 3 states have internal predecessors, (177), 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:59:54,144 INFO L186 Difference]: Start difference. First operand has 42 places, 40 transitions, 85 flow. Second operand 2 states and 108 transitions. [2022-02-20 20:59:54,145 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 43 places, 39 transitions, 85 flow [2022-02-20 20:59:54,148 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 43 places, 39 transitions, 85 flow, removed 0 selfloop flow, removed 0 redundant places. [2022-02-20 20:59:54,151 INFO L242 Difference]: Finished difference. Result has 43 places, 39 transitions, 83 flow [2022-02-20 20:59:54,153 INFO L317 CegarLoopForPetriNet]: {PETRI_ALPHABET=59, PETRI_DIFFERENCE_MINUEND_FLOW=83, PETRI_DIFFERENCE_MINUEND_PLACES=42, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=39, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=0, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=39, PETRI_DIFFERENCE_SUBTRAHEND_STATES=2, PETRI_FLOW=83, PETRI_PLACES=43, PETRI_TRANSITIONS=39} [2022-02-20 20:59:54,157 INFO L334 CegarLoopForPetriNet]: 42 programPoint places, 1 predicate places. [2022-02-20 20:59:54,158 INFO L111 iNet2FiniteAutomaton]: Start petriNet2FiniteAutomaton. Operand has 43 places, 39 transitions, 83 flow [2022-02-20 20:59:54,173 INFO L133 iNet2FiniteAutomaton]: Finished petriNet2FiniteAutomaton. Result has 112 states, 109 states have (on average 1.614678899082569) internal successors, (176), 111 states have internal predecessors, (176), 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:59:54,175 INFO L78 Accepts]: Start accepts. Automaton has has 112 states, 109 states have (on average 1.614678899082569) internal successors, (176), 111 states have internal predecessors, (176), 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 23 [2022-02-20 20:59:54,175 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 20:59:54,175 INFO L470 AbstractCegarLoop]: Abstraction has has 43 places, 39 transitions, 83 flow [2022-02-20 20:59:54,176 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 53.5) internal successors, (107), 2 states have internal predecessors, (107), 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:59:54,176 INFO L246 CegarLoopForPetriNet]: Found error trace [2022-02-20 20:59:54,177 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] [2022-02-20 20:59:54,177 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-20 20:59:54,177 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATION] === [2022-02-20 20:59:54,178 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:59:54,178 INFO L85 PathProgramCache]: Analyzing trace with hash 1781754801, now seen corresponding path program 1 times [2022-02-20 20:59:54,178 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:59:54,179 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [567784913] [2022-02-20 20:59:54,179 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:59:54,179 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:59:54,229 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:59:54,296 INFO L290 TraceCheckUtils]: 0: Hoare triple {177#true} [126] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {177#true} is VALID [2022-02-20 20:59:54,297 INFO L290 TraceCheckUtils]: 1: Hoare triple {177#true} [116] 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] {177#true} is VALID [2022-02-20 20:59:54,298 INFO L290 TraceCheckUtils]: 2: Hoare triple {177#true} [133] 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[] {177#true} is VALID [2022-02-20 20:59:54,299 INFO L290 TraceCheckUtils]: 3: Hoare triple {177#true} [134] L-1-2-->L16: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {177#true} is VALID [2022-02-20 20:59:54,299 INFO L290 TraceCheckUtils]: 4: Hoare triple {177#true} [115] L16-->L16-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[] {177#true} is VALID [2022-02-20 20:59:54,300 INFO L290 TraceCheckUtils]: 5: Hoare triple {177#true} [83] L16-1-->L16-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[] {177#true} is VALID [2022-02-20 20:59:54,300 INFO L290 TraceCheckUtils]: 6: Hoare triple {177#true} [138] L16-2-->L16-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[] {177#true} is VALID [2022-02-20 20:59:54,301 INFO L290 TraceCheckUtils]: 7: Hoare triple {177#true} [120] L16-3-->L16-4: Formula: (and (= (select |v_#valid_3| 2) 1) (= (select |v_#length_2| 2) 1)) InVars {#length=|v_#length_2|, #valid=|v_#valid_3|} OutVars{#length=|v_#length_2|, #valid=|v_#valid_3|} AuxVars[] AssignedVars[] {177#true} is VALID [2022-02-20 20:59:54,301 INFO L290 TraceCheckUtils]: 8: Hoare triple {177#true} [123] L16-4-->L16-5: Formula: (= (select (select |v_#memory_int_3| 2) 0) 0) InVars {#memory_int=|v_#memory_int_3|} OutVars{#memory_int=|v_#memory_int_3|} AuxVars[] AssignedVars[] {177#true} is VALID [2022-02-20 20:59:54,301 INFO L290 TraceCheckUtils]: 9: Hoare triple {177#true} [113] L16-5-->L-1-3: Formula: (= v_~x~0_1 0) InVars {} OutVars{~x~0=v_~x~0_1} AuxVars[] AssignedVars[~x~0] {177#true} is VALID [2022-02-20 20:59:54,301 INFO L290 TraceCheckUtils]: 10: Hoare triple {177#true} [135] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {177#true} is VALID [2022-02-20 20:59:54,302 INFO L290 TraceCheckUtils]: 11: Hoare triple {177#true} [118] L-1-4-->L-1-5: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {177#true} is VALID [2022-02-20 20:59:54,303 INFO L290 TraceCheckUtils]: 12: Hoare triple {177#true} [97] L-1-5-->L-1-6: Formula: (and (= |v_ULTIMATE.start_#in~argv#1.offset_1| |v_ULTIMATE.start_main_#in~argv#1.offset_1|) (= |v_ULTIMATE.start_main_#in~argv#1.base_1| |v_ULTIMATE.start_#in~argv#1.base_1|) (= |v_ULTIMATE.start_main_#in~argc#1_1| |v_ULTIMATE.start_#in~argc#1_1|)) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} OutVars{ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_1|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_1|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_#in~argv#1.offset] {177#true} is VALID [2022-02-20 20:59:54,303 INFO L290 TraceCheckUtils]: 13: Hoare triple {177#true} [117] L-1-6-->L-1-7: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1] {177#true} is VALID [2022-02-20 20:59:54,304 INFO L290 TraceCheckUtils]: 14: Hoare triple {177#true} [93] L-1-7-->L718: Formula: true InVars {} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_1|, ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_1|, ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_1|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_1|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_1|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_1|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_1|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_1|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_1|, ULTIMATE.start_main_#t~mem5#1=|v_ULTIMATE.start_main_#t~mem5#1_1|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~1#1, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1, ULTIMATE.start_main_~#t~0#1.offset, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_#t~mem5#1, ULTIMATE.start_main_~#t~0#1.base, ULTIMATE.start_main_#t~pre2#1] {177#true} is VALID [2022-02-20 20:59:54,304 INFO L290 TraceCheckUtils]: 15: Hoare triple {177#true} [102] L718-->L718-1: Formula: (= |v_ULTIMATE.start_main_#in~argc#1_2| |v_ULTIMATE.start_main_~argc#1_2|) InVars {ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_2|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1] {177#true} is VALID [2022-02-20 20:59:54,305 INFO L290 TraceCheckUtils]: 16: Hoare triple {177#true} [139] L718-1-->L719: Formula: (and (= |v_ULTIMATE.start_main_~argv#1.offset_2| |v_ULTIMATE.start_main_#in~argv#1.offset_2|) (= |v_ULTIMATE.start_main_#in~argv#1.base_2| |v_ULTIMATE.start_main_~argv#1.base_2|)) InVars {ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|} OutVars{ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~argv#1.offset] {177#true} is VALID [2022-02-20 20:59:54,305 INFO L290 TraceCheckUtils]: 17: Hoare triple {177#true} [85] L719-->L719-1: Formula: (and (not (= |v_ULTIMATE.start_main_~#t~0#1.base_2| 0)) (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#t~0#1.base_2|) (= (store |v_#length_4| |v_ULTIMATE.start_main_~#t~0#1.base_2| 44) |v_#length_3|) (= |v_ULTIMATE.start_main_~#t~0#1.offset_2| 0) (= |v_#valid_4| (store |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2| 1)) (= (select |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_4|, #valid=|v_#valid_5|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_3|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_2|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_2|, #valid=|v_#valid_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#t~0#1.offset, #valid, #length, ULTIMATE.start_main_~#t~0#1.base] {177#true} is VALID [2022-02-20 20:59:54,306 INFO L290 TraceCheckUtils]: 18: Hoare triple {177#true} [124] L719-1-->L722: Formula: (= v_~x~0_2 0) InVars {} OutVars{~x~0=v_~x~0_2} AuxVars[] AssignedVars[~x~0] {177#true} is VALID [2022-02-20 20:59:54,306 INFO L290 TraceCheckUtils]: 19: Hoare triple {177#true} [136] L722-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_2| 1) InVars {} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {179#(= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 20:59:54,307 INFO L290 TraceCheckUtils]: 20: Hoare triple {179#(= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} [104] L723-5-->L723-6: Formula: (not (<= |v_ULTIMATE.start_main_~i~0#1_3| 10)) 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[] {178#false} is VALID [2022-02-20 20:59:54,307 INFO L290 TraceCheckUtils]: 21: Hoare triple {178#false} [88] L723-6-->L727: Formula: (not (< v_~x~0_4 11)) InVars {~x~0=v_~x~0_4} OutVars{~x~0=v_~x~0_4} AuxVars[] AssignedVars[] {178#false} is VALID [2022-02-20 20:59:54,307 INFO L290 TraceCheckUtils]: 22: Hoare triple {178#false} [95] L727-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {178#false} is VALID [2022-02-20 20:59:54,308 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:59:54,308 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 20:59:54,308 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [567784913] [2022-02-20 20:59:54,309 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [567784913] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 20:59:54,309 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 20:59:54,309 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 20:59:54,309 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1845462329] [2022-02-20 20:59:54,309 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 20:59:54,311 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 7.666666666666667) internal successors, (23), 3 states have internal predecessors, (23), 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 23 [2022-02-20 20:59:54,312 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 20:59:54,313 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 7.666666666666667) internal successors, (23), 3 states have internal predecessors, (23), 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:59:54,341 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 23 edges. 23 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:59:54,341 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 20:59:54,341 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 20:59:54,342 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 20:59:54,342 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 20:59:54,344 INFO L499 CegarLoopForPetriNet]: Number of universal loopers: 46 out of 59 [2022-02-20 20:59:54,345 INFO L92 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 43 places, 39 transitions, 83 flow. Second operand has 3 states, 3 states have (on average 47.0) internal successors, (141), 3 states have internal predecessors, (141), 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:59:54,345 INFO L101 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-02-20 20:59:54,345 INFO L102 encePairwiseOnDemand]: Number of universal subtrahend loopers: 46 of 59 [2022-02-20 20:59:54,345 INFO L74 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-02-20 20:59:54,388 INFO L129 PetriNetUnfolder]: 0/43 cut-off events. [2022-02-20 20:59:54,388 INFO L130 PetriNetUnfolder]: For 0/0 co-relation queries the response was YES. [2022-02-20 20:59:54,388 INFO L84 FinitePrefix]: Finished finitePrefix Result has 60 conditions, 43 events. 0/43 cut-off events. For 0/0 co-relation queries the response was YES. Maximal size of possible extension queue 2. Compared 15 event pairs, 0 based on Foata normal form. 0/42 useless extension candidates. Maximal degree in co-relation 0. Up to 6 conditions per place. [2022-02-20 20:59:54,389 INFO L132 encePairwiseOnDemand]: 56/59 looper letters, 8 selfloop transitions, 2 changer transitions 0/41 dead transitions. [2022-02-20 20:59:54,389 INFO L138 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 45 places, 41 transitions, 107 flow [2022-02-20 20:59:54,389 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 20:59:54,389 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2022-02-20 20:59:54,398 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 149 transitions. [2022-02-20 20:59:54,400 INFO L544 CegarLoopForPetriNet]: DFA transition density 0.8418079096045198 [2022-02-20 20:59:54,400 INFO L72 ComplementDD]: Start complementDD. Operand 3 states and 149 transitions. [2022-02-20 20:59:54,400 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3 states and 149 transitions. [2022-02-20 20:59:54,400 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-02-20 20:59:54,400 INFO L117 ReachableStatesCopy]: Start reachableStatesCopy. Operand 3 states and 149 transitions. [2022-02-20 20:59:54,402 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends has 4 states, 3 states have (on average 49.666666666666664) internal successors, (149), 3 states have internal predecessors, (149), 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:59:54,402 INFO L131 ReachableStatesCopy]: Finished reachableStatesCopy Result has 4 states, 4 states have (on average 59.0) internal successors, (236), 4 states have internal predecessors, (236), 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:59:54,403 INFO L81 ComplementDD]: Finished complementDD. Result has 4 states, 4 states have (on average 59.0) internal successors, (236), 4 states have internal predecessors, (236), 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:59:54,403 INFO L186 Difference]: Start difference. First operand has 43 places, 39 transitions, 83 flow. Second operand 3 states and 149 transitions. [2022-02-20 20:59:54,403 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 45 places, 41 transitions, 107 flow [2022-02-20 20:59:54,404 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 45 places, 41 transitions, 107 flow, removed 0 selfloop flow, removed 0 redundant places. [2022-02-20 20:59:54,405 INFO L242 Difference]: Finished difference. Result has 46 places, 39 transitions, 91 flow [2022-02-20 20:59:54,406 INFO L317 CegarLoopForPetriNet]: {PETRI_ALPHABET=59, PETRI_DIFFERENCE_MINUEND_FLOW=83, PETRI_DIFFERENCE_MINUEND_PLACES=43, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=39, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=37, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=91, PETRI_PLACES=46, PETRI_TRANSITIONS=39} [2022-02-20 20:59:54,406 INFO L334 CegarLoopForPetriNet]: 42 programPoint places, 4 predicate places. [2022-02-20 20:59:54,407 INFO L111 iNet2FiniteAutomaton]: Start petriNet2FiniteAutomaton. Operand has 46 places, 39 transitions, 91 flow [2022-02-20 20:59:54,411 INFO L133 iNet2FiniteAutomaton]: Finished petriNet2FiniteAutomaton. Result has 109 states, 107 states have (on average 1.6168224299065421) internal successors, (173), 108 states have internal predecessors, (173), 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:59:54,415 INFO L78 Accepts]: Start accepts. Automaton has has 109 states, 107 states have (on average 1.6168224299065421) internal successors, (173), 108 states have internal predecessors, (173), 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 23 [2022-02-20 20:59:54,415 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 20:59:54,415 INFO L470 AbstractCegarLoop]: Abstraction has has 46 places, 39 transitions, 91 flow [2022-02-20 20:59:54,416 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 47.0) internal successors, (141), 3 states have internal predecessors, (141), 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:59:54,416 INFO L246 CegarLoopForPetriNet]: Found error trace [2022-02-20 20:59:54,416 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] [2022-02-20 20:59:54,416 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-02-20 20:59:54,416 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATION] === [2022-02-20 20:59:54,417 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:59:54,417 INFO L85 PathProgramCache]: Analyzing trace with hash -315270955, now seen corresponding path program 1 times [2022-02-20 20:59:54,417 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:59:54,418 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1719748649] [2022-02-20 20:59:54,418 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:59:54,418 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:59:54,455 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:59:54,496 INFO L290 TraceCheckUtils]: 0: Hoare triple {292#true} [126] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {292#true} is VALID [2022-02-20 20:59:54,496 INFO L290 TraceCheckUtils]: 1: Hoare triple {292#true} [116] 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] {292#true} is VALID [2022-02-20 20:59:54,497 INFO L290 TraceCheckUtils]: 2: Hoare triple {292#true} [133] 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[] {292#true} is VALID [2022-02-20 20:59:54,497 INFO L290 TraceCheckUtils]: 3: Hoare triple {292#true} [134] L-1-2-->L16: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {292#true} is VALID [2022-02-20 20:59:54,497 INFO L290 TraceCheckUtils]: 4: Hoare triple {292#true} [115] L16-->L16-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[] {292#true} is VALID [2022-02-20 20:59:54,497 INFO L290 TraceCheckUtils]: 5: Hoare triple {292#true} [83] L16-1-->L16-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[] {292#true} is VALID [2022-02-20 20:59:54,498 INFO L290 TraceCheckUtils]: 6: Hoare triple {292#true} [138] L16-2-->L16-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[] {292#true} is VALID [2022-02-20 20:59:54,498 INFO L290 TraceCheckUtils]: 7: Hoare triple {292#true} [120] L16-3-->L16-4: Formula: (and (= (select |v_#valid_3| 2) 1) (= (select |v_#length_2| 2) 1)) InVars {#length=|v_#length_2|, #valid=|v_#valid_3|} OutVars{#length=|v_#length_2|, #valid=|v_#valid_3|} AuxVars[] AssignedVars[] {292#true} is VALID [2022-02-20 20:59:54,498 INFO L290 TraceCheckUtils]: 8: Hoare triple {292#true} [123] L16-4-->L16-5: Formula: (= (select (select |v_#memory_int_3| 2) 0) 0) InVars {#memory_int=|v_#memory_int_3|} OutVars{#memory_int=|v_#memory_int_3|} AuxVars[] AssignedVars[] {292#true} is VALID [2022-02-20 20:59:54,498 INFO L290 TraceCheckUtils]: 9: Hoare triple {292#true} [113] L16-5-->L-1-3: Formula: (= v_~x~0_1 0) InVars {} OutVars{~x~0=v_~x~0_1} AuxVars[] AssignedVars[~x~0] {292#true} is VALID [2022-02-20 20:59:54,499 INFO L290 TraceCheckUtils]: 10: Hoare triple {292#true} [135] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {292#true} is VALID [2022-02-20 20:59:54,499 INFO L290 TraceCheckUtils]: 11: Hoare triple {292#true} [118] L-1-4-->L-1-5: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {292#true} is VALID [2022-02-20 20:59:54,499 INFO L290 TraceCheckUtils]: 12: Hoare triple {292#true} [97] L-1-5-->L-1-6: Formula: (and (= |v_ULTIMATE.start_#in~argv#1.offset_1| |v_ULTIMATE.start_main_#in~argv#1.offset_1|) (= |v_ULTIMATE.start_main_#in~argv#1.base_1| |v_ULTIMATE.start_#in~argv#1.base_1|) (= |v_ULTIMATE.start_main_#in~argc#1_1| |v_ULTIMATE.start_#in~argc#1_1|)) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} OutVars{ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_1|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_1|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_#in~argv#1.offset] {292#true} is VALID [2022-02-20 20:59:54,499 INFO L290 TraceCheckUtils]: 13: Hoare triple {292#true} [117] L-1-6-->L-1-7: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1] {292#true} is VALID [2022-02-20 20:59:54,500 INFO L290 TraceCheckUtils]: 14: Hoare triple {292#true} [93] L-1-7-->L718: Formula: true InVars {} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_1|, ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_1|, ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_1|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_1|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_1|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_1|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_1|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_1|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_1|, ULTIMATE.start_main_#t~mem5#1=|v_ULTIMATE.start_main_#t~mem5#1_1|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~1#1, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1, ULTIMATE.start_main_~#t~0#1.offset, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_#t~mem5#1, ULTIMATE.start_main_~#t~0#1.base, ULTIMATE.start_main_#t~pre2#1] {292#true} is VALID [2022-02-20 20:59:54,500 INFO L290 TraceCheckUtils]: 15: Hoare triple {292#true} [102] L718-->L718-1: Formula: (= |v_ULTIMATE.start_main_#in~argc#1_2| |v_ULTIMATE.start_main_~argc#1_2|) InVars {ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_2|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1] {292#true} is VALID [2022-02-20 20:59:54,500 INFO L290 TraceCheckUtils]: 16: Hoare triple {292#true} [139] L718-1-->L719: Formula: (and (= |v_ULTIMATE.start_main_~argv#1.offset_2| |v_ULTIMATE.start_main_#in~argv#1.offset_2|) (= |v_ULTIMATE.start_main_#in~argv#1.base_2| |v_ULTIMATE.start_main_~argv#1.base_2|)) InVars {ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|} OutVars{ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~argv#1.offset] {292#true} is VALID [2022-02-20 20:59:54,500 INFO L290 TraceCheckUtils]: 17: Hoare triple {292#true} [85] L719-->L719-1: Formula: (and (not (= |v_ULTIMATE.start_main_~#t~0#1.base_2| 0)) (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#t~0#1.base_2|) (= (store |v_#length_4| |v_ULTIMATE.start_main_~#t~0#1.base_2| 44) |v_#length_3|) (= |v_ULTIMATE.start_main_~#t~0#1.offset_2| 0) (= |v_#valid_4| (store |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2| 1)) (= (select |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_4|, #valid=|v_#valid_5|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_3|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_2|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_2|, #valid=|v_#valid_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#t~0#1.offset, #valid, #length, ULTIMATE.start_main_~#t~0#1.base] {292#true} is VALID [2022-02-20 20:59:54,501 INFO L290 TraceCheckUtils]: 18: Hoare triple {292#true} [124] L719-1-->L722: Formula: (= v_~x~0_2 0) InVars {} OutVars{~x~0=v_~x~0_2} AuxVars[] AssignedVars[~x~0] {294#(= ~x~0 0)} is VALID [2022-02-20 20:59:54,501 INFO L290 TraceCheckUtils]: 19: Hoare triple {294#(= ~x~0 0)} [136] L722-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_2| 1) InVars {} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {294#(= ~x~0 0)} is VALID [2022-02-20 20:59:54,502 INFO L290 TraceCheckUtils]: 20: Hoare triple {294#(= ~x~0 0)} [105] L723-5-->L724: Formula: (<= |v_ULTIMATE.start_main_~i~0#1_4| 10) 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[] {294#(= ~x~0 0)} is VALID [2022-02-20 20:59:54,502 INFO L290 TraceCheckUtils]: 21: Hoare triple {294#(= ~x~0 0)} [101] L724-->L724-1: Formula: (= |v_ULTIMATE.start_main_#t~pre2#1_2| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {294#(= ~x~0 0)} is VALID [2022-02-20 20:59:54,503 INFO L290 TraceCheckUtils]: 22: Hoare triple {294#(= ~x~0 0)} [127] L724-1-->L724-2: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] {294#(= ~x~0 0)} is VALID [2022-02-20 20:59:54,503 INFO L290 TraceCheckUtils]: 23: Hoare triple {294#(= ~x~0 0)} [92] L724-2-->L724-3: Formula: (= (store |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3| (store (select |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3|) (+ |v_ULTIMATE.start_main_~#t~0#1.offset_3| (* |v_ULTIMATE.start_main_~i~0#1_5| 4)) |v_ULTIMATE.start_main_#t~pre2#1_3|)) |v_#memory_int_4|) InVars {#memory_int=|v_#memory_int_5|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} OutVars{#memory_int=|v_#memory_int_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} AuxVars[] AssignedVars[#memory_int] {294#(= ~x~0 0)} is VALID [2022-02-20 20:59:54,504 INFO L290 TraceCheckUtils]: 24: Hoare triple {294#(= ~x~0 0)} [147] L724-3-->threadENTRY: Formula: (and (= |v_ULTIMATE.start_main_#t~pre2#1_6| v_threadThread1of1ForFork0_thidvar0_2) (= |v_threadThread1of1ForFork0_#in~arg.base_4| 0) (= |v_ULTIMATE.start_main_~i~0#1_9| |v_threadThread1of1ForFork0_#in~arg.offset_4|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_9|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_6|} OutVars{threadThread1of1ForFork0_#in~arg.offset=|v_threadThread1of1ForFork0_#in~arg.offset_4|, threadThread1of1ForFork0_~thread~0=v_threadThread1of1ForFork0_~thread~0_6, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_9|, threadThread1of1ForFork0_~arg.base=v_threadThread1of1ForFork0_~arg.base_6, threadThread1of1ForFork0_~arg.offset=v_threadThread1of1ForFork0_~arg.offset_6, threadThread1of1ForFork0_#res.base=|v_threadThread1of1ForFork0_#res.base_4|, threadThread1of1ForFork0_thidvar0=v_threadThread1of1ForFork0_thidvar0_2, threadThread1of1ForFork0_#res.offset=|v_threadThread1of1ForFork0_#res.offset_4|, threadThread1of1ForFork0_#in~arg.base=|v_threadThread1of1ForFork0_#in~arg.base_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_6|} AuxVars[] AssignedVars[threadThread1of1ForFork0_#in~arg.offset, threadThread1of1ForFork0_~thread~0, threadThread1of1ForFork0_~arg.base, threadThread1of1ForFork0_~arg.offset, threadThread1of1ForFork0_#res.base, threadThread1of1ForFork0_thidvar0, threadThread1of1ForFork0_#res.offset, threadThread1of1ForFork0_#in~arg.base] {294#(= ~x~0 0)} is VALID [2022-02-20 20:59:54,504 INFO L290 TraceCheckUtils]: 25: Hoare triple {294#(= ~x~0 0)} [137] L724-4-->L724-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {294#(= ~x~0 0)} is VALID [2022-02-20 20:59:54,505 INFO L290 TraceCheckUtils]: 26: Hoare triple {294#(= ~x~0 0)} [90] L724-5-->L723-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet3#1] {294#(= ~x~0 0)} is VALID [2022-02-20 20:59:54,505 INFO L290 TraceCheckUtils]: 27: Hoare triple {294#(= ~x~0 0)} [119] L723-2-->L723-3: Formula: (= |v_ULTIMATE.start_main_#t~post1#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_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_2|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {294#(= ~x~0 0)} is VALID [2022-02-20 20:59:54,506 INFO L290 TraceCheckUtils]: 28: Hoare triple {294#(= ~x~0 0)} [98] L723-3-->L723-4: Formula: (= (+ |v_ULTIMATE.start_main_#t~post1#1_3| 1) |v_ULTIMATE.start_main_~i~0#1_7|) InVars {ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_7|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {294#(= ~x~0 0)} is VALID [2022-02-20 20:59:54,506 INFO L290 TraceCheckUtils]: 29: Hoare triple {294#(= ~x~0 0)} [114] L723-4-->L723-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {294#(= ~x~0 0)} is VALID [2022-02-20 20:59:54,507 INFO L290 TraceCheckUtils]: 30: Hoare triple {294#(= ~x~0 0)} [104] L723-5-->L723-6: Formula: (not (<= |v_ULTIMATE.start_main_~i~0#1_3| 10)) 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[] {294#(= ~x~0 0)} is VALID [2022-02-20 20:59:54,507 INFO L290 TraceCheckUtils]: 31: Hoare triple {294#(= ~x~0 0)} [88] L723-6-->L727: Formula: (not (< v_~x~0_4 11)) InVars {~x~0=v_~x~0_4} OutVars{~x~0=v_~x~0_4} AuxVars[] AssignedVars[] {293#false} is VALID [2022-02-20 20:59:54,508 INFO L290 TraceCheckUtils]: 32: Hoare triple {293#false} [95] L727-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {293#false} is VALID [2022-02-20 20:59:54,508 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 20:59:54,508 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 20:59:54,509 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1719748649] [2022-02-20 20:59:54,509 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1719748649] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 20:59:54,509 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 20:59:54,509 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 20:59:54,509 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [671880843] [2022-02-20 20:59:54,510 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 20:59:54,510 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 11.0) internal successors, (33), 3 states have internal predecessors, (33), 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 33 [2022-02-20 20:59:54,510 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 20:59:54,511 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 11.0) internal successors, (33), 3 states have internal predecessors, (33), 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:59:54,536 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:59:54,536 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 20:59:54,536 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 20:59:54,537 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 20:59:54,537 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 20:59:54,538 INFO L499 CegarLoopForPetriNet]: Number of universal loopers: 48 out of 59 [2022-02-20 20:59:54,538 INFO L92 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 46 places, 39 transitions, 91 flow. Second operand has 3 states, 3 states have (on average 49.333333333333336) internal successors, (148), 3 states have internal predecessors, (148), 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:59:54,539 INFO L101 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-02-20 20:59:54,539 INFO L102 encePairwiseOnDemand]: Number of universal subtrahend loopers: 48 of 59 [2022-02-20 20:59:54,539 INFO L74 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-02-20 20:59:54,555 INFO L129 PetriNetUnfolder]: 0/43 cut-off events. [2022-02-20 20:59:54,555 INFO L130 PetriNetUnfolder]: For 2/2 co-relation queries the response was YES. [2022-02-20 20:59:54,555 INFO L84 FinitePrefix]: Finished finitePrefix Result has 61 conditions, 43 events. 0/43 cut-off events. For 2/2 co-relation queries the response was YES. Maximal size of possible extension queue 2. Compared 15 event pairs, 0 based on Foata normal form. 1/44 useless extension candidates. Maximal degree in co-relation 0. Up to 3 conditions per place. [2022-02-20 20:59:54,556 INFO L132 encePairwiseOnDemand]: 56/59 looper letters, 3 selfloop transitions, 2 changer transitions 0/39 dead transitions. [2022-02-20 20:59:54,556 INFO L138 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 48 places, 39 transitions, 101 flow [2022-02-20 20:59:54,556 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 20:59:54,556 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2022-02-20 20:59:54,559 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 150 transitions. [2022-02-20 20:59:54,559 INFO L544 CegarLoopForPetriNet]: DFA transition density 0.847457627118644 [2022-02-20 20:59:54,559 INFO L72 ComplementDD]: Start complementDD. Operand 3 states and 150 transitions. [2022-02-20 20:59:54,559 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3 states and 150 transitions. [2022-02-20 20:59:54,559 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-02-20 20:59:54,560 INFO L117 ReachableStatesCopy]: Start reachableStatesCopy. Operand 3 states and 150 transitions. [2022-02-20 20:59:54,560 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends has 4 states, 3 states have (on average 50.0) internal successors, (150), 3 states have internal predecessors, (150), 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:59:54,561 INFO L131 ReachableStatesCopy]: Finished reachableStatesCopy Result has 4 states, 4 states have (on average 59.0) internal successors, (236), 4 states have internal predecessors, (236), 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:59:54,561 INFO L81 ComplementDD]: Finished complementDD. Result has 4 states, 4 states have (on average 59.0) internal successors, (236), 4 states have internal predecessors, (236), 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:59:54,561 INFO L186 Difference]: Start difference. First operand has 46 places, 39 transitions, 91 flow. Second operand 3 states and 150 transitions. [2022-02-20 20:59:54,562 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 48 places, 39 transitions, 101 flow [2022-02-20 20:59:54,562 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 46 places, 39 transitions, 97 flow, removed 0 selfloop flow, removed 2 redundant places. [2022-02-20 20:59:54,563 INFO L242 Difference]: Finished difference. Result has 47 places, 39 transitions, 95 flow [2022-02-20 20:59:54,564 INFO L317 CegarLoopForPetriNet]: {PETRI_ALPHABET=59, PETRI_DIFFERENCE_MINUEND_FLOW=87, PETRI_DIFFERENCE_MINUEND_PLACES=44, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=39, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=37, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=95, PETRI_PLACES=47, PETRI_TRANSITIONS=39} [2022-02-20 20:59:54,564 INFO L334 CegarLoopForPetriNet]: 42 programPoint places, 5 predicate places. [2022-02-20 20:59:54,565 INFO L111 iNet2FiniteAutomaton]: Start petriNet2FiniteAutomaton. Operand has 47 places, 39 transitions, 95 flow [2022-02-20 20:59:54,588 INFO L133 iNet2FiniteAutomaton]: Finished petriNet2FiniteAutomaton. Result has 103 states, 101 states have (on average 1.5940594059405941) internal successors, (161), 102 states have internal predecessors, (161), 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:59:54,589 INFO L78 Accepts]: Start accepts. Automaton has has 103 states, 101 states have (on average 1.5940594059405941) internal successors, (161), 102 states have internal predecessors, (161), 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 33 [2022-02-20 20:59:54,589 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 20:59:54,589 INFO L470 AbstractCegarLoop]: Abstraction has has 47 places, 39 transitions, 95 flow [2022-02-20 20:59:54,590 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 49.333333333333336) internal successors, (148), 3 states have internal predecessors, (148), 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:59:54,590 INFO L246 CegarLoopForPetriNet]: Found error trace [2022-02-20 20:59:54,590 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] [2022-02-20 20:59:54,590 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-02-20 20:59:54,591 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0INUSE_VIOLATION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATION] === [2022-02-20 20:59:54,592 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:59:54,592 INFO L85 PathProgramCache]: Analyzing trace with hash 1968634815, now seen corresponding path program 1 times [2022-02-20 20:59:54,592 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:59:54,593 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [818258209] [2022-02-20 20:59:54,593 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:59:54,593 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:59:54,643 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-02-20 20:59:54,646 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-02-20 20:59:54,659 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-02-20 20:59:54,682 INFO L138 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-02-20 20:59:54,687 INFO L628 BasicCegarLoop]: Counterexample is feasible [2022-02-20 20:59:54,688 INFO L764 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0INUSE_VIOLATION (1 of 2 remaining) [2022-02-20 20:59:54,689 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 2 remaining) [2022-02-20 20:59:54,690 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-02-20 20:59:54,693 INFO L732 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1] [2022-02-20 20:59:54,694 WARN L235 ceAbstractionStarter]: 1 thread instances were not sufficient, I will increase this number and restart the analysis [2022-02-20 20:59:54,695 INFO L534 ceAbstractionStarter]: Constructing petrified ICFG for 2 thread instances. [2022-02-20 20:59:54,721 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of2ForFork0_#in~arg.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,721 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of2ForFork0_#in~arg.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,722 WARN L322 ript$VariableManager]: TermVariabe threadThread1of2ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,722 WARN L322 ript$VariableManager]: TermVariabe threadThread1of2ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,722 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of2ForFork0_#in~arg.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,722 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of2ForFork0_#in~arg.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,722 WARN L322 ript$VariableManager]: TermVariabe threadThread1of2ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,722 WARN L322 ript$VariableManager]: TermVariabe threadThread1of2ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,723 WARN L322 ript$VariableManager]: TermVariabe threadThread1of2ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,723 WARN L322 ript$VariableManager]: TermVariabe threadThread1of2ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,723 WARN L322 ript$VariableManager]: TermVariabe threadThread1of2ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,723 WARN L322 ript$VariableManager]: TermVariabe threadThread1of2ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,723 WARN L322 ript$VariableManager]: TermVariabe threadThread1of2ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,723 WARN L322 ript$VariableManager]: TermVariabe threadThread1of2ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,724 WARN L322 ript$VariableManager]: TermVariabe threadThread1of2ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,724 WARN L322 ript$VariableManager]: TermVariabe threadThread1of2ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,724 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of2ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,724 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of2ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,724 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of2ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,725 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of2ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,725 WARN L322 ript$VariableManager]: TermVariabe |threadThread2of2ForFork0_#in~arg.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,728 WARN L322 ript$VariableManager]: TermVariabe |threadThread2of2ForFork0_#in~arg.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,728 WARN L322 ript$VariableManager]: TermVariabe threadThread2of2ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,728 WARN L322 ript$VariableManager]: TermVariabe threadThread2of2ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,729 WARN L322 ript$VariableManager]: TermVariabe |threadThread2of2ForFork0_#in~arg.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,729 WARN L322 ript$VariableManager]: TermVariabe |threadThread2of2ForFork0_#in~arg.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,729 WARN L322 ript$VariableManager]: TermVariabe threadThread2of2ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,729 WARN L322 ript$VariableManager]: TermVariabe threadThread2of2ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,729 WARN L322 ript$VariableManager]: TermVariabe threadThread2of2ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,729 WARN L322 ript$VariableManager]: TermVariabe threadThread2of2ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,730 WARN L322 ript$VariableManager]: TermVariabe threadThread2of2ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,731 WARN L322 ript$VariableManager]: TermVariabe threadThread2of2ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,732 WARN L322 ript$VariableManager]: TermVariabe threadThread2of2ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,732 WARN L322 ript$VariableManager]: TermVariabe threadThread2of2ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,733 WARN L322 ript$VariableManager]: TermVariabe threadThread2of2ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,733 WARN L322 ript$VariableManager]: TermVariabe threadThread2of2ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,733 WARN L322 ript$VariableManager]: TermVariabe |threadThread2of2ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,733 WARN L322 ript$VariableManager]: TermVariabe |threadThread2of2ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,733 WARN L322 ript$VariableManager]: TermVariabe |threadThread2of2ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,733 WARN L322 ript$VariableManager]: TermVariabe |threadThread2of2ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,734 WARN L322 ript$VariableManager]: TermVariabe threadThread1of2ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,734 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of2ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,734 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of2ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,734 WARN L322 ript$VariableManager]: TermVariabe threadThread1of2ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,735 WARN L322 ript$VariableManager]: TermVariabe threadThread1of2ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,735 WARN L322 ript$VariableManager]: TermVariabe threadThread2of2ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,736 WARN L322 ript$VariableManager]: TermVariabe |threadThread2of2ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,736 WARN L322 ript$VariableManager]: TermVariabe threadThread2of2ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,736 WARN L322 ript$VariableManager]: TermVariabe threadThread2of2ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,736 WARN L322 ript$VariableManager]: TermVariabe |threadThread2of2ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:54,742 INFO L148 ThreadInstanceAdder]: Constructed 2 joinOtherThreadTransitions. [2022-02-20 20:59:54,745 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 20:59:54,747 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:59:54,749 INFO L340 AbstractCegarLoop]: Starting to check reachability of 2 error locations. [2022-02-20 20:59:54,751 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 66 places, 66 transitions, 150 flow [2022-02-20 20:59:54,773 INFO L129 PetriNetUnfolder]: 13/135 cut-off events. [2022-02-20 20:59:54,774 INFO L130 PetriNetUnfolder]: For 6/6 co-relation queries the response was YES. [2022-02-20 20:59:54,775 INFO L84 FinitePrefix]: Finished finitePrefix Result has 149 conditions, 135 events. 13/135 cut-off events. For 6/6 co-relation queries the response was YES. Maximal size of possible extension queue 6. Compared 236 event pairs, 0 based on Foata normal form. 0/115 useless extension candidates. Maximal degree in co-relation 83. Up to 8 conditions per place. [2022-02-20 20:59:54,775 INFO L82 GeneralOperation]: Start removeDead. Operand has 66 places, 66 transitions, 150 flow [2022-02-20 20:59:54,776 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 50 places, 46 transitions, 104 flow [2022-02-20 20:59:54,787 INFO L129 PetriNetUnfolder]: 1/26 cut-off events. [2022-02-20 20:59:54,787 INFO L130 PetriNetUnfolder]: For 0/0 co-relation queries the response was YES. [2022-02-20 20:59:54,787 INFO L246 CegarLoopForPetriNet]: Found error trace [2022-02-20 20:59:54,787 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] [2022-02-20 20:59:54,787 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATION] === [2022-02-20 20:59:54,788 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:59:54,788 INFO L85 PathProgramCache]: Analyzing trace with hash 775346483, now seen corresponding path program 1 times [2022-02-20 20:59:54,788 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:59:54,788 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1725348680] [2022-02-20 20:59:54,788 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:59:54,789 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:59:54,805 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:59:54,833 INFO L290 TraceCheckUtils]: 0: Hoare triple {69#true} [192] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {69#true} is VALID [2022-02-20 20:59:54,833 INFO L290 TraceCheckUtils]: 1: Hoare triple {69#true} [182] 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] {69#true} is VALID [2022-02-20 20:59:54,834 INFO L290 TraceCheckUtils]: 2: Hoare triple {69#true} [199] 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[] {69#true} is VALID [2022-02-20 20:59:54,834 INFO L290 TraceCheckUtils]: 3: Hoare triple {69#true} [200] L-1-2-->L16: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {69#true} is VALID [2022-02-20 20:59:54,834 INFO L290 TraceCheckUtils]: 4: Hoare triple {69#true} [181] L16-->L16-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[] {69#true} is VALID [2022-02-20 20:59:54,834 INFO L290 TraceCheckUtils]: 5: Hoare triple {69#true} [149] L16-1-->L16-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[] {69#true} is VALID [2022-02-20 20:59:54,835 INFO L290 TraceCheckUtils]: 6: Hoare triple {69#true} [204] L16-2-->L16-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[] {69#true} is VALID [2022-02-20 20:59:54,835 INFO L290 TraceCheckUtils]: 7: Hoare triple {69#true} [186] L16-3-->L16-4: Formula: (and (= (select |v_#valid_3| 2) 1) (= (select |v_#length_2| 2) 1)) InVars {#length=|v_#length_2|, #valid=|v_#valid_3|} OutVars{#length=|v_#length_2|, #valid=|v_#valid_3|} AuxVars[] AssignedVars[] {69#true} is VALID [2022-02-20 20:59:54,835 INFO L290 TraceCheckUtils]: 8: Hoare triple {69#true} [189] L16-4-->L16-5: Formula: (= (select (select |v_#memory_int_3| 2) 0) 0) InVars {#memory_int=|v_#memory_int_3|} OutVars{#memory_int=|v_#memory_int_3|} AuxVars[] AssignedVars[] {69#true} is VALID [2022-02-20 20:59:54,835 INFO L290 TraceCheckUtils]: 9: Hoare triple {69#true} [179] L16-5-->L-1-3: Formula: (= v_~x~0_1 0) InVars {} OutVars{~x~0=v_~x~0_1} AuxVars[] AssignedVars[~x~0] {69#true} is VALID [2022-02-20 20:59:54,835 INFO L290 TraceCheckUtils]: 10: Hoare triple {69#true} [201] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {69#true} is VALID [2022-02-20 20:59:54,836 INFO L290 TraceCheckUtils]: 11: Hoare triple {69#true} [184] L-1-4-->L-1-5: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {69#true} is VALID [2022-02-20 20:59:54,836 INFO L290 TraceCheckUtils]: 12: Hoare triple {69#true} [163] L-1-5-->L-1-6: Formula: (and (= |v_ULTIMATE.start_#in~argv#1.offset_1| |v_ULTIMATE.start_main_#in~argv#1.offset_1|) (= |v_ULTIMATE.start_main_#in~argv#1.base_1| |v_ULTIMATE.start_#in~argv#1.base_1|) (= |v_ULTIMATE.start_main_#in~argc#1_1| |v_ULTIMATE.start_#in~argc#1_1|)) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} OutVars{ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_1|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_1|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_#in~argv#1.offset] {69#true} is VALID [2022-02-20 20:59:54,836 INFO L290 TraceCheckUtils]: 13: Hoare triple {69#true} [183] L-1-6-->L-1-7: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1] {69#true} is VALID [2022-02-20 20:59:54,836 INFO L290 TraceCheckUtils]: 14: Hoare triple {69#true} [159] L-1-7-->L718: Formula: true InVars {} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_1|, ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_1|, ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_1|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_1|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_1|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_1|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_1|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_1|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_1|, ULTIMATE.start_main_#t~mem5#1=|v_ULTIMATE.start_main_#t~mem5#1_1|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~1#1, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1, ULTIMATE.start_main_~#t~0#1.offset, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_#t~mem5#1, ULTIMATE.start_main_~#t~0#1.base, ULTIMATE.start_main_#t~pre2#1] {69#true} is VALID [2022-02-20 20:59:54,837 INFO L290 TraceCheckUtils]: 15: Hoare triple {69#true} [168] L718-->L718-1: Formula: (= |v_ULTIMATE.start_main_#in~argc#1_2| |v_ULTIMATE.start_main_~argc#1_2|) InVars {ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_2|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1] {69#true} is VALID [2022-02-20 20:59:54,837 INFO L290 TraceCheckUtils]: 16: Hoare triple {69#true} [205] L718-1-->L719: Formula: (and (= |v_ULTIMATE.start_main_~argv#1.offset_2| |v_ULTIMATE.start_main_#in~argv#1.offset_2|) (= |v_ULTIMATE.start_main_#in~argv#1.base_2| |v_ULTIMATE.start_main_~argv#1.base_2|)) InVars {ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|} OutVars{ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~argv#1.offset] {69#true} is VALID [2022-02-20 20:59:54,837 INFO L290 TraceCheckUtils]: 17: Hoare triple {69#true} [151] L719-->L719-1: Formula: (and (not (= |v_ULTIMATE.start_main_~#t~0#1.base_2| 0)) (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#t~0#1.base_2|) (= (store |v_#length_4| |v_ULTIMATE.start_main_~#t~0#1.base_2| 44) |v_#length_3|) (= |v_ULTIMATE.start_main_~#t~0#1.offset_2| 0) (= |v_#valid_4| (store |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2| 1)) (= (select |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_4|, #valid=|v_#valid_5|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_3|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_2|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_2|, #valid=|v_#valid_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#t~0#1.offset, #valid, #length, ULTIMATE.start_main_~#t~0#1.base] {69#true} is VALID [2022-02-20 20:59:54,837 INFO L290 TraceCheckUtils]: 18: Hoare triple {69#true} [190] L719-1-->L722: Formula: (= v_~x~0_2 0) InVars {} OutVars{~x~0=v_~x~0_2} AuxVars[] AssignedVars[~x~0] {69#true} is VALID [2022-02-20 20:59:54,838 INFO L290 TraceCheckUtils]: 19: Hoare triple {69#true} [202] L722-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_2| 1) InVars {} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {71#(= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 20:59:54,839 INFO L290 TraceCheckUtils]: 20: Hoare triple {71#(= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} [170] L723-5-->L723-6: Formula: (not (<= |v_ULTIMATE.start_main_~i~0#1_3| 10)) 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[] {70#false} is VALID [2022-02-20 20:59:54,839 INFO L290 TraceCheckUtils]: 21: Hoare triple {70#false} [154] L723-6-->L727: Formula: (not (< v_~x~0_4 11)) InVars {~x~0=v_~x~0_4} OutVars{~x~0=v_~x~0_4} AuxVars[] AssignedVars[] {70#false} is VALID [2022-02-20 20:59:54,839 INFO L290 TraceCheckUtils]: 22: Hoare triple {70#false} [161] L727-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {70#false} is VALID [2022-02-20 20:59:54,839 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:59:54,840 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 20:59:54,840 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1725348680] [2022-02-20 20:59:54,840 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1725348680] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 20:59:54,840 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 20:59:54,840 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 20:59:54,841 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1626916591] [2022-02-20 20:59:54,841 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 20:59:54,841 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 7.666666666666667) internal successors, (23), 3 states have internal predecessors, (23), 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 23 [2022-02-20 20:59:54,841 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 20:59:54,842 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 7.666666666666667) internal successors, (23), 3 states have internal predecessors, (23), 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:59:54,858 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 23 edges. 23 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:59:54,858 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 20:59:54,858 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 20:59:54,859 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 20:59:54,859 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 20:59:54,860 INFO L499 CegarLoopForPetriNet]: Number of universal loopers: 51 out of 66 [2022-02-20 20:59:54,860 INFO L92 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 50 places, 46 transitions, 104 flow. Second operand has 3 states, 3 states have (on average 52.0) internal successors, (156), 3 states have internal predecessors, (156), 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:59:54,860 INFO L101 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-02-20 20:59:54,860 INFO L102 encePairwiseOnDemand]: Number of universal subtrahend loopers: 51 of 66 [2022-02-20 20:59:54,860 INFO L74 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-02-20 20:59:54,887 INFO L129 PetriNetUnfolder]: 0/61 cut-off events. [2022-02-20 20:59:54,887 INFO L130 PetriNetUnfolder]: For 2/2 co-relation queries the response was YES. [2022-02-20 20:59:54,888 INFO L84 FinitePrefix]: Finished finitePrefix Result has 88 conditions, 61 events. 0/61 cut-off events. For 2/2 co-relation queries the response was YES. Maximal size of possible extension queue 3. Compared 32 event pairs, 0 based on Foata normal form. 0/59 useless extension candidates. Maximal degree in co-relation 0. Up to 12 conditions per place. [2022-02-20 20:59:54,888 INFO L132 encePairwiseOnDemand]: 62/66 looper letters, 11 selfloop transitions, 2 changer transitions 0/49 dead transitions. [2022-02-20 20:59:54,888 INFO L138 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 52 places, 49 transitions, 136 flow [2022-02-20 20:59:54,888 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 20:59:54,888 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2022-02-20 20:59:54,891 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 169 transitions. [2022-02-20 20:59:54,891 INFO L544 CegarLoopForPetriNet]: DFA transition density 0.8535353535353535 [2022-02-20 20:59:54,891 INFO L72 ComplementDD]: Start complementDD. Operand 3 states and 169 transitions. [2022-02-20 20:59:54,891 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3 states and 169 transitions. [2022-02-20 20:59:54,891 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-02-20 20:59:54,892 INFO L117 ReachableStatesCopy]: Start reachableStatesCopy. Operand 3 states and 169 transitions. [2022-02-20 20:59:54,892 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends has 4 states, 3 states have (on average 56.333333333333336) internal successors, (169), 3 states have internal predecessors, (169), 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:59:54,893 INFO L131 ReachableStatesCopy]: Finished reachableStatesCopy Result has 4 states, 4 states have (on average 66.0) internal successors, (264), 4 states have internal predecessors, (264), 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:59:54,893 INFO L81 ComplementDD]: Finished complementDD. Result has 4 states, 4 states have (on average 66.0) internal successors, (264), 4 states have internal predecessors, (264), 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:59:54,893 INFO L186 Difference]: Start difference. First operand has 50 places, 46 transitions, 104 flow. Second operand 3 states and 169 transitions. [2022-02-20 20:59:54,893 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 52 places, 49 transitions, 136 flow [2022-02-20 20:59:54,894 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 52 places, 49 transitions, 134 flow, removed 1 selfloop flow, removed 0 redundant places. [2022-02-20 20:59:54,895 INFO L242 Difference]: Finished difference. Result has 53 places, 46 transitions, 112 flow [2022-02-20 20:59:54,895 INFO L317 CegarLoopForPetriNet]: {PETRI_ALPHABET=66, PETRI_DIFFERENCE_MINUEND_FLOW=100, PETRI_DIFFERENCE_MINUEND_PLACES=50, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=45, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=43, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=112, PETRI_PLACES=53, PETRI_TRANSITIONS=46} [2022-02-20 20:59:54,896 INFO L334 CegarLoopForPetriNet]: 50 programPoint places, 3 predicate places. [2022-02-20 20:59:54,896 INFO L111 iNet2FiniteAutomaton]: Start petriNet2FiniteAutomaton. Operand has 53 places, 46 transitions, 112 flow [2022-02-20 20:59:54,912 INFO L133 iNet2FiniteAutomaton]: Finished petriNet2FiniteAutomaton. Result has 607 states, 604 states have (on average 2.443708609271523) internal successors, (1476), 606 states have internal predecessors, (1476), 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:59:54,913 INFO L78 Accepts]: Start accepts. Automaton has has 607 states, 604 states have (on average 2.443708609271523) internal successors, (1476), 606 states have internal predecessors, (1476), 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 23 [2022-02-20 20:59:54,914 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 20:59:54,914 INFO L470 AbstractCegarLoop]: Abstraction has has 53 places, 46 transitions, 112 flow [2022-02-20 20:59:54,914 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 52.0) internal successors, (156), 3 states have internal predecessors, (156), 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:59:54,914 INFO L246 CegarLoopForPetriNet]: Found error trace [2022-02-20 20:59:54,914 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] [2022-02-20 20:59:54,915 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2022-02-20 20:59:54,915 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATION] === [2022-02-20 20:59:54,915 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:59:54,916 INFO L85 PathProgramCache]: Analyzing trace with hash -1083506660, now seen corresponding path program 1 times [2022-02-20 20:59:54,916 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:59:54,916 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1627706164] [2022-02-20 20:59:54,916 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:59:54,917 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:59:54,937 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:59:54,979 INFO L290 TraceCheckUtils]: 0: Hoare triple {682#true} [192] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {682#true} is VALID [2022-02-20 20:59:54,980 INFO L290 TraceCheckUtils]: 1: Hoare triple {682#true} [182] 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] {682#true} is VALID [2022-02-20 20:59:54,980 INFO L290 TraceCheckUtils]: 2: Hoare triple {682#true} [199] 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[] {682#true} is VALID [2022-02-20 20:59:54,980 INFO L290 TraceCheckUtils]: 3: Hoare triple {682#true} [200] L-1-2-->L16: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {682#true} is VALID [2022-02-20 20:59:54,981 INFO L290 TraceCheckUtils]: 4: Hoare triple {682#true} [181] L16-->L16-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[] {682#true} is VALID [2022-02-20 20:59:54,981 INFO L290 TraceCheckUtils]: 5: Hoare triple {682#true} [149] L16-1-->L16-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[] {682#true} is VALID [2022-02-20 20:59:54,981 INFO L290 TraceCheckUtils]: 6: Hoare triple {682#true} [204] L16-2-->L16-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[] {682#true} is VALID [2022-02-20 20:59:54,981 INFO L290 TraceCheckUtils]: 7: Hoare triple {682#true} [186] L16-3-->L16-4: Formula: (and (= (select |v_#valid_3| 2) 1) (= (select |v_#length_2| 2) 1)) InVars {#length=|v_#length_2|, #valid=|v_#valid_3|} OutVars{#length=|v_#length_2|, #valid=|v_#valid_3|} AuxVars[] AssignedVars[] {682#true} is VALID [2022-02-20 20:59:54,982 INFO L290 TraceCheckUtils]: 8: Hoare triple {682#true} [189] L16-4-->L16-5: Formula: (= (select (select |v_#memory_int_3| 2) 0) 0) InVars {#memory_int=|v_#memory_int_3|} OutVars{#memory_int=|v_#memory_int_3|} AuxVars[] AssignedVars[] {682#true} is VALID [2022-02-20 20:59:54,982 INFO L290 TraceCheckUtils]: 9: Hoare triple {682#true} [179] L16-5-->L-1-3: Formula: (= v_~x~0_1 0) InVars {} OutVars{~x~0=v_~x~0_1} AuxVars[] AssignedVars[~x~0] {682#true} is VALID [2022-02-20 20:59:54,982 INFO L290 TraceCheckUtils]: 10: Hoare triple {682#true} [201] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {682#true} is VALID [2022-02-20 20:59:54,982 INFO L290 TraceCheckUtils]: 11: Hoare triple {682#true} [184] L-1-4-->L-1-5: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {682#true} is VALID [2022-02-20 20:59:54,982 INFO L290 TraceCheckUtils]: 12: Hoare triple {682#true} [163] L-1-5-->L-1-6: Formula: (and (= |v_ULTIMATE.start_#in~argv#1.offset_1| |v_ULTIMATE.start_main_#in~argv#1.offset_1|) (= |v_ULTIMATE.start_main_#in~argv#1.base_1| |v_ULTIMATE.start_#in~argv#1.base_1|) (= |v_ULTIMATE.start_main_#in~argc#1_1| |v_ULTIMATE.start_#in~argc#1_1|)) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} OutVars{ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_1|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_1|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_#in~argv#1.offset] {682#true} is VALID [2022-02-20 20:59:54,983 INFO L290 TraceCheckUtils]: 13: Hoare triple {682#true} [183] L-1-6-->L-1-7: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1] {682#true} is VALID [2022-02-20 20:59:54,983 INFO L290 TraceCheckUtils]: 14: Hoare triple {682#true} [159] L-1-7-->L718: Formula: true InVars {} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_1|, ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_1|, ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_1|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_1|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_1|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_1|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_1|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_1|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_1|, ULTIMATE.start_main_#t~mem5#1=|v_ULTIMATE.start_main_#t~mem5#1_1|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~1#1, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1, ULTIMATE.start_main_~#t~0#1.offset, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_#t~mem5#1, ULTIMATE.start_main_~#t~0#1.base, ULTIMATE.start_main_#t~pre2#1] {682#true} is VALID [2022-02-20 20:59:54,983 INFO L290 TraceCheckUtils]: 15: Hoare triple {682#true} [168] L718-->L718-1: Formula: (= |v_ULTIMATE.start_main_#in~argc#1_2| |v_ULTIMATE.start_main_~argc#1_2|) InVars {ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_2|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1] {682#true} is VALID [2022-02-20 20:59:54,983 INFO L290 TraceCheckUtils]: 16: Hoare triple {682#true} [205] L718-1-->L719: Formula: (and (= |v_ULTIMATE.start_main_~argv#1.offset_2| |v_ULTIMATE.start_main_#in~argv#1.offset_2|) (= |v_ULTIMATE.start_main_#in~argv#1.base_2| |v_ULTIMATE.start_main_~argv#1.base_2|)) InVars {ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|} OutVars{ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~argv#1.offset] {682#true} is VALID [2022-02-20 20:59:54,984 INFO L290 TraceCheckUtils]: 17: Hoare triple {682#true} [151] L719-->L719-1: Formula: (and (not (= |v_ULTIMATE.start_main_~#t~0#1.base_2| 0)) (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#t~0#1.base_2|) (= (store |v_#length_4| |v_ULTIMATE.start_main_~#t~0#1.base_2| 44) |v_#length_3|) (= |v_ULTIMATE.start_main_~#t~0#1.offset_2| 0) (= |v_#valid_4| (store |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2| 1)) (= (select |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_4|, #valid=|v_#valid_5|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_3|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_2|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_2|, #valid=|v_#valid_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#t~0#1.offset, #valid, #length, ULTIMATE.start_main_~#t~0#1.base] {682#true} is VALID [2022-02-20 20:59:54,984 INFO L290 TraceCheckUtils]: 18: Hoare triple {682#true} [190] L719-1-->L722: Formula: (= v_~x~0_2 0) InVars {} OutVars{~x~0=v_~x~0_2} AuxVars[] AssignedVars[~x~0] {684#(= ~x~0 0)} is VALID [2022-02-20 20:59:54,985 INFO L290 TraceCheckUtils]: 19: Hoare triple {684#(= ~x~0 0)} [202] L722-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_2| 1) InVars {} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {684#(= ~x~0 0)} is VALID [2022-02-20 20:59:54,985 INFO L290 TraceCheckUtils]: 20: Hoare triple {684#(= ~x~0 0)} [171] L723-5-->L724: Formula: (<= |v_ULTIMATE.start_main_~i~0#1_4| 10) 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[] {684#(= ~x~0 0)} is VALID [2022-02-20 20:59:54,986 INFO L290 TraceCheckUtils]: 21: Hoare triple {684#(= ~x~0 0)} [167] L724-->L724-1: Formula: (= |v_ULTIMATE.start_main_#t~pre2#1_2| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {684#(= ~x~0 0)} is VALID [2022-02-20 20:59:54,986 INFO L290 TraceCheckUtils]: 22: Hoare triple {684#(= ~x~0 0)} [193] L724-1-->L724-2: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] {684#(= ~x~0 0)} is VALID [2022-02-20 20:59:54,987 INFO L290 TraceCheckUtils]: 23: Hoare triple {684#(= ~x~0 0)} [158] L724-2-->L724-3: Formula: (= (store |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3| (store (select |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3|) (+ |v_ULTIMATE.start_main_~#t~0#1.offset_3| (* |v_ULTIMATE.start_main_~i~0#1_5| 4)) |v_ULTIMATE.start_main_#t~pre2#1_3|)) |v_#memory_int_4|) InVars {#memory_int=|v_#memory_int_5|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} OutVars{#memory_int=|v_#memory_int_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} AuxVars[] AssignedVars[#memory_int] {684#(= ~x~0 0)} is VALID [2022-02-20 20:59:54,987 INFO L290 TraceCheckUtils]: 24: Hoare triple {684#(= ~x~0 0)} [218] L724-3-->threadENTRY: Formula: (and (= |v_threadThread1of2ForFork0_#in~arg.base_4| 0) (= |v_ULTIMATE.start_main_~i~0#1_11| |v_threadThread1of2ForFork0_#in~arg.offset_4|) (= |v_ULTIMATE.start_main_#t~pre2#1_8| v_threadThread1of2ForFork0_thidvar0_2)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_11|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_8|} OutVars{threadThread1of2ForFork0_~arg.base=v_threadThread1of2ForFork0_~arg.base_6, threadThread1of2ForFork0_#res.base=|v_threadThread1of2ForFork0_#res.base_4|, threadThread1of2ForFork0_thidvar0=v_threadThread1of2ForFork0_thidvar0_2, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_11|, threadThread1of2ForFork0_#res.offset=|v_threadThread1of2ForFork0_#res.offset_4|, threadThread1of2ForFork0_~arg.offset=v_threadThread1of2ForFork0_~arg.offset_6, threadThread1of2ForFork0_#in~arg.base=|v_threadThread1of2ForFork0_#in~arg.base_4|, threadThread1of2ForFork0_#in~arg.offset=|v_threadThread1of2ForFork0_#in~arg.offset_4|, threadThread1of2ForFork0_~thread~0=v_threadThread1of2ForFork0_~thread~0_6, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_8|} AuxVars[] AssignedVars[threadThread1of2ForFork0_~arg.base, threadThread1of2ForFork0_#res.base, threadThread1of2ForFork0_thidvar0, threadThread1of2ForFork0_#res.offset, threadThread1of2ForFork0_~arg.offset, threadThread1of2ForFork0_#in~arg.base, threadThread1of2ForFork0_#in~arg.offset, threadThread1of2ForFork0_~thread~0] {684#(= ~x~0 0)} is VALID [2022-02-20 20:59:54,988 INFO L290 TraceCheckUtils]: 25: Hoare triple {684#(= ~x~0 0)} [203] L724-4-->L724-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {684#(= ~x~0 0)} is VALID [2022-02-20 20:59:54,988 INFO L290 TraceCheckUtils]: 26: Hoare triple {684#(= ~x~0 0)} [156] L724-5-->L723-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet3#1] {684#(= ~x~0 0)} is VALID [2022-02-20 20:59:54,988 INFO L290 TraceCheckUtils]: 27: Hoare triple {684#(= ~x~0 0)} [185] L723-2-->L723-3: Formula: (= |v_ULTIMATE.start_main_#t~post1#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_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_2|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {684#(= ~x~0 0)} is VALID [2022-02-20 20:59:54,989 INFO L290 TraceCheckUtils]: 28: Hoare triple {684#(= ~x~0 0)} [164] L723-3-->L723-4: Formula: (= (+ |v_ULTIMATE.start_main_#t~post1#1_3| 1) |v_ULTIMATE.start_main_~i~0#1_7|) InVars {ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_7|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {684#(= ~x~0 0)} is VALID [2022-02-20 20:59:54,989 INFO L290 TraceCheckUtils]: 29: Hoare triple {684#(= ~x~0 0)} [180] L723-4-->L723-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {684#(= ~x~0 0)} is VALID [2022-02-20 20:59:54,990 INFO L290 TraceCheckUtils]: 30: Hoare triple {684#(= ~x~0 0)} [170] L723-5-->L723-6: Formula: (not (<= |v_ULTIMATE.start_main_~i~0#1_3| 10)) 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[] {684#(= ~x~0 0)} is VALID [2022-02-20 20:59:54,990 INFO L290 TraceCheckUtils]: 31: Hoare triple {684#(= ~x~0 0)} [154] L723-6-->L727: Formula: (not (< v_~x~0_4 11)) InVars {~x~0=v_~x~0_4} OutVars{~x~0=v_~x~0_4} AuxVars[] AssignedVars[] {683#false} is VALID [2022-02-20 20:59:54,991 INFO L290 TraceCheckUtils]: 32: Hoare triple {683#false} [161] L727-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {683#false} is VALID [2022-02-20 20:59:54,991 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 20:59:54,991 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 20:59:54,991 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1627706164] [2022-02-20 20:59:54,992 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1627706164] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 20:59:54,992 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 20:59:54,992 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 20:59:54,992 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1631700869] [2022-02-20 20:59:54,992 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 20:59:54,993 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 11.0) internal successors, (33), 3 states have internal predecessors, (33), 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 33 [2022-02-20 20:59:54,993 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 20:59:54,993 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 11.0) internal successors, (33), 3 states have internal predecessors, (33), 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:59:55,022 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:59:55,022 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 20:59:55,023 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 20:59:55,025 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 20:59:55,025 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 20:59:55,025 INFO L499 CegarLoopForPetriNet]: Number of universal loopers: 52 out of 66 [2022-02-20 20:59:55,026 INFO L92 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 53 places, 46 transitions, 112 flow. Second operand has 3 states, 3 states have (on average 53.333333333333336) internal successors, (160), 3 states have internal predecessors, (160), 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:59:55,026 INFO L101 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-02-20 20:59:55,027 INFO L102 encePairwiseOnDemand]: Number of universal subtrahend loopers: 52 of 66 [2022-02-20 20:59:55,027 INFO L74 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-02-20 20:59:55,065 INFO L129 PetriNetUnfolder]: 4/87 cut-off events. [2022-02-20 20:59:55,066 INFO L130 PetriNetUnfolder]: For 8/8 co-relation queries the response was YES. [2022-02-20 20:59:55,066 INFO L84 FinitePrefix]: Finished finitePrefix Result has 127 conditions, 87 events. 4/87 cut-off events. For 8/8 co-relation queries the response was YES. Maximal size of possible extension queue 5. Compared 146 event pairs, 1 based on Foata normal form. 2/88 useless extension candidates. Maximal degree in co-relation 84. Up to 13 conditions per place. [2022-02-20 20:59:55,066 INFO L132 encePairwiseOnDemand]: 62/66 looper letters, 7 selfloop transitions, 3 changer transitions 0/49 dead transitions. [2022-02-20 20:59:55,066 INFO L138 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 55 places, 49 transitions, 143 flow [2022-02-20 20:59:55,067 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 20:59:55,067 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2022-02-20 20:59:55,069 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 167 transitions. [2022-02-20 20:59:55,069 INFO L544 CegarLoopForPetriNet]: DFA transition density 0.8434343434343434 [2022-02-20 20:59:55,069 INFO L72 ComplementDD]: Start complementDD. Operand 3 states and 167 transitions. [2022-02-20 20:59:55,069 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3 states and 167 transitions. [2022-02-20 20:59:55,069 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-02-20 20:59:55,069 INFO L117 ReachableStatesCopy]: Start reachableStatesCopy. Operand 3 states and 167 transitions. [2022-02-20 20:59:55,070 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends has 4 states, 3 states have (on average 55.666666666666664) internal successors, (167), 3 states have internal predecessors, (167), 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:59:55,071 INFO L131 ReachableStatesCopy]: Finished reachableStatesCopy Result has 4 states, 4 states have (on average 66.0) internal successors, (264), 4 states have internal predecessors, (264), 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:59:55,076 INFO L81 ComplementDD]: Finished complementDD. Result has 4 states, 4 states have (on average 66.0) internal successors, (264), 4 states have internal predecessors, (264), 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:59:55,077 INFO L186 Difference]: Start difference. First operand has 53 places, 46 transitions, 112 flow. Second operand 3 states and 167 transitions. [2022-02-20 20:59:55,077 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 55 places, 49 transitions, 143 flow [2022-02-20 20:59:55,079 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 54 places, 49 transitions, 141 flow, removed 0 selfloop flow, removed 1 redundant places. [2022-02-20 20:59:55,080 INFO L242 Difference]: Finished difference. Result has 55 places, 48 transitions, 129 flow [2022-02-20 20:59:55,080 INFO L317 CegarLoopForPetriNet]: {PETRI_ALPHABET=66, PETRI_DIFFERENCE_MINUEND_FLOW=110, PETRI_DIFFERENCE_MINUEND_PLACES=52, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=46, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=43, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=129, PETRI_PLACES=55, PETRI_TRANSITIONS=48} [2022-02-20 20:59:55,080 INFO L334 CegarLoopForPetriNet]: 50 programPoint places, 5 predicate places. [2022-02-20 20:59:55,081 INFO L111 iNet2FiniteAutomaton]: Start petriNet2FiniteAutomaton. Operand has 55 places, 48 transitions, 129 flow [2022-02-20 20:59:55,108 INFO L133 iNet2FiniteAutomaton]: Finished petriNet2FiniteAutomaton. Result has 583 states, 580 states have (on average 2.4310344827586206) internal successors, (1410), 582 states have internal predecessors, (1410), 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:59:55,110 INFO L78 Accepts]: Start accepts. Automaton has has 583 states, 580 states have (on average 2.4310344827586206) internal successors, (1410), 582 states have internal predecessors, (1410), 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 33 [2022-02-20 20:59:55,110 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 20:59:55,110 INFO L470 AbstractCegarLoop]: Abstraction has has 55 places, 48 transitions, 129 flow [2022-02-20 20:59:55,111 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 53.333333333333336) internal successors, (160), 3 states have internal predecessors, (160), 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:59:55,111 INFO L246 CegarLoopForPetriNet]: Found error trace [2022-02-20 20:59:55,111 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] [2022-02-20 20:59:55,111 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2022-02-20 20:59:55,111 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATION] === [2022-02-20 20:59:55,112 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:59:55,112 INFO L85 PathProgramCache]: Analyzing trace with hash -2017126046, now seen corresponding path program 1 times [2022-02-20 20:59:55,112 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:59:55,112 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1331200618] [2022-02-20 20:59:55,112 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:59:55,112 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:59:55,124 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:59:55,157 INFO L290 TraceCheckUtils]: 0: Hoare triple {1271#true} [192] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1271#true} is VALID [2022-02-20 20:59:55,157 INFO L290 TraceCheckUtils]: 1: Hoare triple {1271#true} [182] 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] {1271#true} is VALID [2022-02-20 20:59:55,157 INFO L290 TraceCheckUtils]: 2: Hoare triple {1271#true} [199] 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[] {1271#true} is VALID [2022-02-20 20:59:55,158 INFO L290 TraceCheckUtils]: 3: Hoare triple {1271#true} [200] L-1-2-->L16: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {1271#true} is VALID [2022-02-20 20:59:55,158 INFO L290 TraceCheckUtils]: 4: Hoare triple {1271#true} [181] L16-->L16-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[] {1271#true} is VALID [2022-02-20 20:59:55,158 INFO L290 TraceCheckUtils]: 5: Hoare triple {1271#true} [149] L16-1-->L16-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[] {1271#true} is VALID [2022-02-20 20:59:55,158 INFO L290 TraceCheckUtils]: 6: Hoare triple {1271#true} [204] L16-2-->L16-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[] {1271#true} is VALID [2022-02-20 20:59:55,158 INFO L290 TraceCheckUtils]: 7: Hoare triple {1271#true} [186] L16-3-->L16-4: Formula: (and (= (select |v_#valid_3| 2) 1) (= (select |v_#length_2| 2) 1)) InVars {#length=|v_#length_2|, #valid=|v_#valid_3|} OutVars{#length=|v_#length_2|, #valid=|v_#valid_3|} AuxVars[] AssignedVars[] {1271#true} is VALID [2022-02-20 20:59:55,158 INFO L290 TraceCheckUtils]: 8: Hoare triple {1271#true} [189] L16-4-->L16-5: Formula: (= (select (select |v_#memory_int_3| 2) 0) 0) InVars {#memory_int=|v_#memory_int_3|} OutVars{#memory_int=|v_#memory_int_3|} AuxVars[] AssignedVars[] {1271#true} is VALID [2022-02-20 20:59:55,159 INFO L290 TraceCheckUtils]: 9: Hoare triple {1271#true} [179] L16-5-->L-1-3: Formula: (= v_~x~0_1 0) InVars {} OutVars{~x~0=v_~x~0_1} AuxVars[] AssignedVars[~x~0] {1271#true} is VALID [2022-02-20 20:59:55,159 INFO L290 TraceCheckUtils]: 10: Hoare triple {1271#true} [201] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1271#true} is VALID [2022-02-20 20:59:55,159 INFO L290 TraceCheckUtils]: 11: Hoare triple {1271#true} [184] L-1-4-->L-1-5: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1271#true} is VALID [2022-02-20 20:59:55,159 INFO L290 TraceCheckUtils]: 12: Hoare triple {1271#true} [163] L-1-5-->L-1-6: Formula: (and (= |v_ULTIMATE.start_#in~argv#1.offset_1| |v_ULTIMATE.start_main_#in~argv#1.offset_1|) (= |v_ULTIMATE.start_main_#in~argv#1.base_1| |v_ULTIMATE.start_#in~argv#1.base_1|) (= |v_ULTIMATE.start_main_#in~argc#1_1| |v_ULTIMATE.start_#in~argc#1_1|)) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} OutVars{ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_1|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_1|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_#in~argv#1.offset] {1271#true} is VALID [2022-02-20 20:59:55,159 INFO L290 TraceCheckUtils]: 13: Hoare triple {1271#true} [183] L-1-6-->L-1-7: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1] {1271#true} is VALID [2022-02-20 20:59:55,159 INFO L290 TraceCheckUtils]: 14: Hoare triple {1271#true} [159] L-1-7-->L718: Formula: true InVars {} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_1|, ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_1|, ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_1|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_1|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_1|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_1|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_1|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_1|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_1|, ULTIMATE.start_main_#t~mem5#1=|v_ULTIMATE.start_main_#t~mem5#1_1|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~1#1, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1, ULTIMATE.start_main_~#t~0#1.offset, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_#t~mem5#1, ULTIMATE.start_main_~#t~0#1.base, ULTIMATE.start_main_#t~pre2#1] {1271#true} is VALID [2022-02-20 20:59:55,160 INFO L290 TraceCheckUtils]: 15: Hoare triple {1271#true} [168] L718-->L718-1: Formula: (= |v_ULTIMATE.start_main_#in~argc#1_2| |v_ULTIMATE.start_main_~argc#1_2|) InVars {ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_2|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1] {1271#true} is VALID [2022-02-20 20:59:55,160 INFO L290 TraceCheckUtils]: 16: Hoare triple {1271#true} [205] L718-1-->L719: Formula: (and (= |v_ULTIMATE.start_main_~argv#1.offset_2| |v_ULTIMATE.start_main_#in~argv#1.offset_2|) (= |v_ULTIMATE.start_main_#in~argv#1.base_2| |v_ULTIMATE.start_main_~argv#1.base_2|)) InVars {ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|} OutVars{ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~argv#1.offset] {1271#true} is VALID [2022-02-20 20:59:55,160 INFO L290 TraceCheckUtils]: 17: Hoare triple {1271#true} [151] L719-->L719-1: Formula: (and (not (= |v_ULTIMATE.start_main_~#t~0#1.base_2| 0)) (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#t~0#1.base_2|) (= (store |v_#length_4| |v_ULTIMATE.start_main_~#t~0#1.base_2| 44) |v_#length_3|) (= |v_ULTIMATE.start_main_~#t~0#1.offset_2| 0) (= |v_#valid_4| (store |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2| 1)) (= (select |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_4|, #valid=|v_#valid_5|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_3|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_2|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_2|, #valid=|v_#valid_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#t~0#1.offset, #valid, #length, ULTIMATE.start_main_~#t~0#1.base] {1271#true} is VALID [2022-02-20 20:59:55,160 INFO L290 TraceCheckUtils]: 18: Hoare triple {1271#true} [190] L719-1-->L722: Formula: (= v_~x~0_2 0) InVars {} OutVars{~x~0=v_~x~0_2} AuxVars[] AssignedVars[~x~0] {1271#true} is VALID [2022-02-20 20:59:55,160 INFO L290 TraceCheckUtils]: 19: Hoare triple {1271#true} [202] L722-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_2| 1) InVars {} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {1273#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:55,161 INFO L290 TraceCheckUtils]: 20: Hoare triple {1273#(= |ULTIMATE.start_main_~i~0#1| 1)} [171] L723-5-->L724: Formula: (<= |v_ULTIMATE.start_main_~i~0#1_4| 10) 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[] {1273#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:55,161 INFO L290 TraceCheckUtils]: 21: Hoare triple {1273#(= |ULTIMATE.start_main_~i~0#1| 1)} [167] L724-->L724-1: Formula: (= |v_ULTIMATE.start_main_#t~pre2#1_2| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {1273#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:55,162 INFO L290 TraceCheckUtils]: 22: Hoare triple {1273#(= |ULTIMATE.start_main_~i~0#1| 1)} [193] L724-1-->L724-2: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] {1273#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:55,162 INFO L290 TraceCheckUtils]: 23: Hoare triple {1273#(= |ULTIMATE.start_main_~i~0#1| 1)} [158] L724-2-->L724-3: Formula: (= (store |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3| (store (select |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3|) (+ |v_ULTIMATE.start_main_~#t~0#1.offset_3| (* |v_ULTIMATE.start_main_~i~0#1_5| 4)) |v_ULTIMATE.start_main_#t~pre2#1_3|)) |v_#memory_int_4|) InVars {#memory_int=|v_#memory_int_5|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} OutVars{#memory_int=|v_#memory_int_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} AuxVars[] AssignedVars[#memory_int] {1273#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:55,163 INFO L290 TraceCheckUtils]: 24: Hoare triple {1273#(= |ULTIMATE.start_main_~i~0#1| 1)} [218] L724-3-->threadENTRY: Formula: (and (= |v_threadThread1of2ForFork0_#in~arg.base_4| 0) (= |v_ULTIMATE.start_main_~i~0#1_11| |v_threadThread1of2ForFork0_#in~arg.offset_4|) (= |v_ULTIMATE.start_main_#t~pre2#1_8| v_threadThread1of2ForFork0_thidvar0_2)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_11|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_8|} OutVars{threadThread1of2ForFork0_~arg.base=v_threadThread1of2ForFork0_~arg.base_6, threadThread1of2ForFork0_#res.base=|v_threadThread1of2ForFork0_#res.base_4|, threadThread1of2ForFork0_thidvar0=v_threadThread1of2ForFork0_thidvar0_2, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_11|, threadThread1of2ForFork0_#res.offset=|v_threadThread1of2ForFork0_#res.offset_4|, threadThread1of2ForFork0_~arg.offset=v_threadThread1of2ForFork0_~arg.offset_6, threadThread1of2ForFork0_#in~arg.base=|v_threadThread1of2ForFork0_#in~arg.base_4|, threadThread1of2ForFork0_#in~arg.offset=|v_threadThread1of2ForFork0_#in~arg.offset_4|, threadThread1of2ForFork0_~thread~0=v_threadThread1of2ForFork0_~thread~0_6, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_8|} AuxVars[] AssignedVars[threadThread1of2ForFork0_~arg.base, threadThread1of2ForFork0_#res.base, threadThread1of2ForFork0_thidvar0, threadThread1of2ForFork0_#res.offset, threadThread1of2ForFork0_~arg.offset, threadThread1of2ForFork0_#in~arg.base, threadThread1of2ForFork0_#in~arg.offset, threadThread1of2ForFork0_~thread~0] {1273#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:55,163 INFO L290 TraceCheckUtils]: 25: Hoare triple {1273#(= |ULTIMATE.start_main_~i~0#1| 1)} [203] L724-4-->L724-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {1273#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:55,163 INFO L290 TraceCheckUtils]: 26: Hoare triple {1273#(= |ULTIMATE.start_main_~i~0#1| 1)} [156] L724-5-->L723-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet3#1] {1273#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:55,164 INFO L290 TraceCheckUtils]: 27: Hoare triple {1273#(= |ULTIMATE.start_main_~i~0#1| 1)} [185] L723-2-->L723-3: Formula: (= |v_ULTIMATE.start_main_#t~post1#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_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_2|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {1274#(= (+ (- 1) |ULTIMATE.start_main_#t~post1#1|) 0)} is VALID [2022-02-20 20:59:55,164 INFO L290 TraceCheckUtils]: 28: Hoare triple {1274#(= (+ (- 1) |ULTIMATE.start_main_#t~post1#1|) 0)} [164] L723-3-->L723-4: Formula: (= (+ |v_ULTIMATE.start_main_#t~post1#1_3| 1) |v_ULTIMATE.start_main_~i~0#1_7|) InVars {ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_7|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {1275#(<= |ULTIMATE.start_main_~i~0#1| 2)} is VALID [2022-02-20 20:59:55,165 INFO L290 TraceCheckUtils]: 29: Hoare triple {1275#(<= |ULTIMATE.start_main_~i~0#1| 2)} [180] L723-4-->L723-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {1275#(<= |ULTIMATE.start_main_~i~0#1| 2)} is VALID [2022-02-20 20:59:55,165 INFO L290 TraceCheckUtils]: 30: Hoare triple {1275#(<= |ULTIMATE.start_main_~i~0#1| 2)} [170] L723-5-->L723-6: Formula: (not (<= |v_ULTIMATE.start_main_~i~0#1_3| 10)) 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[] {1272#false} is VALID [2022-02-20 20:59:55,165 INFO L290 TraceCheckUtils]: 31: Hoare triple {1272#false} [207] threadENTRY-->L712: Formula: (and (= v_threadThread1of2ForFork0_~arg.offset_1 |v_threadThread1of2ForFork0_#in~arg.offset_1|) (= v_threadThread1of2ForFork0_~arg.base_1 |v_threadThread1of2ForFork0_#in~arg.base_1|)) InVars {threadThread1of2ForFork0_#in~arg.offset=|v_threadThread1of2ForFork0_#in~arg.offset_1|, threadThread1of2ForFork0_#in~arg.base=|v_threadThread1of2ForFork0_#in~arg.base_1|} OutVars{threadThread1of2ForFork0_~arg.base=v_threadThread1of2ForFork0_~arg.base_1, threadThread1of2ForFork0_~arg.offset=v_threadThread1of2ForFork0_~arg.offset_1, threadThread1of2ForFork0_#in~arg.offset=|v_threadThread1of2ForFork0_#in~arg.offset_1|, threadThread1of2ForFork0_#in~arg.base=|v_threadThread1of2ForFork0_#in~arg.base_1|} AuxVars[] AssignedVars[threadThread1of2ForFork0_~arg.base, threadThread1of2ForFork0_~arg.offset] {1272#false} is VALID [2022-02-20 20:59:55,166 INFO L290 TraceCheckUtils]: 32: Hoare triple {1272#false} [208] L712-->L713: Formula: (= v_threadThread1of2ForFork0_~thread~0_1 (+ v_threadThread1of2ForFork0_~arg.offset_3 v_threadThread1of2ForFork0_~arg.base_3)) InVars {threadThread1of2ForFork0_~arg.base=v_threadThread1of2ForFork0_~arg.base_3, threadThread1of2ForFork0_~arg.offset=v_threadThread1of2ForFork0_~arg.offset_3} OutVars{threadThread1of2ForFork0_~arg.base=v_threadThread1of2ForFork0_~arg.base_3, threadThread1of2ForFork0_~arg.offset=v_threadThread1of2ForFork0_~arg.offset_3, threadThread1of2ForFork0_~thread~0=v_threadThread1of2ForFork0_~thread~0_1} AuxVars[] AssignedVars[threadThread1of2ForFork0_~thread~0] {1272#false} is VALID [2022-02-20 20:59:55,166 INFO L290 TraceCheckUtils]: 33: Hoare triple {1272#false} [209] L713-->L715: Formula: (= v_threadThread1of2ForFork0_~thread~0_3 v_~x~0_5) InVars {threadThread1of2ForFork0_~thread~0=v_threadThread1of2ForFork0_~thread~0_3} OutVars{~x~0=v_~x~0_5, threadThread1of2ForFork0_~thread~0=v_threadThread1of2ForFork0_~thread~0_3} AuxVars[] AssignedVars[~x~0] {1272#false} is VALID [2022-02-20 20:59:55,166 INFO L290 TraceCheckUtils]: 34: Hoare triple {1272#false} [154] L723-6-->L727: Formula: (not (< v_~x~0_4 11)) InVars {~x~0=v_~x~0_4} OutVars{~x~0=v_~x~0_4} AuxVars[] AssignedVars[] {1272#false} is VALID [2022-02-20 20:59:55,166 INFO L290 TraceCheckUtils]: 35: Hoare triple {1272#false} [161] L727-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1272#false} is VALID [2022-02-20 20:59:55,167 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:59:55,167 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 20:59:55,167 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1331200618] [2022-02-20 20:59:55,167 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1331200618] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 20:59:55,167 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1511524034] [2022-02-20 20:59:55,167 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:59:55,168 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 20:59:55,168 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 20:59:55,171 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:59:55,177 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:59:55,235 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:59:55,237 INFO L263 TraceCheckSpWp]: Trace formula consists of 91 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-20 20:59:55,248 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:59:55,249 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 20:59:55,434 INFO L290 TraceCheckUtils]: 0: Hoare triple {1271#true} [192] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1271#true} is VALID [2022-02-20 20:59:55,435 INFO L290 TraceCheckUtils]: 1: Hoare triple {1271#true} [182] 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] {1271#true} is VALID [2022-02-20 20:59:55,435 INFO L290 TraceCheckUtils]: 2: Hoare triple {1271#true} [199] 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[] {1271#true} is VALID [2022-02-20 20:59:55,435 INFO L290 TraceCheckUtils]: 3: Hoare triple {1271#true} [200] L-1-2-->L16: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {1271#true} is VALID [2022-02-20 20:59:55,435 INFO L290 TraceCheckUtils]: 4: Hoare triple {1271#true} [181] L16-->L16-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[] {1271#true} is VALID [2022-02-20 20:59:55,436 INFO L290 TraceCheckUtils]: 5: Hoare triple {1271#true} [149] L16-1-->L16-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[] {1271#true} is VALID [2022-02-20 20:59:55,436 INFO L290 TraceCheckUtils]: 6: Hoare triple {1271#true} [204] L16-2-->L16-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[] {1271#true} is VALID [2022-02-20 20:59:55,436 INFO L290 TraceCheckUtils]: 7: Hoare triple {1271#true} [186] L16-3-->L16-4: Formula: (and (= (select |v_#valid_3| 2) 1) (= (select |v_#length_2| 2) 1)) InVars {#length=|v_#length_2|, #valid=|v_#valid_3|} OutVars{#length=|v_#length_2|, #valid=|v_#valid_3|} AuxVars[] AssignedVars[] {1271#true} is VALID [2022-02-20 20:59:55,436 INFO L290 TraceCheckUtils]: 8: Hoare triple {1271#true} [189] L16-4-->L16-5: Formula: (= (select (select |v_#memory_int_3| 2) 0) 0) InVars {#memory_int=|v_#memory_int_3|} OutVars{#memory_int=|v_#memory_int_3|} AuxVars[] AssignedVars[] {1271#true} is VALID [2022-02-20 20:59:55,437 INFO L290 TraceCheckUtils]: 9: Hoare triple {1271#true} [179] L16-5-->L-1-3: Formula: (= v_~x~0_1 0) InVars {} OutVars{~x~0=v_~x~0_1} AuxVars[] AssignedVars[~x~0] {1271#true} is VALID [2022-02-20 20:59:55,437 INFO L290 TraceCheckUtils]: 10: Hoare triple {1271#true} [201] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1271#true} is VALID [2022-02-20 20:59:55,437 INFO L290 TraceCheckUtils]: 11: Hoare triple {1271#true} [184] L-1-4-->L-1-5: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1271#true} is VALID [2022-02-20 20:59:55,437 INFO L290 TraceCheckUtils]: 12: Hoare triple {1271#true} [163] L-1-5-->L-1-6: Formula: (and (= |v_ULTIMATE.start_#in~argv#1.offset_1| |v_ULTIMATE.start_main_#in~argv#1.offset_1|) (= |v_ULTIMATE.start_main_#in~argv#1.base_1| |v_ULTIMATE.start_#in~argv#1.base_1|) (= |v_ULTIMATE.start_main_#in~argc#1_1| |v_ULTIMATE.start_#in~argc#1_1|)) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} OutVars{ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_1|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_1|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_#in~argv#1.offset] {1271#true} is VALID [2022-02-20 20:59:55,437 INFO L290 TraceCheckUtils]: 13: Hoare triple {1271#true} [183] L-1-6-->L-1-7: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1] {1271#true} is VALID [2022-02-20 20:59:55,438 INFO L290 TraceCheckUtils]: 14: Hoare triple {1271#true} [159] L-1-7-->L718: Formula: true InVars {} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_1|, ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_1|, ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_1|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_1|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_1|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_1|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_1|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_1|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_1|, ULTIMATE.start_main_#t~mem5#1=|v_ULTIMATE.start_main_#t~mem5#1_1|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~1#1, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1, ULTIMATE.start_main_~#t~0#1.offset, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_#t~mem5#1, ULTIMATE.start_main_~#t~0#1.base, ULTIMATE.start_main_#t~pre2#1] {1271#true} is VALID [2022-02-20 20:59:55,438 INFO L290 TraceCheckUtils]: 15: Hoare triple {1271#true} [168] L718-->L718-1: Formula: (= |v_ULTIMATE.start_main_#in~argc#1_2| |v_ULTIMATE.start_main_~argc#1_2|) InVars {ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_2|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1] {1271#true} is VALID [2022-02-20 20:59:55,438 INFO L290 TraceCheckUtils]: 16: Hoare triple {1271#true} [205] L718-1-->L719: Formula: (and (= |v_ULTIMATE.start_main_~argv#1.offset_2| |v_ULTIMATE.start_main_#in~argv#1.offset_2|) (= |v_ULTIMATE.start_main_#in~argv#1.base_2| |v_ULTIMATE.start_main_~argv#1.base_2|)) InVars {ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|} OutVars{ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~argv#1.offset] {1271#true} is VALID [2022-02-20 20:59:55,438 INFO L290 TraceCheckUtils]: 17: Hoare triple {1271#true} [151] L719-->L719-1: Formula: (and (not (= |v_ULTIMATE.start_main_~#t~0#1.base_2| 0)) (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#t~0#1.base_2|) (= (store |v_#length_4| |v_ULTIMATE.start_main_~#t~0#1.base_2| 44) |v_#length_3|) (= |v_ULTIMATE.start_main_~#t~0#1.offset_2| 0) (= |v_#valid_4| (store |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2| 1)) (= (select |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_4|, #valid=|v_#valid_5|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_3|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_2|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_2|, #valid=|v_#valid_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#t~0#1.offset, #valid, #length, ULTIMATE.start_main_~#t~0#1.base] {1271#true} is VALID [2022-02-20 20:59:55,439 INFO L290 TraceCheckUtils]: 18: Hoare triple {1271#true} [190] L719-1-->L722: Formula: (= v_~x~0_2 0) InVars {} OutVars{~x~0=v_~x~0_2} AuxVars[] AssignedVars[~x~0] {1271#true} is VALID [2022-02-20 20:59:55,441 INFO L290 TraceCheckUtils]: 19: Hoare triple {1271#true} [202] L722-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_2| 1) InVars {} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {1336#(<= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:55,442 INFO L290 TraceCheckUtils]: 20: Hoare triple {1336#(<= |ULTIMATE.start_main_~i~0#1| 1)} [171] L723-5-->L724: Formula: (<= |v_ULTIMATE.start_main_~i~0#1_4| 10) 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[] {1336#(<= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:55,442 INFO L290 TraceCheckUtils]: 21: Hoare triple {1336#(<= |ULTIMATE.start_main_~i~0#1| 1)} [167] L724-->L724-1: Formula: (= |v_ULTIMATE.start_main_#t~pre2#1_2| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {1336#(<= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:55,443 INFO L290 TraceCheckUtils]: 22: Hoare triple {1336#(<= |ULTIMATE.start_main_~i~0#1| 1)} [193] L724-1-->L724-2: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] {1336#(<= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:55,443 INFO L290 TraceCheckUtils]: 23: Hoare triple {1336#(<= |ULTIMATE.start_main_~i~0#1| 1)} [158] L724-2-->L724-3: Formula: (= (store |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3| (store (select |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3|) (+ |v_ULTIMATE.start_main_~#t~0#1.offset_3| (* |v_ULTIMATE.start_main_~i~0#1_5| 4)) |v_ULTIMATE.start_main_#t~pre2#1_3|)) |v_#memory_int_4|) InVars {#memory_int=|v_#memory_int_5|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} OutVars{#memory_int=|v_#memory_int_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} AuxVars[] AssignedVars[#memory_int] {1336#(<= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:55,444 INFO L290 TraceCheckUtils]: 24: Hoare triple {1336#(<= |ULTIMATE.start_main_~i~0#1| 1)} [218] L724-3-->threadENTRY: Formula: (and (= |v_threadThread1of2ForFork0_#in~arg.base_4| 0) (= |v_ULTIMATE.start_main_~i~0#1_11| |v_threadThread1of2ForFork0_#in~arg.offset_4|) (= |v_ULTIMATE.start_main_#t~pre2#1_8| v_threadThread1of2ForFork0_thidvar0_2)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_11|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_8|} OutVars{threadThread1of2ForFork0_~arg.base=v_threadThread1of2ForFork0_~arg.base_6, threadThread1of2ForFork0_#res.base=|v_threadThread1of2ForFork0_#res.base_4|, threadThread1of2ForFork0_thidvar0=v_threadThread1of2ForFork0_thidvar0_2, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_11|, threadThread1of2ForFork0_#res.offset=|v_threadThread1of2ForFork0_#res.offset_4|, threadThread1of2ForFork0_~arg.offset=v_threadThread1of2ForFork0_~arg.offset_6, threadThread1of2ForFork0_#in~arg.base=|v_threadThread1of2ForFork0_#in~arg.base_4|, threadThread1of2ForFork0_#in~arg.offset=|v_threadThread1of2ForFork0_#in~arg.offset_4|, threadThread1of2ForFork0_~thread~0=v_threadThread1of2ForFork0_~thread~0_6, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_8|} AuxVars[] AssignedVars[threadThread1of2ForFork0_~arg.base, threadThread1of2ForFork0_#res.base, threadThread1of2ForFork0_thidvar0, threadThread1of2ForFork0_#res.offset, threadThread1of2ForFork0_~arg.offset, threadThread1of2ForFork0_#in~arg.base, threadThread1of2ForFork0_#in~arg.offset, threadThread1of2ForFork0_~thread~0] {1336#(<= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:55,445 INFO L290 TraceCheckUtils]: 25: Hoare triple {1336#(<= |ULTIMATE.start_main_~i~0#1| 1)} [203] L724-4-->L724-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {1336#(<= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:55,445 INFO L290 TraceCheckUtils]: 26: Hoare triple {1336#(<= |ULTIMATE.start_main_~i~0#1| 1)} [156] L724-5-->L723-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet3#1] {1336#(<= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:55,446 INFO L290 TraceCheckUtils]: 27: Hoare triple {1336#(<= |ULTIMATE.start_main_~i~0#1| 1)} [185] L723-2-->L723-3: Formula: (= |v_ULTIMATE.start_main_#t~post1#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_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_2|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {1361#(<= |ULTIMATE.start_main_#t~post1#1| 1)} is VALID [2022-02-20 20:59:55,446 INFO L290 TraceCheckUtils]: 28: Hoare triple {1361#(<= |ULTIMATE.start_main_#t~post1#1| 1)} [164] L723-3-->L723-4: Formula: (= (+ |v_ULTIMATE.start_main_#t~post1#1_3| 1) |v_ULTIMATE.start_main_~i~0#1_7|) InVars {ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_7|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {1275#(<= |ULTIMATE.start_main_~i~0#1| 2)} is VALID [2022-02-20 20:59:55,447 INFO L290 TraceCheckUtils]: 29: Hoare triple {1275#(<= |ULTIMATE.start_main_~i~0#1| 2)} [180] L723-4-->L723-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {1275#(<= |ULTIMATE.start_main_~i~0#1| 2)} is VALID [2022-02-20 20:59:55,448 INFO L290 TraceCheckUtils]: 30: Hoare triple {1275#(<= |ULTIMATE.start_main_~i~0#1| 2)} [170] L723-5-->L723-6: Formula: (not (<= |v_ULTIMATE.start_main_~i~0#1_3| 10)) 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[] {1272#false} is VALID [2022-02-20 20:59:55,448 INFO L290 TraceCheckUtils]: 31: Hoare triple {1272#false} [207] threadENTRY-->L712: Formula: (and (= v_threadThread1of2ForFork0_~arg.offset_1 |v_threadThread1of2ForFork0_#in~arg.offset_1|) (= v_threadThread1of2ForFork0_~arg.base_1 |v_threadThread1of2ForFork0_#in~arg.base_1|)) InVars {threadThread1of2ForFork0_#in~arg.offset=|v_threadThread1of2ForFork0_#in~arg.offset_1|, threadThread1of2ForFork0_#in~arg.base=|v_threadThread1of2ForFork0_#in~arg.base_1|} OutVars{threadThread1of2ForFork0_~arg.base=v_threadThread1of2ForFork0_~arg.base_1, threadThread1of2ForFork0_~arg.offset=v_threadThread1of2ForFork0_~arg.offset_1, threadThread1of2ForFork0_#in~arg.offset=|v_threadThread1of2ForFork0_#in~arg.offset_1|, threadThread1of2ForFork0_#in~arg.base=|v_threadThread1of2ForFork0_#in~arg.base_1|} AuxVars[] AssignedVars[threadThread1of2ForFork0_~arg.base, threadThread1of2ForFork0_~arg.offset] {1272#false} is VALID [2022-02-20 20:59:55,449 INFO L290 TraceCheckUtils]: 32: Hoare triple {1272#false} [208] L712-->L713: Formula: (= v_threadThread1of2ForFork0_~thread~0_1 (+ v_threadThread1of2ForFork0_~arg.offset_3 v_threadThread1of2ForFork0_~arg.base_3)) InVars {threadThread1of2ForFork0_~arg.base=v_threadThread1of2ForFork0_~arg.base_3, threadThread1of2ForFork0_~arg.offset=v_threadThread1of2ForFork0_~arg.offset_3} OutVars{threadThread1of2ForFork0_~arg.base=v_threadThread1of2ForFork0_~arg.base_3, threadThread1of2ForFork0_~arg.offset=v_threadThread1of2ForFork0_~arg.offset_3, threadThread1of2ForFork0_~thread~0=v_threadThread1of2ForFork0_~thread~0_1} AuxVars[] AssignedVars[threadThread1of2ForFork0_~thread~0] {1272#false} is VALID [2022-02-20 20:59:55,449 INFO L290 TraceCheckUtils]: 33: Hoare triple {1272#false} [209] L713-->L715: Formula: (= v_threadThread1of2ForFork0_~thread~0_3 v_~x~0_5) InVars {threadThread1of2ForFork0_~thread~0=v_threadThread1of2ForFork0_~thread~0_3} OutVars{~x~0=v_~x~0_5, threadThread1of2ForFork0_~thread~0=v_threadThread1of2ForFork0_~thread~0_3} AuxVars[] AssignedVars[~x~0] {1272#false} is VALID [2022-02-20 20:59:55,449 INFO L290 TraceCheckUtils]: 34: Hoare triple {1272#false} [154] L723-6-->L727: Formula: (not (< v_~x~0_4 11)) InVars {~x~0=v_~x~0_4} OutVars{~x~0=v_~x~0_4} AuxVars[] AssignedVars[] {1272#false} is VALID [2022-02-20 20:59:55,449 INFO L290 TraceCheckUtils]: 35: Hoare triple {1272#false} [161] L727-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1272#false} is VALID [2022-02-20 20:59:55,450 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:59:55,450 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 20:59:55,605 INFO L290 TraceCheckUtils]: 35: Hoare triple {1272#false} [161] L727-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1272#false} is VALID [2022-02-20 20:59:55,605 INFO L290 TraceCheckUtils]: 34: Hoare triple {1272#false} [154] L723-6-->L727: Formula: (not (< v_~x~0_4 11)) InVars {~x~0=v_~x~0_4} OutVars{~x~0=v_~x~0_4} AuxVars[] AssignedVars[] {1272#false} is VALID [2022-02-20 20:59:55,605 INFO L290 TraceCheckUtils]: 33: Hoare triple {1272#false} [209] L713-->L715: Formula: (= v_threadThread1of2ForFork0_~thread~0_3 v_~x~0_5) InVars {threadThread1of2ForFork0_~thread~0=v_threadThread1of2ForFork0_~thread~0_3} OutVars{~x~0=v_~x~0_5, threadThread1of2ForFork0_~thread~0=v_threadThread1of2ForFork0_~thread~0_3} AuxVars[] AssignedVars[~x~0] {1272#false} is VALID [2022-02-20 20:59:55,605 INFO L290 TraceCheckUtils]: 32: Hoare triple {1272#false} [208] L712-->L713: Formula: (= v_threadThread1of2ForFork0_~thread~0_1 (+ v_threadThread1of2ForFork0_~arg.offset_3 v_threadThread1of2ForFork0_~arg.base_3)) InVars {threadThread1of2ForFork0_~arg.base=v_threadThread1of2ForFork0_~arg.base_3, threadThread1of2ForFork0_~arg.offset=v_threadThread1of2ForFork0_~arg.offset_3} OutVars{threadThread1of2ForFork0_~arg.base=v_threadThread1of2ForFork0_~arg.base_3, threadThread1of2ForFork0_~arg.offset=v_threadThread1of2ForFork0_~arg.offset_3, threadThread1of2ForFork0_~thread~0=v_threadThread1of2ForFork0_~thread~0_1} AuxVars[] AssignedVars[threadThread1of2ForFork0_~thread~0] {1272#false} is VALID [2022-02-20 20:59:55,606 INFO L290 TraceCheckUtils]: 31: Hoare triple {1272#false} [207] threadENTRY-->L712: Formula: (and (= v_threadThread1of2ForFork0_~arg.offset_1 |v_threadThread1of2ForFork0_#in~arg.offset_1|) (= v_threadThread1of2ForFork0_~arg.base_1 |v_threadThread1of2ForFork0_#in~arg.base_1|)) InVars {threadThread1of2ForFork0_#in~arg.offset=|v_threadThread1of2ForFork0_#in~arg.offset_1|, threadThread1of2ForFork0_#in~arg.base=|v_threadThread1of2ForFork0_#in~arg.base_1|} OutVars{threadThread1of2ForFork0_~arg.base=v_threadThread1of2ForFork0_~arg.base_1, threadThread1of2ForFork0_~arg.offset=v_threadThread1of2ForFork0_~arg.offset_1, threadThread1of2ForFork0_#in~arg.offset=|v_threadThread1of2ForFork0_#in~arg.offset_1|, threadThread1of2ForFork0_#in~arg.base=|v_threadThread1of2ForFork0_#in~arg.base_1|} AuxVars[] AssignedVars[threadThread1of2ForFork0_~arg.base, threadThread1of2ForFork0_~arg.offset] {1272#false} is VALID [2022-02-20 20:59:55,606 INFO L290 TraceCheckUtils]: 30: Hoare triple {1401#(<= |ULTIMATE.start_main_~i~0#1| 10)} [170] L723-5-->L723-6: Formula: (not (<= |v_ULTIMATE.start_main_~i~0#1_3| 10)) 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[] {1272#false} is VALID [2022-02-20 20:59:55,607 INFO L290 TraceCheckUtils]: 29: Hoare triple {1401#(<= |ULTIMATE.start_main_~i~0#1| 10)} [180] L723-4-->L723-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {1401#(<= |ULTIMATE.start_main_~i~0#1| 10)} is VALID [2022-02-20 20:59:55,607 INFO L290 TraceCheckUtils]: 28: Hoare triple {1408#(<= |ULTIMATE.start_main_#t~post1#1| 9)} [164] L723-3-->L723-4: Formula: (= (+ |v_ULTIMATE.start_main_#t~post1#1_3| 1) |v_ULTIMATE.start_main_~i~0#1_7|) InVars {ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_7|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {1401#(<= |ULTIMATE.start_main_~i~0#1| 10)} is VALID [2022-02-20 20:59:55,608 INFO L290 TraceCheckUtils]: 27: Hoare triple {1412#(<= |ULTIMATE.start_main_~i~0#1| 9)} [185] L723-2-->L723-3: Formula: (= |v_ULTIMATE.start_main_#t~post1#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_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_2|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {1408#(<= |ULTIMATE.start_main_#t~post1#1| 9)} is VALID [2022-02-20 20:59:55,608 INFO L290 TraceCheckUtils]: 26: Hoare triple {1412#(<= |ULTIMATE.start_main_~i~0#1| 9)} [156] L724-5-->L723-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet3#1] {1412#(<= |ULTIMATE.start_main_~i~0#1| 9)} is VALID [2022-02-20 20:59:55,609 INFO L290 TraceCheckUtils]: 25: Hoare triple {1412#(<= |ULTIMATE.start_main_~i~0#1| 9)} [203] L724-4-->L724-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {1412#(<= |ULTIMATE.start_main_~i~0#1| 9)} is VALID [2022-02-20 20:59:55,609 INFO L290 TraceCheckUtils]: 24: Hoare triple {1412#(<= |ULTIMATE.start_main_~i~0#1| 9)} [218] L724-3-->threadENTRY: Formula: (and (= |v_threadThread1of2ForFork0_#in~arg.base_4| 0) (= |v_ULTIMATE.start_main_~i~0#1_11| |v_threadThread1of2ForFork0_#in~arg.offset_4|) (= |v_ULTIMATE.start_main_#t~pre2#1_8| v_threadThread1of2ForFork0_thidvar0_2)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_11|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_8|} OutVars{threadThread1of2ForFork0_~arg.base=v_threadThread1of2ForFork0_~arg.base_6, threadThread1of2ForFork0_#res.base=|v_threadThread1of2ForFork0_#res.base_4|, threadThread1of2ForFork0_thidvar0=v_threadThread1of2ForFork0_thidvar0_2, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_11|, threadThread1of2ForFork0_#res.offset=|v_threadThread1of2ForFork0_#res.offset_4|, threadThread1of2ForFork0_~arg.offset=v_threadThread1of2ForFork0_~arg.offset_6, threadThread1of2ForFork0_#in~arg.base=|v_threadThread1of2ForFork0_#in~arg.base_4|, threadThread1of2ForFork0_#in~arg.offset=|v_threadThread1of2ForFork0_#in~arg.offset_4|, threadThread1of2ForFork0_~thread~0=v_threadThread1of2ForFork0_~thread~0_6, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_8|} AuxVars[] AssignedVars[threadThread1of2ForFork0_~arg.base, threadThread1of2ForFork0_#res.base, threadThread1of2ForFork0_thidvar0, threadThread1of2ForFork0_#res.offset, threadThread1of2ForFork0_~arg.offset, threadThread1of2ForFork0_#in~arg.base, threadThread1of2ForFork0_#in~arg.offset, threadThread1of2ForFork0_~thread~0] {1412#(<= |ULTIMATE.start_main_~i~0#1| 9)} is VALID [2022-02-20 20:59:55,610 INFO L290 TraceCheckUtils]: 23: Hoare triple {1412#(<= |ULTIMATE.start_main_~i~0#1| 9)} [158] L724-2-->L724-3: Formula: (= (store |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3| (store (select |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3|) (+ |v_ULTIMATE.start_main_~#t~0#1.offset_3| (* |v_ULTIMATE.start_main_~i~0#1_5| 4)) |v_ULTIMATE.start_main_#t~pre2#1_3|)) |v_#memory_int_4|) InVars {#memory_int=|v_#memory_int_5|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} OutVars{#memory_int=|v_#memory_int_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} AuxVars[] AssignedVars[#memory_int] {1412#(<= |ULTIMATE.start_main_~i~0#1| 9)} is VALID [2022-02-20 20:59:55,610 INFO L290 TraceCheckUtils]: 22: Hoare triple {1412#(<= |ULTIMATE.start_main_~i~0#1| 9)} [193] L724-1-->L724-2: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] {1412#(<= |ULTIMATE.start_main_~i~0#1| 9)} is VALID [2022-02-20 20:59:55,611 INFO L290 TraceCheckUtils]: 21: Hoare triple {1412#(<= |ULTIMATE.start_main_~i~0#1| 9)} [167] L724-->L724-1: Formula: (= |v_ULTIMATE.start_main_#t~pre2#1_2| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {1412#(<= |ULTIMATE.start_main_~i~0#1| 9)} is VALID [2022-02-20 20:59:55,611 INFO L290 TraceCheckUtils]: 20: Hoare triple {1412#(<= |ULTIMATE.start_main_~i~0#1| 9)} [171] L723-5-->L724: Formula: (<= |v_ULTIMATE.start_main_~i~0#1_4| 10) 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[] {1412#(<= |ULTIMATE.start_main_~i~0#1| 9)} is VALID [2022-02-20 20:59:55,612 INFO L290 TraceCheckUtils]: 19: Hoare triple {1271#true} [202] L722-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_2| 1) InVars {} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {1412#(<= |ULTIMATE.start_main_~i~0#1| 9)} is VALID [2022-02-20 20:59:55,612 INFO L290 TraceCheckUtils]: 18: Hoare triple {1271#true} [190] L719-1-->L722: Formula: (= v_~x~0_2 0) InVars {} OutVars{~x~0=v_~x~0_2} AuxVars[] AssignedVars[~x~0] {1271#true} is VALID [2022-02-20 20:59:55,612 INFO L290 TraceCheckUtils]: 17: Hoare triple {1271#true} [151] L719-->L719-1: Formula: (and (not (= |v_ULTIMATE.start_main_~#t~0#1.base_2| 0)) (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#t~0#1.base_2|) (= (store |v_#length_4| |v_ULTIMATE.start_main_~#t~0#1.base_2| 44) |v_#length_3|) (= |v_ULTIMATE.start_main_~#t~0#1.offset_2| 0) (= |v_#valid_4| (store |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2| 1)) (= (select |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_4|, #valid=|v_#valid_5|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_3|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_2|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_2|, #valid=|v_#valid_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#t~0#1.offset, #valid, #length, ULTIMATE.start_main_~#t~0#1.base] {1271#true} is VALID [2022-02-20 20:59:55,612 INFO L290 TraceCheckUtils]: 16: Hoare triple {1271#true} [205] L718-1-->L719: Formula: (and (= |v_ULTIMATE.start_main_~argv#1.offset_2| |v_ULTIMATE.start_main_#in~argv#1.offset_2|) (= |v_ULTIMATE.start_main_#in~argv#1.base_2| |v_ULTIMATE.start_main_~argv#1.base_2|)) InVars {ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|} OutVars{ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~argv#1.offset] {1271#true} is VALID [2022-02-20 20:59:55,612 INFO L290 TraceCheckUtils]: 15: Hoare triple {1271#true} [168] L718-->L718-1: Formula: (= |v_ULTIMATE.start_main_#in~argc#1_2| |v_ULTIMATE.start_main_~argc#1_2|) InVars {ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_2|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1] {1271#true} is VALID [2022-02-20 20:59:55,613 INFO L290 TraceCheckUtils]: 14: Hoare triple {1271#true} [159] L-1-7-->L718: Formula: true InVars {} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_1|, ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_1|, ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_1|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_1|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_1|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_1|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_1|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_1|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_1|, ULTIMATE.start_main_#t~mem5#1=|v_ULTIMATE.start_main_#t~mem5#1_1|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~1#1, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1, ULTIMATE.start_main_~#t~0#1.offset, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_#t~mem5#1, ULTIMATE.start_main_~#t~0#1.base, ULTIMATE.start_main_#t~pre2#1] {1271#true} is VALID [2022-02-20 20:59:55,613 INFO L290 TraceCheckUtils]: 13: Hoare triple {1271#true} [183] L-1-6-->L-1-7: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1] {1271#true} is VALID [2022-02-20 20:59:55,613 INFO L290 TraceCheckUtils]: 12: Hoare triple {1271#true} [163] L-1-5-->L-1-6: Formula: (and (= |v_ULTIMATE.start_#in~argv#1.offset_1| |v_ULTIMATE.start_main_#in~argv#1.offset_1|) (= |v_ULTIMATE.start_main_#in~argv#1.base_1| |v_ULTIMATE.start_#in~argv#1.base_1|) (= |v_ULTIMATE.start_main_#in~argc#1_1| |v_ULTIMATE.start_#in~argc#1_1|)) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} OutVars{ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_1|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_1|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_#in~argv#1.offset] {1271#true} is VALID [2022-02-20 20:59:55,613 INFO L290 TraceCheckUtils]: 11: Hoare triple {1271#true} [184] L-1-4-->L-1-5: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1271#true} is VALID [2022-02-20 20:59:55,613 INFO L290 TraceCheckUtils]: 10: Hoare triple {1271#true} [201] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1271#true} is VALID [2022-02-20 20:59:55,614 INFO L290 TraceCheckUtils]: 9: Hoare triple {1271#true} [179] L16-5-->L-1-3: Formula: (= v_~x~0_1 0) InVars {} OutVars{~x~0=v_~x~0_1} AuxVars[] AssignedVars[~x~0] {1271#true} is VALID [2022-02-20 20:59:55,614 INFO L290 TraceCheckUtils]: 8: Hoare triple {1271#true} [189] L16-4-->L16-5: Formula: (= (select (select |v_#memory_int_3| 2) 0) 0) InVars {#memory_int=|v_#memory_int_3|} OutVars{#memory_int=|v_#memory_int_3|} AuxVars[] AssignedVars[] {1271#true} is VALID [2022-02-20 20:59:55,614 INFO L290 TraceCheckUtils]: 7: Hoare triple {1271#true} [186] L16-3-->L16-4: Formula: (and (= (select |v_#valid_3| 2) 1) (= (select |v_#length_2| 2) 1)) InVars {#length=|v_#length_2|, #valid=|v_#valid_3|} OutVars{#length=|v_#length_2|, #valid=|v_#valid_3|} AuxVars[] AssignedVars[] {1271#true} is VALID [2022-02-20 20:59:55,614 INFO L290 TraceCheckUtils]: 6: Hoare triple {1271#true} [204] L16-2-->L16-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[] {1271#true} is VALID [2022-02-20 20:59:55,614 INFO L290 TraceCheckUtils]: 5: Hoare triple {1271#true} [149] L16-1-->L16-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[] {1271#true} is VALID [2022-02-20 20:59:55,615 INFO L290 TraceCheckUtils]: 4: Hoare triple {1271#true} [181] L16-->L16-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[] {1271#true} is VALID [2022-02-20 20:59:55,615 INFO L290 TraceCheckUtils]: 3: Hoare triple {1271#true} [200] L-1-2-->L16: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {1271#true} is VALID [2022-02-20 20:59:55,615 INFO L290 TraceCheckUtils]: 2: Hoare triple {1271#true} [199] 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[] {1271#true} is VALID [2022-02-20 20:59:55,615 INFO L290 TraceCheckUtils]: 1: Hoare triple {1271#true} [182] 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] {1271#true} is VALID [2022-02-20 20:59:55,615 INFO L290 TraceCheckUtils]: 0: Hoare triple {1271#true} [192] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1271#true} is VALID [2022-02-20 20:59:55,616 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:59:55,616 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1511524034] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 20:59:55,616 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 20:59:55,616 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5, 5] total 10 [2022-02-20 20:59:55,617 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2090832235] [2022-02-20 20:59:55,617 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 20:59:55,617 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 5.8) internal successors, (58), 10 states have internal predecessors, (58), 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 36 [2022-02-20 20:59:55,618 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 20:59:55,618 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 5.8) internal successors, (58), 10 states have internal predecessors, (58), 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:59:55,657 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:59:55,658 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-02-20 20:59:55,658 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 20:59:55,658 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-02-20 20:59:55,658 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=30, Invalid=60, Unknown=0, NotChecked=0, Total=90 [2022-02-20 20:59:55,659 INFO L499 CegarLoopForPetriNet]: Number of universal loopers: 50 out of 66 [2022-02-20 20:59:55,660 INFO L92 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 55 places, 48 transitions, 129 flow. Second operand has 10 states, 10 states have (on average 52.3) internal successors, (523), 10 states have internal predecessors, (523), 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:59:55,660 INFO L101 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-02-20 20:59:55,660 INFO L102 encePairwiseOnDemand]: Number of universal subtrahend loopers: 50 of 66 [2022-02-20 20:59:55,660 INFO L74 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-02-20 20:59:55,747 INFO L129 PetriNetUnfolder]: 1/59 cut-off events. [2022-02-20 20:59:55,747 INFO L130 PetriNetUnfolder]: For 3/3 co-relation queries the response was YES. [2022-02-20 20:59:55,747 INFO L84 FinitePrefix]: Finished finitePrefix Result has 98 conditions, 59 events. 1/59 cut-off events. For 3/3 co-relation queries the response was YES. Maximal size of possible extension queue 3. Compared 32 event pairs, 0 based on Foata normal form. 2/61 useless extension candidates. Maximal degree in co-relation 37. Up to 5 conditions per place. [2022-02-20 20:59:55,748 INFO L132 encePairwiseOnDemand]: 61/66 looper letters, 9 selfloop transitions, 7 changer transitions 0/51 dead transitions. [2022-02-20 20:59:55,748 INFO L138 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 60 places, 51 transitions, 163 flow [2022-02-20 20:59:55,748 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 20:59:55,748 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 9 states. [2022-02-20 20:59:55,769 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 468 transitions. [2022-02-20 20:59:55,770 INFO L544 CegarLoopForPetriNet]: DFA transition density 0.7878787878787878 [2022-02-20 20:59:55,770 INFO L72 ComplementDD]: Start complementDD. Operand 9 states and 468 transitions. [2022-02-20 20:59:55,770 INFO L73 IsDeterministic]: Start isDeterministic. Operand 9 states and 468 transitions. [2022-02-20 20:59:55,771 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-02-20 20:59:55,771 INFO L117 ReachableStatesCopy]: Start reachableStatesCopy. Operand 9 states and 468 transitions. [2022-02-20 20:59:55,772 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends has 10 states, 9 states have (on average 52.0) internal successors, (468), 9 states have internal predecessors, (468), 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:59:55,774 INFO L131 ReachableStatesCopy]: Finished reachableStatesCopy Result has 10 states, 10 states have (on average 66.0) internal successors, (660), 10 states have internal predecessors, (660), 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:59:55,774 INFO L81 ComplementDD]: Finished complementDD. Result has 10 states, 10 states have (on average 66.0) internal successors, (660), 10 states have internal predecessors, (660), 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:59:55,774 INFO L186 Difference]: Start difference. First operand has 55 places, 48 transitions, 129 flow. Second operand 9 states and 468 transitions. [2022-02-20 20:59:55,775 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 60 places, 51 transitions, 163 flow [2022-02-20 20:59:55,777 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 59 places, 51 transitions, 160 flow, removed 0 selfloop flow, removed 1 redundant places. [2022-02-20 20:59:55,778 INFO L242 Difference]: Finished difference. Result has 59 places, 47 transitions, 134 flow [2022-02-20 20:59:55,779 INFO L317 CegarLoopForPetriNet]: {PETRI_ALPHABET=66, PETRI_DIFFERENCE_MINUEND_FLOW=116, PETRI_DIFFERENCE_MINUEND_PLACES=51, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=45, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=5, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=40, PETRI_DIFFERENCE_SUBTRAHEND_STATES=9, PETRI_FLOW=134, PETRI_PLACES=59, PETRI_TRANSITIONS=47} [2022-02-20 20:59:55,779 INFO L334 CegarLoopForPetriNet]: 50 programPoint places, 9 predicate places. [2022-02-20 20:59:55,779 INFO L111 iNet2FiniteAutomaton]: Start petriNet2FiniteAutomaton. Operand has 59 places, 47 transitions, 134 flow [2022-02-20 20:59:55,792 INFO L133 iNet2FiniteAutomaton]: Finished petriNet2FiniteAutomaton. Result has 481 states, 480 states have (on average 2.40625) internal successors, (1155), 480 states have internal predecessors, (1155), 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:59:55,793 INFO L78 Accepts]: Start accepts. Automaton has has 481 states, 480 states have (on average 2.40625) internal successors, (1155), 480 states have internal predecessors, (1155), 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 36 [2022-02-20 20:59:55,794 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 20:59:55,794 INFO L470 AbstractCegarLoop]: Abstraction has has 59 places, 47 transitions, 134 flow [2022-02-20 20:59:55,794 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 52.3) internal successors, (523), 10 states have internal predecessors, (523), 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:59:55,795 INFO L246 CegarLoopForPetriNet]: Found error trace [2022-02-20 20:59:55,795 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] [2022-02-20 20:59:55,820 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:59:56,011 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 20:59:56,012 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0INUSE_VIOLATION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATION] === [2022-02-20 20:59:56,012 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:59:56,012 INFO L85 PathProgramCache]: Analyzing trace with hash 286308789, now seen corresponding path program 1 times [2022-02-20 20:59:56,012 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:59:56,012 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1293012896] [2022-02-20 20:59:56,012 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:59:56,013 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:59:56,033 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-02-20 20:59:56,043 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-02-20 20:59:56,052 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-02-20 20:59:56,059 INFO L138 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-02-20 20:59:56,062 INFO L628 BasicCegarLoop]: Counterexample is feasible [2022-02-20 20:59:56,062 INFO L764 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0INUSE_VIOLATION (1 of 2 remaining) [2022-02-20 20:59:56,062 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 2 remaining) [2022-02-20 20:59:56,062 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7 [2022-02-20 20:59:56,063 INFO L732 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1] [2022-02-20 20:59:56,063 WARN L235 ceAbstractionStarter]: 2 thread instances were not sufficient, I will increase this number and restart the analysis [2022-02-20 20:59:56,063 INFO L534 ceAbstractionStarter]: Constructing petrified ICFG for 3 thread instances. [2022-02-20 20:59:56,085 WARN L322 ript$VariableManager]: TermVariabe |threadThread3of3ForFork0_#in~arg.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,085 WARN L322 ript$VariableManager]: TermVariabe |threadThread3of3ForFork0_#in~arg.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,085 WARN L322 ript$VariableManager]: TermVariabe threadThread3of3ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,085 WARN L322 ript$VariableManager]: TermVariabe threadThread3of3ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,085 WARN L322 ript$VariableManager]: TermVariabe |threadThread3of3ForFork0_#in~arg.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,085 WARN L322 ript$VariableManager]: TermVariabe |threadThread3of3ForFork0_#in~arg.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,085 WARN L322 ript$VariableManager]: TermVariabe threadThread3of3ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,085 WARN L322 ript$VariableManager]: TermVariabe threadThread3of3ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,086 WARN L322 ript$VariableManager]: TermVariabe threadThread3of3ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,086 WARN L322 ript$VariableManager]: TermVariabe threadThread3of3ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,086 WARN L322 ript$VariableManager]: TermVariabe threadThread3of3ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,086 WARN L322 ript$VariableManager]: TermVariabe threadThread3of3ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,086 WARN L322 ript$VariableManager]: TermVariabe threadThread3of3ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,086 WARN L322 ript$VariableManager]: TermVariabe threadThread3of3ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,086 WARN L322 ript$VariableManager]: TermVariabe threadThread3of3ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,086 WARN L322 ript$VariableManager]: TermVariabe threadThread3of3ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,087 WARN L322 ript$VariableManager]: TermVariabe |threadThread3of3ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,087 WARN L322 ript$VariableManager]: TermVariabe |threadThread3of3ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,087 WARN L322 ript$VariableManager]: TermVariabe |threadThread3of3ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,087 WARN L322 ript$VariableManager]: TermVariabe |threadThread3of3ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,087 WARN L322 ript$VariableManager]: TermVariabe |threadThread2of3ForFork0_#in~arg.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,087 WARN L322 ript$VariableManager]: TermVariabe |threadThread2of3ForFork0_#in~arg.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,087 WARN L322 ript$VariableManager]: TermVariabe threadThread2of3ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,087 WARN L322 ript$VariableManager]: TermVariabe threadThread2of3ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,088 WARN L322 ript$VariableManager]: TermVariabe |threadThread2of3ForFork0_#in~arg.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,088 WARN L322 ript$VariableManager]: TermVariabe |threadThread2of3ForFork0_#in~arg.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,088 WARN L322 ript$VariableManager]: TermVariabe threadThread2of3ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,088 WARN L322 ript$VariableManager]: TermVariabe threadThread2of3ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,088 WARN L322 ript$VariableManager]: TermVariabe threadThread2of3ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,088 WARN L322 ript$VariableManager]: TermVariabe threadThread2of3ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,088 WARN L322 ript$VariableManager]: TermVariabe threadThread2of3ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,089 WARN L322 ript$VariableManager]: TermVariabe threadThread2of3ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,089 WARN L322 ript$VariableManager]: TermVariabe threadThread2of3ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,089 WARN L322 ript$VariableManager]: TermVariabe threadThread2of3ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,089 WARN L322 ript$VariableManager]: TermVariabe threadThread2of3ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,089 WARN L322 ript$VariableManager]: TermVariabe threadThread2of3ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,089 WARN L322 ript$VariableManager]: TermVariabe |threadThread2of3ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,089 WARN L322 ript$VariableManager]: TermVariabe |threadThread2of3ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,090 WARN L322 ript$VariableManager]: TermVariabe |threadThread2of3ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,090 WARN L322 ript$VariableManager]: TermVariabe |threadThread2of3ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,090 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of3ForFork0_#in~arg.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,090 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of3ForFork0_#in~arg.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,090 WARN L322 ript$VariableManager]: TermVariabe threadThread1of3ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,090 WARN L322 ript$VariableManager]: TermVariabe threadThread1of3ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,090 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of3ForFork0_#in~arg.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,090 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of3ForFork0_#in~arg.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,091 WARN L322 ript$VariableManager]: TermVariabe threadThread1of3ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,091 WARN L322 ript$VariableManager]: TermVariabe threadThread1of3ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,091 WARN L322 ript$VariableManager]: TermVariabe threadThread1of3ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,091 WARN L322 ript$VariableManager]: TermVariabe threadThread1of3ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,091 WARN L322 ript$VariableManager]: TermVariabe threadThread1of3ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,091 WARN L322 ript$VariableManager]: TermVariabe threadThread1of3ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,091 WARN L322 ript$VariableManager]: TermVariabe threadThread1of3ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,092 WARN L322 ript$VariableManager]: TermVariabe threadThread1of3ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,092 WARN L322 ript$VariableManager]: TermVariabe threadThread1of3ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,092 WARN L322 ript$VariableManager]: TermVariabe threadThread1of3ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,092 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of3ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,092 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of3ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,093 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of3ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,093 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of3ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,093 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of3ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,093 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of3ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,094 WARN L322 ript$VariableManager]: TermVariabe threadThread1of3ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,094 WARN L322 ript$VariableManager]: TermVariabe threadThread1of3ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,094 WARN L322 ript$VariableManager]: TermVariabe threadThread1of3ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,094 WARN L322 ript$VariableManager]: TermVariabe threadThread2of3ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,094 WARN L322 ript$VariableManager]: TermVariabe |threadThread2of3ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,095 WARN L322 ript$VariableManager]: TermVariabe |threadThread2of3ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,095 WARN L322 ript$VariableManager]: TermVariabe threadThread2of3ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,095 WARN L322 ript$VariableManager]: TermVariabe threadThread2of3ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,096 WARN L322 ript$VariableManager]: TermVariabe threadThread3of3ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,097 WARN L322 ript$VariableManager]: TermVariabe |threadThread3of3ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,097 WARN L322 ript$VariableManager]: TermVariabe threadThread3of3ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,097 WARN L322 ript$VariableManager]: TermVariabe |threadThread3of3ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,097 WARN L322 ript$VariableManager]: TermVariabe threadThread3of3ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:56,105 INFO L148 ThreadInstanceAdder]: Constructed 3 joinOtherThreadTransitions. [2022-02-20 20:59:56,106 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 20:59:56,111 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:59:56,111 INFO L340 AbstractCegarLoop]: Starting to check reachability of 2 error locations. [2022-02-20 20:59:56,113 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 74 places, 73 transitions, 176 flow [2022-02-20 20:59:56,134 INFO L129 PetriNetUnfolder]: 24/222 cut-off events. [2022-02-20 20:59:56,134 INFO L130 PetriNetUnfolder]: For 19/19 co-relation queries the response was YES. [2022-02-20 20:59:56,135 INFO L84 FinitePrefix]: Finished finitePrefix Result has 250 conditions, 222 events. 24/222 cut-off events. For 19/19 co-relation queries the response was YES. Maximal size of possible extension queue 7. Compared 498 event pairs, 1 based on Foata normal form. 0/190 useless extension candidates. Maximal degree in co-relation 143. Up to 16 conditions per place. [2022-02-20 20:59:56,135 INFO L82 GeneralOperation]: Start removeDead. Operand has 74 places, 73 transitions, 176 flow [2022-02-20 20:59:56,136 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 58 places, 52 transitions, 125 flow [2022-02-20 20:59:56,138 INFO L129 PetriNetUnfolder]: 1/25 cut-off events. [2022-02-20 20:59:56,138 INFO L130 PetriNetUnfolder]: For 0/0 co-relation queries the response was YES. [2022-02-20 20:59:56,138 INFO L246 CegarLoopForPetriNet]: Found error trace [2022-02-20 20:59:56,138 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] [2022-02-20 20:59:56,138 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATION] === [2022-02-20 20:59:56,139 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:59:56,139 INFO L85 PathProgramCache]: Analyzing trace with hash 898626907, now seen corresponding path program 1 times [2022-02-20 20:59:56,139 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:59:56,140 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1959929624] [2022-02-20 20:59:56,140 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:59:56,140 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:59:56,151 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:59:56,160 INFO L290 TraceCheckUtils]: 0: Hoare triple {77#true} [265] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {77#true} is VALID [2022-02-20 20:59:56,161 INFO L290 TraceCheckUtils]: 1: Hoare triple {77#true} [255] 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] {77#true} is VALID [2022-02-20 20:59:56,162 INFO L290 TraceCheckUtils]: 2: Hoare triple {77#true} [272] 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[] {77#true} is VALID [2022-02-20 20:59:56,164 INFO L290 TraceCheckUtils]: 3: Hoare triple {77#true} [273] L-1-2-->L16: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {77#true} is VALID [2022-02-20 20:59:56,165 INFO L290 TraceCheckUtils]: 4: Hoare triple {77#true} [254] L16-->L16-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[] {77#true} is VALID [2022-02-20 20:59:56,166 INFO L290 TraceCheckUtils]: 5: Hoare triple {77#true} [222] L16-1-->L16-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[] {77#true} is VALID [2022-02-20 20:59:56,166 INFO L290 TraceCheckUtils]: 6: Hoare triple {77#true} [277] L16-2-->L16-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[] {77#true} is VALID [2022-02-20 20:59:56,166 INFO L290 TraceCheckUtils]: 7: Hoare triple {77#true} [259] L16-3-->L16-4: Formula: (and (= (select |v_#valid_3| 2) 1) (= (select |v_#length_2| 2) 1)) InVars {#length=|v_#length_2|, #valid=|v_#valid_3|} OutVars{#length=|v_#length_2|, #valid=|v_#valid_3|} AuxVars[] AssignedVars[] {77#true} is VALID [2022-02-20 20:59:56,167 INFO L290 TraceCheckUtils]: 8: Hoare triple {77#true} [262] L16-4-->L16-5: Formula: (= (select (select |v_#memory_int_3| 2) 0) 0) InVars {#memory_int=|v_#memory_int_3|} OutVars{#memory_int=|v_#memory_int_3|} AuxVars[] AssignedVars[] {77#true} is VALID [2022-02-20 20:59:56,169 INFO L290 TraceCheckUtils]: 9: Hoare triple {77#true} [252] L16-5-->L-1-3: Formula: (= v_~x~0_1 0) InVars {} OutVars{~x~0=v_~x~0_1} AuxVars[] AssignedVars[~x~0] {77#true} is VALID [2022-02-20 20:59:56,169 INFO L290 TraceCheckUtils]: 10: Hoare triple {77#true} [274] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {77#true} is VALID [2022-02-20 20:59:56,169 INFO L290 TraceCheckUtils]: 11: Hoare triple {77#true} [257] L-1-4-->L-1-5: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {77#true} is VALID [2022-02-20 20:59:56,172 INFO L290 TraceCheckUtils]: 12: Hoare triple {77#true} [236] L-1-5-->L-1-6: Formula: (and (= |v_ULTIMATE.start_#in~argv#1.offset_1| |v_ULTIMATE.start_main_#in~argv#1.offset_1|) (= |v_ULTIMATE.start_main_#in~argv#1.base_1| |v_ULTIMATE.start_#in~argv#1.base_1|) (= |v_ULTIMATE.start_main_#in~argc#1_1| |v_ULTIMATE.start_#in~argc#1_1|)) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} OutVars{ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_1|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_1|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_#in~argv#1.offset] {77#true} is VALID [2022-02-20 20:59:56,172 INFO L290 TraceCheckUtils]: 13: Hoare triple {77#true} [256] L-1-6-->L-1-7: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1] {77#true} is VALID [2022-02-20 20:59:56,172 INFO L290 TraceCheckUtils]: 14: Hoare triple {77#true} [232] L-1-7-->L718: Formula: true InVars {} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_1|, ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_1|, ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_1|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_1|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_1|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_1|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_1|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_1|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_1|, ULTIMATE.start_main_#t~mem5#1=|v_ULTIMATE.start_main_#t~mem5#1_1|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~1#1, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1, ULTIMATE.start_main_~#t~0#1.offset, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_#t~mem5#1, ULTIMATE.start_main_~#t~0#1.base, ULTIMATE.start_main_#t~pre2#1] {77#true} is VALID [2022-02-20 20:59:56,172 INFO L290 TraceCheckUtils]: 15: Hoare triple {77#true} [241] L718-->L718-1: Formula: (= |v_ULTIMATE.start_main_#in~argc#1_2| |v_ULTIMATE.start_main_~argc#1_2|) InVars {ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_2|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1] {77#true} is VALID [2022-02-20 20:59:56,172 INFO L290 TraceCheckUtils]: 16: Hoare triple {77#true} [278] L718-1-->L719: Formula: (and (= |v_ULTIMATE.start_main_~argv#1.offset_2| |v_ULTIMATE.start_main_#in~argv#1.offset_2|) (= |v_ULTIMATE.start_main_#in~argv#1.base_2| |v_ULTIMATE.start_main_~argv#1.base_2|)) InVars {ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|} OutVars{ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~argv#1.offset] {77#true} is VALID [2022-02-20 20:59:56,172 INFO L290 TraceCheckUtils]: 17: Hoare triple {77#true} [224] L719-->L719-1: Formula: (and (not (= |v_ULTIMATE.start_main_~#t~0#1.base_2| 0)) (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#t~0#1.base_2|) (= (store |v_#length_4| |v_ULTIMATE.start_main_~#t~0#1.base_2| 44) |v_#length_3|) (= |v_ULTIMATE.start_main_~#t~0#1.offset_2| 0) (= |v_#valid_4| (store |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2| 1)) (= (select |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_4|, #valid=|v_#valid_5|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_3|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_2|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_2|, #valid=|v_#valid_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#t~0#1.offset, #valid, #length, ULTIMATE.start_main_~#t~0#1.base] {77#true} is VALID [2022-02-20 20:59:56,173 INFO L290 TraceCheckUtils]: 18: Hoare triple {77#true} [263] L719-1-->L722: Formula: (= v_~x~0_2 0) InVars {} OutVars{~x~0=v_~x~0_2} AuxVars[] AssignedVars[~x~0] {77#true} is VALID [2022-02-20 20:59:56,174 INFO L290 TraceCheckUtils]: 19: Hoare triple {77#true} [275] L722-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_2| 1) InVars {} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {77#true} is VALID [2022-02-20 20:59:56,176 INFO L290 TraceCheckUtils]: 20: Hoare triple {77#true} [242] L723-5-->L723-6: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {78#false} is VALID [2022-02-20 20:59:56,176 INFO L290 TraceCheckUtils]: 21: Hoare triple {78#false} [227] L723-6-->L727: Formula: (not (< v_~x~0_4 11)) InVars {~x~0=v_~x~0_4} OutVars{~x~0=v_~x~0_4} AuxVars[] AssignedVars[] {78#false} is VALID [2022-02-20 20:59:56,176 INFO L290 TraceCheckUtils]: 22: Hoare triple {78#false} [234] L727-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {78#false} is VALID [2022-02-20 20:59:56,178 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:59:56,178 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 20:59:56,178 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1959929624] [2022-02-20 20:59:56,178 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1959929624] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 20:59:56,178 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 20:59:56,178 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 20:59:56,179 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1098050818] [2022-02-20 20:59:56,179 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 20:59:56,179 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 11.5) internal successors, (23), 2 states have internal predecessors, (23), 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 23 [2022-02-20 20:59:56,179 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 20:59:56,179 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 2 states, 2 states have (on average 11.5) internal successors, (23), 2 states have internal predecessors, (23), 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:59:56,195 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 23 edges. 23 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:59:56,196 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-02-20 20:59:56,196 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 20:59:56,196 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-02-20 20:59:56,196 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 20:59:56,197 INFO L499 CegarLoopForPetriNet]: Number of universal loopers: 63 out of 73 [2022-02-20 20:59:56,197 INFO L92 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 58 places, 52 transitions, 125 flow. Second operand has 2 states, 2 states have (on average 63.5) internal successors, (127), 2 states have internal predecessors, (127), 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:59:56,197 INFO L101 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-02-20 20:59:56,198 INFO L102 encePairwiseOnDemand]: Number of universal subtrahend loopers: 63 of 73 [2022-02-20 20:59:56,198 INFO L74 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-02-20 20:59:56,212 INFO L129 PetriNetUnfolder]: 0/82 cut-off events. [2022-02-20 20:59:56,212 INFO L130 PetriNetUnfolder]: For 13/13 co-relation queries the response was YES. [2022-02-20 20:59:56,212 INFO L84 FinitePrefix]: Finished finitePrefix Result has 102 conditions, 82 events. 0/82 cut-off events. For 13/13 co-relation queries the response was YES. Maximal size of possible extension queue 3. Compared 53 event pairs, 0 based on Foata normal form. 4/82 useless extension candidates. Maximal degree in co-relation 0. Up to 4 conditions per place. [2022-02-20 20:59:56,213 INFO L132 encePairwiseOnDemand]: 72/73 looper letters, 3 selfloop transitions, 0 changer transitions 0/51 dead transitions. [2022-02-20 20:59:56,213 INFO L138 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 59 places, 51 transitions, 129 flow [2022-02-20 20:59:56,213 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-02-20 20:59:56,213 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2022-02-20 20:59:56,215 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 130 transitions. [2022-02-20 20:59:56,215 INFO L544 CegarLoopForPetriNet]: DFA transition density 0.8904109589041096 [2022-02-20 20:59:56,215 INFO L72 ComplementDD]: Start complementDD. Operand 2 states and 130 transitions. [2022-02-20 20:59:56,215 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2 states and 130 transitions. [2022-02-20 20:59:56,215 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-02-20 20:59:56,215 INFO L117 ReachableStatesCopy]: Start reachableStatesCopy. Operand 2 states and 130 transitions. [2022-02-20 20:59:56,216 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends has 3 states, 2 states have (on average 65.0) internal successors, (130), 2 states have internal predecessors, (130), 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:59:56,216 INFO L131 ReachableStatesCopy]: Finished reachableStatesCopy Result has 3 states, 3 states have (on average 73.0) internal successors, (219), 3 states have internal predecessors, (219), 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:59:56,217 INFO L81 ComplementDD]: Finished complementDD. Result has 3 states, 3 states have (on average 73.0) internal successors, (219), 3 states have internal predecessors, (219), 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:59:56,217 INFO L186 Difference]: Start difference. First operand has 58 places, 52 transitions, 125 flow. Second operand 2 states and 130 transitions. [2022-02-20 20:59:56,217 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 59 places, 51 transitions, 129 flow [2022-02-20 20:59:56,218 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 59 places, 51 transitions, 123 flow, removed 3 selfloop flow, removed 0 redundant places. [2022-02-20 20:59:56,219 INFO L242 Difference]: Finished difference. Result has 59 places, 51 transitions, 117 flow [2022-02-20 20:59:56,219 INFO L317 CegarLoopForPetriNet]: {PETRI_ALPHABET=73, PETRI_DIFFERENCE_MINUEND_FLOW=117, PETRI_DIFFERENCE_MINUEND_PLACES=58, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=51, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=0, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=51, PETRI_DIFFERENCE_SUBTRAHEND_STATES=2, PETRI_FLOW=117, PETRI_PLACES=59, PETRI_TRANSITIONS=51} [2022-02-20 20:59:56,220 INFO L334 CegarLoopForPetriNet]: 58 programPoint places, 1 predicate places. [2022-02-20 20:59:56,220 INFO L111 iNet2FiniteAutomaton]: Start petriNet2FiniteAutomaton. Operand has 59 places, 51 transitions, 117 flow [2022-02-20 20:59:56,325 INFO L133 iNet2FiniteAutomaton]: Finished petriNet2FiniteAutomaton. Result has 3598 states, 3593 states have (on average 3.2805455051489005) internal successors, (11787), 3597 states have internal predecessors, (11787), 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:59:56,341 INFO L78 Accepts]: Start accepts. Automaton has has 3598 states, 3593 states have (on average 3.2805455051489005) internal successors, (11787), 3597 states have internal predecessors, (11787), 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 23 [2022-02-20 20:59:56,343 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 20:59:56,343 INFO L470 AbstractCegarLoop]: Abstraction has has 59 places, 51 transitions, 117 flow [2022-02-20 20:59:56,343 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 63.5) internal successors, (127), 2 states have internal predecessors, (127), 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:59:56,343 INFO L246 CegarLoopForPetriNet]: Found error trace [2022-02-20 20:59:56,344 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] [2022-02-20 20:59:56,344 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8 [2022-02-20 20:59:56,344 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATION] === [2022-02-20 20:59:56,345 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:59:56,345 INFO L85 PathProgramCache]: Analyzing trace with hash 898627868, now seen corresponding path program 1 times [2022-02-20 20:59:56,345 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:59:56,346 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1970513102] [2022-02-20 20:59:56,346 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:59:56,346 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:59:56,356 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:59:56,373 INFO L290 TraceCheckUtils]: 0: Hoare triple {3679#true} [265] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3679#true} is VALID [2022-02-20 20:59:56,373 INFO L290 TraceCheckUtils]: 1: Hoare triple {3679#true} [255] 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] {3679#true} is VALID [2022-02-20 20:59:56,373 INFO L290 TraceCheckUtils]: 2: Hoare triple {3679#true} [272] 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[] {3679#true} is VALID [2022-02-20 20:59:56,374 INFO L290 TraceCheckUtils]: 3: Hoare triple {3679#true} [273] L-1-2-->L16: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {3679#true} is VALID [2022-02-20 20:59:56,374 INFO L290 TraceCheckUtils]: 4: Hoare triple {3679#true} [254] L16-->L16-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[] {3679#true} is VALID [2022-02-20 20:59:56,374 INFO L290 TraceCheckUtils]: 5: Hoare triple {3679#true} [222] L16-1-->L16-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[] {3679#true} is VALID [2022-02-20 20:59:56,374 INFO L290 TraceCheckUtils]: 6: Hoare triple {3679#true} [277] L16-2-->L16-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[] {3679#true} is VALID [2022-02-20 20:59:56,374 INFO L290 TraceCheckUtils]: 7: Hoare triple {3679#true} [259] L16-3-->L16-4: Formula: (and (= (select |v_#valid_3| 2) 1) (= (select |v_#length_2| 2) 1)) InVars {#length=|v_#length_2|, #valid=|v_#valid_3|} OutVars{#length=|v_#length_2|, #valid=|v_#valid_3|} AuxVars[] AssignedVars[] {3679#true} is VALID [2022-02-20 20:59:56,374 INFO L290 TraceCheckUtils]: 8: Hoare triple {3679#true} [262] L16-4-->L16-5: Formula: (= (select (select |v_#memory_int_3| 2) 0) 0) InVars {#memory_int=|v_#memory_int_3|} OutVars{#memory_int=|v_#memory_int_3|} AuxVars[] AssignedVars[] {3679#true} is VALID [2022-02-20 20:59:56,375 INFO L290 TraceCheckUtils]: 9: Hoare triple {3679#true} [252] L16-5-->L-1-3: Formula: (= v_~x~0_1 0) InVars {} OutVars{~x~0=v_~x~0_1} AuxVars[] AssignedVars[~x~0] {3679#true} is VALID [2022-02-20 20:59:56,375 INFO L290 TraceCheckUtils]: 10: Hoare triple {3679#true} [274] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3679#true} is VALID [2022-02-20 20:59:56,375 INFO L290 TraceCheckUtils]: 11: Hoare triple {3679#true} [257] L-1-4-->L-1-5: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3679#true} is VALID [2022-02-20 20:59:56,375 INFO L290 TraceCheckUtils]: 12: Hoare triple {3679#true} [236] L-1-5-->L-1-6: Formula: (and (= |v_ULTIMATE.start_#in~argv#1.offset_1| |v_ULTIMATE.start_main_#in~argv#1.offset_1|) (= |v_ULTIMATE.start_main_#in~argv#1.base_1| |v_ULTIMATE.start_#in~argv#1.base_1|) (= |v_ULTIMATE.start_main_#in~argc#1_1| |v_ULTIMATE.start_#in~argc#1_1|)) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} OutVars{ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_1|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_1|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_#in~argv#1.offset] {3679#true} is VALID [2022-02-20 20:59:56,375 INFO L290 TraceCheckUtils]: 13: Hoare triple {3679#true} [256] L-1-6-->L-1-7: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1] {3679#true} is VALID [2022-02-20 20:59:56,376 INFO L290 TraceCheckUtils]: 14: Hoare triple {3679#true} [232] L-1-7-->L718: Formula: true InVars {} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_1|, ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_1|, ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_1|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_1|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_1|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_1|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_1|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_1|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_1|, ULTIMATE.start_main_#t~mem5#1=|v_ULTIMATE.start_main_#t~mem5#1_1|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~1#1, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1, ULTIMATE.start_main_~#t~0#1.offset, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_#t~mem5#1, ULTIMATE.start_main_~#t~0#1.base, ULTIMATE.start_main_#t~pre2#1] {3679#true} is VALID [2022-02-20 20:59:56,376 INFO L290 TraceCheckUtils]: 15: Hoare triple {3679#true} [241] L718-->L718-1: Formula: (= |v_ULTIMATE.start_main_#in~argc#1_2| |v_ULTIMATE.start_main_~argc#1_2|) InVars {ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_2|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1] {3679#true} is VALID [2022-02-20 20:59:56,376 INFO L290 TraceCheckUtils]: 16: Hoare triple {3679#true} [278] L718-1-->L719: Formula: (and (= |v_ULTIMATE.start_main_~argv#1.offset_2| |v_ULTIMATE.start_main_#in~argv#1.offset_2|) (= |v_ULTIMATE.start_main_#in~argv#1.base_2| |v_ULTIMATE.start_main_~argv#1.base_2|)) InVars {ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|} OutVars{ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~argv#1.offset] {3679#true} is VALID [2022-02-20 20:59:56,376 INFO L290 TraceCheckUtils]: 17: Hoare triple {3679#true} [224] L719-->L719-1: Formula: (and (not (= |v_ULTIMATE.start_main_~#t~0#1.base_2| 0)) (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#t~0#1.base_2|) (= (store |v_#length_4| |v_ULTIMATE.start_main_~#t~0#1.base_2| 44) |v_#length_3|) (= |v_ULTIMATE.start_main_~#t~0#1.offset_2| 0) (= |v_#valid_4| (store |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2| 1)) (= (select |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_4|, #valid=|v_#valid_5|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_3|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_2|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_2|, #valid=|v_#valid_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#t~0#1.offset, #valid, #length, ULTIMATE.start_main_~#t~0#1.base] {3679#true} is VALID [2022-02-20 20:59:56,376 INFO L290 TraceCheckUtils]: 18: Hoare triple {3679#true} [263] L719-1-->L722: Formula: (= v_~x~0_2 0) InVars {} OutVars{~x~0=v_~x~0_2} AuxVars[] AssignedVars[~x~0] {3679#true} is VALID [2022-02-20 20:59:56,377 INFO L290 TraceCheckUtils]: 19: Hoare triple {3679#true} [275] L722-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_2| 1) InVars {} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {3681#(= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 20:59:56,377 INFO L290 TraceCheckUtils]: 20: Hoare triple {3681#(= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} [243] L723-5-->L723-6: Formula: (not (<= |v_ULTIMATE.start_main_~i~0#1_3| 10)) 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[] {3680#false} is VALID [2022-02-20 20:59:56,377 INFO L290 TraceCheckUtils]: 21: Hoare triple {3680#false} [227] L723-6-->L727: Formula: (not (< v_~x~0_4 11)) InVars {~x~0=v_~x~0_4} OutVars{~x~0=v_~x~0_4} AuxVars[] AssignedVars[] {3680#false} is VALID [2022-02-20 20:59:56,378 INFO L290 TraceCheckUtils]: 22: Hoare triple {3680#false} [234] L727-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3680#false} is VALID [2022-02-20 20:59:56,378 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:59:56,378 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 20:59:56,378 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1970513102] [2022-02-20 20:59:56,378 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1970513102] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 20:59:56,379 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 20:59:56,379 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 20:59:56,379 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [698840495] [2022-02-20 20:59:56,379 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 20:59:56,379 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 7.666666666666667) internal successors, (23), 3 states have internal predecessors, (23), 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 23 [2022-02-20 20:59:56,380 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 20:59:56,380 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 7.666666666666667) internal successors, (23), 3 states have internal predecessors, (23), 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:59:56,396 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 23 edges. 23 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:59:56,396 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 20:59:56,396 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 20:59:56,397 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 20:59:56,397 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 20:59:56,397 INFO L499 CegarLoopForPetriNet]: Number of universal loopers: 56 out of 73 [2022-02-20 20:59:56,398 INFO L92 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 59 places, 51 transitions, 117 flow. Second operand has 3 states, 3 states have (on average 57.0) internal successors, (171), 3 states have internal predecessors, (171), 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:59:56,398 INFO L101 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-02-20 20:59:56,398 INFO L102 encePairwiseOnDemand]: Number of universal subtrahend loopers: 56 of 73 [2022-02-20 20:59:56,398 INFO L74 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-02-20 20:59:56,428 INFO L129 PetriNetUnfolder]: 0/79 cut-off events. [2022-02-20 20:59:56,428 INFO L130 PetriNetUnfolder]: For 2/2 co-relation queries the response was YES. [2022-02-20 20:59:56,428 INFO L84 FinitePrefix]: Finished finitePrefix Result has 116 conditions, 79 events. 0/79 cut-off events. For 2/2 co-relation queries the response was YES. Maximal size of possible extension queue 3. Compared 51 event pairs, 0 based on Foata normal form. 0/76 useless extension candidates. Maximal degree in co-relation 0. Up to 18 conditions per place. [2022-02-20 20:59:56,428 INFO L132 encePairwiseOnDemand]: 70/73 looper letters, 12 selfloop transitions, 2 changer transitions 0/55 dead transitions. [2022-02-20 20:59:56,428 INFO L138 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 61 places, 55 transitions, 153 flow [2022-02-20 20:59:56,429 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 20:59:56,429 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2022-02-20 20:59:56,431 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 183 transitions. [2022-02-20 20:59:56,431 INFO L544 CegarLoopForPetriNet]: DFA transition density 0.8356164383561644 [2022-02-20 20:59:56,431 INFO L72 ComplementDD]: Start complementDD. Operand 3 states and 183 transitions. [2022-02-20 20:59:56,431 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3 states and 183 transitions. [2022-02-20 20:59:56,432 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-02-20 20:59:56,432 INFO L117 ReachableStatesCopy]: Start reachableStatesCopy. Operand 3 states and 183 transitions. [2022-02-20 20:59:56,432 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends has 4 states, 3 states have (on average 61.0) internal successors, (183), 3 states have internal predecessors, (183), 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:59:56,433 INFO L131 ReachableStatesCopy]: Finished reachableStatesCopy Result has 4 states, 4 states have (on average 73.0) internal successors, (292), 4 states have internal predecessors, (292), 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:59:56,433 INFO L81 ComplementDD]: Finished complementDD. Result has 4 states, 4 states have (on average 73.0) internal successors, (292), 4 states have internal predecessors, (292), 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:59:56,433 INFO L186 Difference]: Start difference. First operand has 59 places, 51 transitions, 117 flow. Second operand 3 states and 183 transitions. [2022-02-20 20:59:56,434 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 61 places, 55 transitions, 153 flow [2022-02-20 20:59:56,435 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 61 places, 55 transitions, 153 flow, removed 0 selfloop flow, removed 0 redundant places. [2022-02-20 20:59:56,436 INFO L242 Difference]: Finished difference. Result has 62 places, 52 transitions, 129 flow [2022-02-20 20:59:56,436 INFO L317 CegarLoopForPetriNet]: {PETRI_ALPHABET=73, PETRI_DIFFERENCE_MINUEND_FLOW=117, PETRI_DIFFERENCE_MINUEND_PLACES=59, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=51, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=49, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=129, PETRI_PLACES=62, PETRI_TRANSITIONS=52} [2022-02-20 20:59:56,437 INFO L334 CegarLoopForPetriNet]: 58 programPoint places, 4 predicate places. [2022-02-20 20:59:56,437 INFO L111 iNet2FiniteAutomaton]: Start petriNet2FiniteAutomaton. Operand has 62 places, 52 transitions, 129 flow [2022-02-20 20:59:56,528 INFO L133 iNet2FiniteAutomaton]: Finished petriNet2FiniteAutomaton. Result has 3595 states, 3591 states have (on average 3.281537176274018) internal successors, (11784), 3594 states have internal predecessors, (11784), 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:59:56,541 INFO L78 Accepts]: Start accepts. Automaton has has 3595 states, 3591 states have (on average 3.281537176274018) internal successors, (11784), 3594 states have internal predecessors, (11784), 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 23 [2022-02-20 20:59:56,542 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 20:59:56,542 INFO L470 AbstractCegarLoop]: Abstraction has has 62 places, 52 transitions, 129 flow [2022-02-20 20:59:56,542 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 57.0) internal successors, (171), 3 states have internal predecessors, (171), 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:59:56,542 INFO L246 CegarLoopForPetriNet]: Found error trace [2022-02-20 20:59:56,542 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] [2022-02-20 20:59:56,543 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable9 [2022-02-20 20:59:56,543 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATION] === [2022-02-20 20:59:56,543 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:59:56,543 INFO L85 PathProgramCache]: Analyzing trace with hash 1823512938, now seen corresponding path program 1 times [2022-02-20 20:59:56,543 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:59:56,544 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1524055759] [2022-02-20 20:59:56,544 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:59:56,544 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:59:56,553 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:59:56,568 INFO L290 TraceCheckUtils]: 0: Hoare triple {7280#true} [265] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7280#true} is VALID [2022-02-20 20:59:56,569 INFO L290 TraceCheckUtils]: 1: Hoare triple {7280#true} [255] 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] {7280#true} is VALID [2022-02-20 20:59:56,569 INFO L290 TraceCheckUtils]: 2: Hoare triple {7280#true} [272] 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[] {7280#true} is VALID [2022-02-20 20:59:56,569 INFO L290 TraceCheckUtils]: 3: Hoare triple {7280#true} [273] L-1-2-->L16: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {7280#true} is VALID [2022-02-20 20:59:56,569 INFO L290 TraceCheckUtils]: 4: Hoare triple {7280#true} [254] L16-->L16-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[] {7280#true} is VALID [2022-02-20 20:59:56,569 INFO L290 TraceCheckUtils]: 5: Hoare triple {7280#true} [222] L16-1-->L16-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[] {7280#true} is VALID [2022-02-20 20:59:56,570 INFO L290 TraceCheckUtils]: 6: Hoare triple {7280#true} [277] L16-2-->L16-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[] {7280#true} is VALID [2022-02-20 20:59:56,570 INFO L290 TraceCheckUtils]: 7: Hoare triple {7280#true} [259] L16-3-->L16-4: Formula: (and (= (select |v_#valid_3| 2) 1) (= (select |v_#length_2| 2) 1)) InVars {#length=|v_#length_2|, #valid=|v_#valid_3|} OutVars{#length=|v_#length_2|, #valid=|v_#valid_3|} AuxVars[] AssignedVars[] {7280#true} is VALID [2022-02-20 20:59:56,570 INFO L290 TraceCheckUtils]: 8: Hoare triple {7280#true} [262] L16-4-->L16-5: Formula: (= (select (select |v_#memory_int_3| 2) 0) 0) InVars {#memory_int=|v_#memory_int_3|} OutVars{#memory_int=|v_#memory_int_3|} AuxVars[] AssignedVars[] {7280#true} is VALID [2022-02-20 20:59:56,570 INFO L290 TraceCheckUtils]: 9: Hoare triple {7280#true} [252] L16-5-->L-1-3: Formula: (= v_~x~0_1 0) InVars {} OutVars{~x~0=v_~x~0_1} AuxVars[] AssignedVars[~x~0] {7280#true} is VALID [2022-02-20 20:59:56,570 INFO L290 TraceCheckUtils]: 10: Hoare triple {7280#true} [274] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7280#true} is VALID [2022-02-20 20:59:56,570 INFO L290 TraceCheckUtils]: 11: Hoare triple {7280#true} [257] L-1-4-->L-1-5: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7280#true} is VALID [2022-02-20 20:59:56,571 INFO L290 TraceCheckUtils]: 12: Hoare triple {7280#true} [236] L-1-5-->L-1-6: Formula: (and (= |v_ULTIMATE.start_#in~argv#1.offset_1| |v_ULTIMATE.start_main_#in~argv#1.offset_1|) (= |v_ULTIMATE.start_main_#in~argv#1.base_1| |v_ULTIMATE.start_#in~argv#1.base_1|) (= |v_ULTIMATE.start_main_#in~argc#1_1| |v_ULTIMATE.start_#in~argc#1_1|)) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} OutVars{ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_1|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_1|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_#in~argv#1.offset] {7280#true} is VALID [2022-02-20 20:59:56,571 INFO L290 TraceCheckUtils]: 13: Hoare triple {7280#true} [256] L-1-6-->L-1-7: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1] {7280#true} is VALID [2022-02-20 20:59:56,571 INFO L290 TraceCheckUtils]: 14: Hoare triple {7280#true} [232] L-1-7-->L718: Formula: true InVars {} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_1|, ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_1|, ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_1|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_1|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_1|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_1|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_1|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_1|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_1|, ULTIMATE.start_main_#t~mem5#1=|v_ULTIMATE.start_main_#t~mem5#1_1|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~1#1, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1, ULTIMATE.start_main_~#t~0#1.offset, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_#t~mem5#1, ULTIMATE.start_main_~#t~0#1.base, ULTIMATE.start_main_#t~pre2#1] {7280#true} is VALID [2022-02-20 20:59:56,571 INFO L290 TraceCheckUtils]: 15: Hoare triple {7280#true} [241] L718-->L718-1: Formula: (= |v_ULTIMATE.start_main_#in~argc#1_2| |v_ULTIMATE.start_main_~argc#1_2|) InVars {ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_2|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1] {7280#true} is VALID [2022-02-20 20:59:56,571 INFO L290 TraceCheckUtils]: 16: Hoare triple {7280#true} [278] L718-1-->L719: Formula: (and (= |v_ULTIMATE.start_main_~argv#1.offset_2| |v_ULTIMATE.start_main_#in~argv#1.offset_2|) (= |v_ULTIMATE.start_main_#in~argv#1.base_2| |v_ULTIMATE.start_main_~argv#1.base_2|)) InVars {ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|} OutVars{ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~argv#1.offset] {7280#true} is VALID [2022-02-20 20:59:56,572 INFO L290 TraceCheckUtils]: 17: Hoare triple {7280#true} [224] L719-->L719-1: Formula: (and (not (= |v_ULTIMATE.start_main_~#t~0#1.base_2| 0)) (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#t~0#1.base_2|) (= (store |v_#length_4| |v_ULTIMATE.start_main_~#t~0#1.base_2| 44) |v_#length_3|) (= |v_ULTIMATE.start_main_~#t~0#1.offset_2| 0) (= |v_#valid_4| (store |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2| 1)) (= (select |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_4|, #valid=|v_#valid_5|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_3|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_2|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_2|, #valid=|v_#valid_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#t~0#1.offset, #valid, #length, ULTIMATE.start_main_~#t~0#1.base] {7280#true} is VALID [2022-02-20 20:59:56,572 INFO L290 TraceCheckUtils]: 18: Hoare triple {7280#true} [263] L719-1-->L722: Formula: (= v_~x~0_2 0) InVars {} OutVars{~x~0=v_~x~0_2} AuxVars[] AssignedVars[~x~0] {7282#(= ~x~0 0)} is VALID [2022-02-20 20:59:56,572 INFO L290 TraceCheckUtils]: 19: Hoare triple {7282#(= ~x~0 0)} [275] L722-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_2| 1) InVars {} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {7282#(= ~x~0 0)} is VALID [2022-02-20 20:59:56,573 INFO L290 TraceCheckUtils]: 20: Hoare triple {7282#(= ~x~0 0)} [244] L723-5-->L724: Formula: (<= |v_ULTIMATE.start_main_~i~0#1_4| 10) 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[] {7282#(= ~x~0 0)} is VALID [2022-02-20 20:59:56,573 INFO L290 TraceCheckUtils]: 21: Hoare triple {7282#(= ~x~0 0)} [240] L724-->L724-1: Formula: (= |v_ULTIMATE.start_main_#t~pre2#1_2| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {7282#(= ~x~0 0)} is VALID [2022-02-20 20:59:56,574 INFO L290 TraceCheckUtils]: 22: Hoare triple {7282#(= ~x~0 0)} [266] L724-1-->L724-2: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] {7282#(= ~x~0 0)} is VALID [2022-02-20 20:59:56,574 INFO L290 TraceCheckUtils]: 23: Hoare triple {7282#(= ~x~0 0)} [231] L724-2-->L724-3: Formula: (= (store |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3| (store (select |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3|) (+ |v_ULTIMATE.start_main_~#t~0#1.offset_3| (* |v_ULTIMATE.start_main_~i~0#1_5| 4)) |v_ULTIMATE.start_main_#t~pre2#1_3|)) |v_#memory_int_4|) InVars {#memory_int=|v_#memory_int_5|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} OutVars{#memory_int=|v_#memory_int_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} AuxVars[] AssignedVars[#memory_int] {7282#(= ~x~0 0)} is VALID [2022-02-20 20:59:56,574 INFO L290 TraceCheckUtils]: 24: Hoare triple {7282#(= ~x~0 0)} [296] L724-3-->threadENTRY: Formula: (and (= |v_ULTIMATE.start_main_~i~0#1_17| |v_threadThread1of3ForFork0_#in~arg.offset_4|) (= v_threadThread1of3ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre2#1_14|) (= |v_threadThread1of3ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_17|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_14|} OutVars{threadThread1of3ForFork0_#res.base=|v_threadThread1of3ForFork0_#res.base_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_17|, threadThread1of3ForFork0_#in~arg.base=|v_threadThread1of3ForFork0_#in~arg.base_4|, threadThread1of3ForFork0_#res.offset=|v_threadThread1of3ForFork0_#res.offset_4|, threadThread1of3ForFork0_~thread~0=v_threadThread1of3ForFork0_~thread~0_6, threadThread1of3ForFork0_thidvar0=v_threadThread1of3ForFork0_thidvar0_2, threadThread1of3ForFork0_#in~arg.offset=|v_threadThread1of3ForFork0_#in~arg.offset_4|, threadThread1of3ForFork0_~arg.base=v_threadThread1of3ForFork0_~arg.base_6, threadThread1of3ForFork0_~arg.offset=v_threadThread1of3ForFork0_~arg.offset_6, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_14|} AuxVars[] AssignedVars[threadThread1of3ForFork0_#res.base, threadThread1of3ForFork0_#in~arg.base, threadThread1of3ForFork0_#res.offset, threadThread1of3ForFork0_~thread~0, threadThread1of3ForFork0_thidvar0, threadThread1of3ForFork0_#in~arg.offset, threadThread1of3ForFork0_~arg.base, threadThread1of3ForFork0_~arg.offset] {7282#(= ~x~0 0)} is VALID [2022-02-20 20:59:56,575 INFO L290 TraceCheckUtils]: 25: Hoare triple {7282#(= ~x~0 0)} [276] L724-4-->L724-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {7282#(= ~x~0 0)} is VALID [2022-02-20 20:59:56,575 INFO L290 TraceCheckUtils]: 26: Hoare triple {7282#(= ~x~0 0)} [229] L724-5-->L723-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet3#1] {7282#(= ~x~0 0)} is VALID [2022-02-20 20:59:56,576 INFO L290 TraceCheckUtils]: 27: Hoare triple {7282#(= ~x~0 0)} [258] L723-2-->L723-3: Formula: (= |v_ULTIMATE.start_main_#t~post1#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_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_2|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {7282#(= ~x~0 0)} is VALID [2022-02-20 20:59:56,576 INFO L290 TraceCheckUtils]: 28: Hoare triple {7282#(= ~x~0 0)} [237] L723-3-->L723-4: Formula: (= (+ |v_ULTIMATE.start_main_#t~post1#1_3| 1) |v_ULTIMATE.start_main_~i~0#1_7|) InVars {ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_7|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {7282#(= ~x~0 0)} is VALID [2022-02-20 20:59:56,576 INFO L290 TraceCheckUtils]: 29: Hoare triple {7282#(= ~x~0 0)} [253] L723-4-->L723-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {7282#(= ~x~0 0)} is VALID [2022-02-20 20:59:56,577 INFO L290 TraceCheckUtils]: 30: Hoare triple {7282#(= ~x~0 0)} [243] L723-5-->L723-6: Formula: (not (<= |v_ULTIMATE.start_main_~i~0#1_3| 10)) 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[] {7282#(= ~x~0 0)} is VALID [2022-02-20 20:59:56,577 INFO L290 TraceCheckUtils]: 31: Hoare triple {7282#(= ~x~0 0)} [227] L723-6-->L727: Formula: (not (< v_~x~0_4 11)) InVars {~x~0=v_~x~0_4} OutVars{~x~0=v_~x~0_4} AuxVars[] AssignedVars[] {7281#false} is VALID [2022-02-20 20:59:56,578 INFO L290 TraceCheckUtils]: 32: Hoare triple {7281#false} [234] L727-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7281#false} is VALID [2022-02-20 20:59:56,578 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 20:59:56,578 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 20:59:56,578 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1524055759] [2022-02-20 20:59:56,578 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1524055759] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 20:59:56,578 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 20:59:56,579 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 20:59:56,579 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [817921397] [2022-02-20 20:59:56,579 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 20:59:56,579 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 11.0) internal successors, (33), 3 states have internal predecessors, (33), 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 33 [2022-02-20 20:59:56,580 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 20:59:56,580 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 11.0) internal successors, (33), 3 states have internal predecessors, (33), 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:59:56,605 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:59:56,605 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 20:59:56,606 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 20:59:56,606 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 20:59:56,606 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 20:59:56,607 INFO L499 CegarLoopForPetriNet]: Number of universal loopers: 56 out of 73 [2022-02-20 20:59:56,607 INFO L92 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 62 places, 52 transitions, 129 flow. Second operand has 3 states, 3 states have (on average 57.333333333333336) internal successors, (172), 3 states have internal predecessors, (172), 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:59:56,607 INFO L101 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-02-20 20:59:56,607 INFO L102 encePairwiseOnDemand]: Number of universal subtrahend loopers: 56 of 73 [2022-02-20 20:59:56,607 INFO L74 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-02-20 20:59:56,655 INFO L129 PetriNetUnfolder]: 21/145 cut-off events. [2022-02-20 20:59:56,656 INFO L130 PetriNetUnfolder]: For 20/20 co-relation queries the response was YES. [2022-02-20 20:59:56,657 INFO L84 FinitePrefix]: Finished finitePrefix Result has 230 conditions, 145 events. 21/145 cut-off events. For 20/20 co-relation queries the response was YES. Maximal size of possible extension queue 11. Compared 407 event pairs, 7 based on Foata normal form. 3/143 useless extension candidates. Maximal degree in co-relation 222. Up to 44 conditions per place. [2022-02-20 20:59:56,658 INFO L132 encePairwiseOnDemand]: 68/73 looper letters, 10 selfloop transitions, 4 changer transitions 0/57 dead transitions. [2022-02-20 20:59:56,658 INFO L138 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 64 places, 57 transitions, 177 flow [2022-02-20 20:59:56,658 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 20:59:56,658 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2022-02-20 20:59:56,660 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 183 transitions. [2022-02-20 20:59:56,660 INFO L544 CegarLoopForPetriNet]: DFA transition density 0.8356164383561644 [2022-02-20 20:59:56,660 INFO L72 ComplementDD]: Start complementDD. Operand 3 states and 183 transitions. [2022-02-20 20:59:56,660 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3 states and 183 transitions. [2022-02-20 20:59:56,661 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-02-20 20:59:56,661 INFO L117 ReachableStatesCopy]: Start reachableStatesCopy. Operand 3 states and 183 transitions. [2022-02-20 20:59:56,662 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends has 4 states, 3 states have (on average 61.0) internal successors, (183), 3 states have internal predecessors, (183), 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:59:56,662 INFO L131 ReachableStatesCopy]: Finished reachableStatesCopy Result has 4 states, 4 states have (on average 73.0) internal successors, (292), 4 states have internal predecessors, (292), 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:59:56,663 INFO L81 ComplementDD]: Finished complementDD. Result has 4 states, 4 states have (on average 73.0) internal successors, (292), 4 states have internal predecessors, (292), 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:59:56,663 INFO L186 Difference]: Start difference. First operand has 62 places, 52 transitions, 129 flow. Second operand 3 states and 183 transitions. [2022-02-20 20:59:56,663 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 64 places, 57 transitions, 177 flow [2022-02-20 20:59:56,664 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 63 places, 57 transitions, 175 flow, removed 0 selfloop flow, removed 1 redundant places. [2022-02-20 20:59:56,665 INFO L242 Difference]: Finished difference. Result has 64 places, 55 transitions, 153 flow [2022-02-20 20:59:56,666 INFO L317 CegarLoopForPetriNet]: {PETRI_ALPHABET=73, PETRI_DIFFERENCE_MINUEND_FLOW=127, PETRI_DIFFERENCE_MINUEND_PLACES=61, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=52, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=48, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=153, PETRI_PLACES=64, PETRI_TRANSITIONS=55} [2022-02-20 20:59:56,666 INFO L334 CegarLoopForPetriNet]: 58 programPoint places, 6 predicate places. [2022-02-20 20:59:56,667 INFO L111 iNet2FiniteAutomaton]: Start petriNet2FiniteAutomaton. Operand has 64 places, 55 transitions, 153 flow [2022-02-20 20:59:56,757 INFO L133 iNet2FiniteAutomaton]: Finished petriNet2FiniteAutomaton. Result has 3517 states, 3513 states have (on average 3.274124679760888) internal successors, (11502), 3516 states have internal predecessors, (11502), 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:59:56,765 INFO L78 Accepts]: Start accepts. Automaton has has 3517 states, 3513 states have (on average 3.274124679760888) internal successors, (11502), 3516 states have internal predecessors, (11502), 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 33 [2022-02-20 20:59:56,766 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 20:59:56,766 INFO L470 AbstractCegarLoop]: Abstraction has has 64 places, 55 transitions, 153 flow [2022-02-20 20:59:56,766 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 57.333333333333336) internal successors, (172), 3 states have internal predecessors, (172), 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:59:56,766 INFO L246 CegarLoopForPetriNet]: Found error trace [2022-02-20 20:59:56,766 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] [2022-02-20 20:59:56,767 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable10 [2022-02-20 20:59:56,767 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATION] === [2022-02-20 20:59:56,767 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:59:56,767 INFO L85 PathProgramCache]: Analyzing trace with hash 1587743943, now seen corresponding path program 1 times [2022-02-20 20:59:56,767 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:59:56,768 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2011464330] [2022-02-20 20:59:56,768 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:59:56,768 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:59:56,788 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:59:56,825 INFO L290 TraceCheckUtils]: 0: Hoare triple {10803#true} [265] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10803#true} is VALID [2022-02-20 20:59:56,826 INFO L290 TraceCheckUtils]: 1: Hoare triple {10803#true} [255] 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] {10803#true} is VALID [2022-02-20 20:59:56,826 INFO L290 TraceCheckUtils]: 2: Hoare triple {10803#true} [272] 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[] {10803#true} is VALID [2022-02-20 20:59:56,826 INFO L290 TraceCheckUtils]: 3: Hoare triple {10803#true} [273] L-1-2-->L16: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {10803#true} is VALID [2022-02-20 20:59:56,826 INFO L290 TraceCheckUtils]: 4: Hoare triple {10803#true} [254] L16-->L16-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[] {10803#true} is VALID [2022-02-20 20:59:56,826 INFO L290 TraceCheckUtils]: 5: Hoare triple {10803#true} [222] L16-1-->L16-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[] {10803#true} is VALID [2022-02-20 20:59:56,826 INFO L290 TraceCheckUtils]: 6: Hoare triple {10803#true} [277] L16-2-->L16-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[] {10803#true} is VALID [2022-02-20 20:59:56,827 INFO L290 TraceCheckUtils]: 7: Hoare triple {10803#true} [259] L16-3-->L16-4: Formula: (and (= (select |v_#valid_3| 2) 1) (= (select |v_#length_2| 2) 1)) InVars {#length=|v_#length_2|, #valid=|v_#valid_3|} OutVars{#length=|v_#length_2|, #valid=|v_#valid_3|} AuxVars[] AssignedVars[] {10803#true} is VALID [2022-02-20 20:59:56,827 INFO L290 TraceCheckUtils]: 8: Hoare triple {10803#true} [262] L16-4-->L16-5: Formula: (= (select (select |v_#memory_int_3| 2) 0) 0) InVars {#memory_int=|v_#memory_int_3|} OutVars{#memory_int=|v_#memory_int_3|} AuxVars[] AssignedVars[] {10803#true} is VALID [2022-02-20 20:59:56,827 INFO L290 TraceCheckUtils]: 9: Hoare triple {10803#true} [252] L16-5-->L-1-3: Formula: (= v_~x~0_1 0) InVars {} OutVars{~x~0=v_~x~0_1} AuxVars[] AssignedVars[~x~0] {10803#true} is VALID [2022-02-20 20:59:56,827 INFO L290 TraceCheckUtils]: 10: Hoare triple {10803#true} [274] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10803#true} is VALID [2022-02-20 20:59:56,827 INFO L290 TraceCheckUtils]: 11: Hoare triple {10803#true} [257] L-1-4-->L-1-5: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10803#true} is VALID [2022-02-20 20:59:56,828 INFO L290 TraceCheckUtils]: 12: Hoare triple {10803#true} [236] L-1-5-->L-1-6: Formula: (and (= |v_ULTIMATE.start_#in~argv#1.offset_1| |v_ULTIMATE.start_main_#in~argv#1.offset_1|) (= |v_ULTIMATE.start_main_#in~argv#1.base_1| |v_ULTIMATE.start_#in~argv#1.base_1|) (= |v_ULTIMATE.start_main_#in~argc#1_1| |v_ULTIMATE.start_#in~argc#1_1|)) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} OutVars{ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_1|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_1|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_#in~argv#1.offset] {10803#true} is VALID [2022-02-20 20:59:56,828 INFO L290 TraceCheckUtils]: 13: Hoare triple {10803#true} [256] L-1-6-->L-1-7: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1] {10803#true} is VALID [2022-02-20 20:59:56,828 INFO L290 TraceCheckUtils]: 14: Hoare triple {10803#true} [232] L-1-7-->L718: Formula: true InVars {} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_1|, ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_1|, ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_1|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_1|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_1|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_1|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_1|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_1|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_1|, ULTIMATE.start_main_#t~mem5#1=|v_ULTIMATE.start_main_#t~mem5#1_1|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~1#1, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1, ULTIMATE.start_main_~#t~0#1.offset, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_#t~mem5#1, ULTIMATE.start_main_~#t~0#1.base, ULTIMATE.start_main_#t~pre2#1] {10803#true} is VALID [2022-02-20 20:59:56,828 INFO L290 TraceCheckUtils]: 15: Hoare triple {10803#true} [241] L718-->L718-1: Formula: (= |v_ULTIMATE.start_main_#in~argc#1_2| |v_ULTIMATE.start_main_~argc#1_2|) InVars {ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_2|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1] {10803#true} is VALID [2022-02-20 20:59:56,828 INFO L290 TraceCheckUtils]: 16: Hoare triple {10803#true} [278] L718-1-->L719: Formula: (and (= |v_ULTIMATE.start_main_~argv#1.offset_2| |v_ULTIMATE.start_main_#in~argv#1.offset_2|) (= |v_ULTIMATE.start_main_#in~argv#1.base_2| |v_ULTIMATE.start_main_~argv#1.base_2|)) InVars {ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|} OutVars{ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~argv#1.offset] {10803#true} is VALID [2022-02-20 20:59:56,828 INFO L290 TraceCheckUtils]: 17: Hoare triple {10803#true} [224] L719-->L719-1: Formula: (and (not (= |v_ULTIMATE.start_main_~#t~0#1.base_2| 0)) (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#t~0#1.base_2|) (= (store |v_#length_4| |v_ULTIMATE.start_main_~#t~0#1.base_2| 44) |v_#length_3|) (= |v_ULTIMATE.start_main_~#t~0#1.offset_2| 0) (= |v_#valid_4| (store |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2| 1)) (= (select |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_4|, #valid=|v_#valid_5|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_3|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_2|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_2|, #valid=|v_#valid_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#t~0#1.offset, #valid, #length, ULTIMATE.start_main_~#t~0#1.base] {10803#true} is VALID [2022-02-20 20:59:56,829 INFO L290 TraceCheckUtils]: 18: Hoare triple {10803#true} [263] L719-1-->L722: Formula: (= v_~x~0_2 0) InVars {} OutVars{~x~0=v_~x~0_2} AuxVars[] AssignedVars[~x~0] {10803#true} is VALID [2022-02-20 20:59:56,829 INFO L290 TraceCheckUtils]: 19: Hoare triple {10803#true} [275] L722-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_2| 1) InVars {} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {10805#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:56,829 INFO L290 TraceCheckUtils]: 20: Hoare triple {10805#(= |ULTIMATE.start_main_~i~0#1| 1)} [244] L723-5-->L724: Formula: (<= |v_ULTIMATE.start_main_~i~0#1_4| 10) 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[] {10805#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:56,830 INFO L290 TraceCheckUtils]: 21: Hoare triple {10805#(= |ULTIMATE.start_main_~i~0#1| 1)} [240] L724-->L724-1: Formula: (= |v_ULTIMATE.start_main_#t~pre2#1_2| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {10805#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:56,830 INFO L290 TraceCheckUtils]: 22: Hoare triple {10805#(= |ULTIMATE.start_main_~i~0#1| 1)} [266] L724-1-->L724-2: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] {10805#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:56,831 INFO L290 TraceCheckUtils]: 23: Hoare triple {10805#(= |ULTIMATE.start_main_~i~0#1| 1)} [231] L724-2-->L724-3: Formula: (= (store |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3| (store (select |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3|) (+ |v_ULTIMATE.start_main_~#t~0#1.offset_3| (* |v_ULTIMATE.start_main_~i~0#1_5| 4)) |v_ULTIMATE.start_main_#t~pre2#1_3|)) |v_#memory_int_4|) InVars {#memory_int=|v_#memory_int_5|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} OutVars{#memory_int=|v_#memory_int_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} AuxVars[] AssignedVars[#memory_int] {10805#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:56,831 INFO L290 TraceCheckUtils]: 24: Hoare triple {10805#(= |ULTIMATE.start_main_~i~0#1| 1)} [296] L724-3-->threadENTRY: Formula: (and (= |v_ULTIMATE.start_main_~i~0#1_17| |v_threadThread1of3ForFork0_#in~arg.offset_4|) (= v_threadThread1of3ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre2#1_14|) (= |v_threadThread1of3ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_17|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_14|} OutVars{threadThread1of3ForFork0_#res.base=|v_threadThread1of3ForFork0_#res.base_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_17|, threadThread1of3ForFork0_#in~arg.base=|v_threadThread1of3ForFork0_#in~arg.base_4|, threadThread1of3ForFork0_#res.offset=|v_threadThread1of3ForFork0_#res.offset_4|, threadThread1of3ForFork0_~thread~0=v_threadThread1of3ForFork0_~thread~0_6, threadThread1of3ForFork0_thidvar0=v_threadThread1of3ForFork0_thidvar0_2, threadThread1of3ForFork0_#in~arg.offset=|v_threadThread1of3ForFork0_#in~arg.offset_4|, threadThread1of3ForFork0_~arg.base=v_threadThread1of3ForFork0_~arg.base_6, threadThread1of3ForFork0_~arg.offset=v_threadThread1of3ForFork0_~arg.offset_6, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_14|} AuxVars[] AssignedVars[threadThread1of3ForFork0_#res.base, threadThread1of3ForFork0_#in~arg.base, threadThread1of3ForFork0_#res.offset, threadThread1of3ForFork0_~thread~0, threadThread1of3ForFork0_thidvar0, threadThread1of3ForFork0_#in~arg.offset, threadThread1of3ForFork0_~arg.base, threadThread1of3ForFork0_~arg.offset] {10805#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:56,833 INFO L290 TraceCheckUtils]: 25: Hoare triple {10805#(= |ULTIMATE.start_main_~i~0#1| 1)} [276] L724-4-->L724-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {10805#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:56,838 INFO L290 TraceCheckUtils]: 26: Hoare triple {10805#(= |ULTIMATE.start_main_~i~0#1| 1)} [229] L724-5-->L723-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet3#1] {10805#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:56,839 INFO L290 TraceCheckUtils]: 27: Hoare triple {10805#(= |ULTIMATE.start_main_~i~0#1| 1)} [258] L723-2-->L723-3: Formula: (= |v_ULTIMATE.start_main_#t~post1#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_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_2|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {10806#(= (+ (- 1) |ULTIMATE.start_main_#t~post1#1|) 0)} is VALID [2022-02-20 20:59:56,839 INFO L290 TraceCheckUtils]: 28: Hoare triple {10806#(= (+ (- 1) |ULTIMATE.start_main_#t~post1#1|) 0)} [237] L723-3-->L723-4: Formula: (= (+ |v_ULTIMATE.start_main_#t~post1#1_3| 1) |v_ULTIMATE.start_main_~i~0#1_7|) InVars {ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_7|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {10807#(<= |ULTIMATE.start_main_~i~0#1| 2)} is VALID [2022-02-20 20:59:56,840 INFO L290 TraceCheckUtils]: 29: Hoare triple {10807#(<= |ULTIMATE.start_main_~i~0#1| 2)} [253] L723-4-->L723-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {10807#(<= |ULTIMATE.start_main_~i~0#1| 2)} is VALID [2022-02-20 20:59:56,840 INFO L290 TraceCheckUtils]: 30: Hoare triple {10807#(<= |ULTIMATE.start_main_~i~0#1| 2)} [243] L723-5-->L723-6: Formula: (not (<= |v_ULTIMATE.start_main_~i~0#1_3| 10)) 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[] {10804#false} is VALID [2022-02-20 20:59:56,840 INFO L290 TraceCheckUtils]: 31: Hoare triple {10804#false} [290] threadENTRY-->L712: Formula: (and (= v_threadThread1of3ForFork0_~arg.offset_1 |v_threadThread1of3ForFork0_#in~arg.offset_1|) (= v_threadThread1of3ForFork0_~arg.base_1 |v_threadThread1of3ForFork0_#in~arg.base_1|)) InVars {threadThread1of3ForFork0_#in~arg.offset=|v_threadThread1of3ForFork0_#in~arg.offset_1|, threadThread1of3ForFork0_#in~arg.base=|v_threadThread1of3ForFork0_#in~arg.base_1|} OutVars{threadThread1of3ForFork0_#in~arg.offset=|v_threadThread1of3ForFork0_#in~arg.offset_1|, threadThread1of3ForFork0_#in~arg.base=|v_threadThread1of3ForFork0_#in~arg.base_1|, threadThread1of3ForFork0_~arg.base=v_threadThread1of3ForFork0_~arg.base_1, threadThread1of3ForFork0_~arg.offset=v_threadThread1of3ForFork0_~arg.offset_1} AuxVars[] AssignedVars[threadThread1of3ForFork0_~arg.base, threadThread1of3ForFork0_~arg.offset] {10804#false} is VALID [2022-02-20 20:59:56,840 INFO L290 TraceCheckUtils]: 32: Hoare triple {10804#false} [291] L712-->L713: Formula: (= v_threadThread1of3ForFork0_~thread~0_1 (+ v_threadThread1of3ForFork0_~arg.base_3 v_threadThread1of3ForFork0_~arg.offset_3)) InVars {threadThread1of3ForFork0_~arg.base=v_threadThread1of3ForFork0_~arg.base_3, threadThread1of3ForFork0_~arg.offset=v_threadThread1of3ForFork0_~arg.offset_3} OutVars{threadThread1of3ForFork0_~arg.base=v_threadThread1of3ForFork0_~arg.base_3, threadThread1of3ForFork0_~thread~0=v_threadThread1of3ForFork0_~thread~0_1, threadThread1of3ForFork0_~arg.offset=v_threadThread1of3ForFork0_~arg.offset_3} AuxVars[] AssignedVars[threadThread1of3ForFork0_~thread~0] {10804#false} is VALID [2022-02-20 20:59:56,841 INFO L290 TraceCheckUtils]: 33: Hoare triple {10804#false} [292] L713-->L715: Formula: (= v_threadThread1of3ForFork0_~thread~0_3 v_~x~0_5) InVars {threadThread1of3ForFork0_~thread~0=v_threadThread1of3ForFork0_~thread~0_3} OutVars{threadThread1of3ForFork0_~thread~0=v_threadThread1of3ForFork0_~thread~0_3, ~x~0=v_~x~0_5} AuxVars[] AssignedVars[~x~0] {10804#false} is VALID [2022-02-20 20:59:56,841 INFO L290 TraceCheckUtils]: 34: Hoare triple {10804#false} [227] L723-6-->L727: Formula: (not (< v_~x~0_4 11)) InVars {~x~0=v_~x~0_4} OutVars{~x~0=v_~x~0_4} AuxVars[] AssignedVars[] {10804#false} is VALID [2022-02-20 20:59:56,841 INFO L290 TraceCheckUtils]: 35: Hoare triple {10804#false} [234] L727-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10804#false} is VALID [2022-02-20 20:59:56,841 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:59:56,842 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 20:59:56,842 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2011464330] [2022-02-20 20:59:56,842 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2011464330] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 20:59:56,842 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [359827616] [2022-02-20 20:59:56,842 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:59:56,842 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 20:59:56,842 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 20:59:56,844 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:59:56,871 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:59:56,912 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:59:56,912 INFO L263 TraceCheckSpWp]: Trace formula consists of 91 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-20 20:59:56,922 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:59:56,922 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 20:59:57,062 INFO L290 TraceCheckUtils]: 0: Hoare triple {10803#true} [265] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10803#true} is VALID [2022-02-20 20:59:57,062 INFO L290 TraceCheckUtils]: 1: Hoare triple {10803#true} [255] 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] {10803#true} is VALID [2022-02-20 20:59:57,062 INFO L290 TraceCheckUtils]: 2: Hoare triple {10803#true} [272] 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[] {10803#true} is VALID [2022-02-20 20:59:57,063 INFO L290 TraceCheckUtils]: 3: Hoare triple {10803#true} [273] L-1-2-->L16: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {10803#true} is VALID [2022-02-20 20:59:57,063 INFO L290 TraceCheckUtils]: 4: Hoare triple {10803#true} [254] L16-->L16-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[] {10803#true} is VALID [2022-02-20 20:59:57,063 INFO L290 TraceCheckUtils]: 5: Hoare triple {10803#true} [222] L16-1-->L16-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[] {10803#true} is VALID [2022-02-20 20:59:57,063 INFO L290 TraceCheckUtils]: 6: Hoare triple {10803#true} [277] L16-2-->L16-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[] {10803#true} is VALID [2022-02-20 20:59:57,063 INFO L290 TraceCheckUtils]: 7: Hoare triple {10803#true} [259] L16-3-->L16-4: Formula: (and (= (select |v_#valid_3| 2) 1) (= (select |v_#length_2| 2) 1)) InVars {#length=|v_#length_2|, #valid=|v_#valid_3|} OutVars{#length=|v_#length_2|, #valid=|v_#valid_3|} AuxVars[] AssignedVars[] {10803#true} is VALID [2022-02-20 20:59:57,064 INFO L290 TraceCheckUtils]: 8: Hoare triple {10803#true} [262] L16-4-->L16-5: Formula: (= (select (select |v_#memory_int_3| 2) 0) 0) InVars {#memory_int=|v_#memory_int_3|} OutVars{#memory_int=|v_#memory_int_3|} AuxVars[] AssignedVars[] {10803#true} is VALID [2022-02-20 20:59:57,064 INFO L290 TraceCheckUtils]: 9: Hoare triple {10803#true} [252] L16-5-->L-1-3: Formula: (= v_~x~0_1 0) InVars {} OutVars{~x~0=v_~x~0_1} AuxVars[] AssignedVars[~x~0] {10803#true} is VALID [2022-02-20 20:59:57,064 INFO L290 TraceCheckUtils]: 10: Hoare triple {10803#true} [274] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10803#true} is VALID [2022-02-20 20:59:57,064 INFO L290 TraceCheckUtils]: 11: Hoare triple {10803#true} [257] L-1-4-->L-1-5: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10803#true} is VALID [2022-02-20 20:59:57,064 INFO L290 TraceCheckUtils]: 12: Hoare triple {10803#true} [236] L-1-5-->L-1-6: Formula: (and (= |v_ULTIMATE.start_#in~argv#1.offset_1| |v_ULTIMATE.start_main_#in~argv#1.offset_1|) (= |v_ULTIMATE.start_main_#in~argv#1.base_1| |v_ULTIMATE.start_#in~argv#1.base_1|) (= |v_ULTIMATE.start_main_#in~argc#1_1| |v_ULTIMATE.start_#in~argc#1_1|)) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} OutVars{ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_1|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_1|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_#in~argv#1.offset] {10803#true} is VALID [2022-02-20 20:59:57,064 INFO L290 TraceCheckUtils]: 13: Hoare triple {10803#true} [256] L-1-6-->L-1-7: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1] {10803#true} is VALID [2022-02-20 20:59:57,065 INFO L290 TraceCheckUtils]: 14: Hoare triple {10803#true} [232] L-1-7-->L718: Formula: true InVars {} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_1|, ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_1|, ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_1|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_1|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_1|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_1|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_1|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_1|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_1|, ULTIMATE.start_main_#t~mem5#1=|v_ULTIMATE.start_main_#t~mem5#1_1|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~1#1, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1, ULTIMATE.start_main_~#t~0#1.offset, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_#t~mem5#1, ULTIMATE.start_main_~#t~0#1.base, ULTIMATE.start_main_#t~pre2#1] {10803#true} is VALID [2022-02-20 20:59:57,065 INFO L290 TraceCheckUtils]: 15: Hoare triple {10803#true} [241] L718-->L718-1: Formula: (= |v_ULTIMATE.start_main_#in~argc#1_2| |v_ULTIMATE.start_main_~argc#1_2|) InVars {ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_2|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1] {10803#true} is VALID [2022-02-20 20:59:57,065 INFO L290 TraceCheckUtils]: 16: Hoare triple {10803#true} [278] L718-1-->L719: Formula: (and (= |v_ULTIMATE.start_main_~argv#1.offset_2| |v_ULTIMATE.start_main_#in~argv#1.offset_2|) (= |v_ULTIMATE.start_main_#in~argv#1.base_2| |v_ULTIMATE.start_main_~argv#1.base_2|)) InVars {ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|} OutVars{ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~argv#1.offset] {10803#true} is VALID [2022-02-20 20:59:57,065 INFO L290 TraceCheckUtils]: 17: Hoare triple {10803#true} [224] L719-->L719-1: Formula: (and (not (= |v_ULTIMATE.start_main_~#t~0#1.base_2| 0)) (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#t~0#1.base_2|) (= (store |v_#length_4| |v_ULTIMATE.start_main_~#t~0#1.base_2| 44) |v_#length_3|) (= |v_ULTIMATE.start_main_~#t~0#1.offset_2| 0) (= |v_#valid_4| (store |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2| 1)) (= (select |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_4|, #valid=|v_#valid_5|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_3|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_2|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_2|, #valid=|v_#valid_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#t~0#1.offset, #valid, #length, ULTIMATE.start_main_~#t~0#1.base] {10803#true} is VALID [2022-02-20 20:59:57,065 INFO L290 TraceCheckUtils]: 18: Hoare triple {10803#true} [263] L719-1-->L722: Formula: (= v_~x~0_2 0) InVars {} OutVars{~x~0=v_~x~0_2} AuxVars[] AssignedVars[~x~0] {10803#true} is VALID [2022-02-20 20:59:57,068 INFO L290 TraceCheckUtils]: 19: Hoare triple {10803#true} [275] L722-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_2| 1) InVars {} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {10868#(<= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:57,069 INFO L290 TraceCheckUtils]: 20: Hoare triple {10868#(<= |ULTIMATE.start_main_~i~0#1| 1)} [244] L723-5-->L724: Formula: (<= |v_ULTIMATE.start_main_~i~0#1_4| 10) 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[] {10868#(<= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:57,069 INFO L290 TraceCheckUtils]: 21: Hoare triple {10868#(<= |ULTIMATE.start_main_~i~0#1| 1)} [240] L724-->L724-1: Formula: (= |v_ULTIMATE.start_main_#t~pre2#1_2| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {10868#(<= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:57,069 INFO L290 TraceCheckUtils]: 22: Hoare triple {10868#(<= |ULTIMATE.start_main_~i~0#1| 1)} [266] L724-1-->L724-2: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] {10868#(<= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:57,070 INFO L290 TraceCheckUtils]: 23: Hoare triple {10868#(<= |ULTIMATE.start_main_~i~0#1| 1)} [231] L724-2-->L724-3: Formula: (= (store |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3| (store (select |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3|) (+ |v_ULTIMATE.start_main_~#t~0#1.offset_3| (* |v_ULTIMATE.start_main_~i~0#1_5| 4)) |v_ULTIMATE.start_main_#t~pre2#1_3|)) |v_#memory_int_4|) InVars {#memory_int=|v_#memory_int_5|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} OutVars{#memory_int=|v_#memory_int_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} AuxVars[] AssignedVars[#memory_int] {10868#(<= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:57,070 INFO L290 TraceCheckUtils]: 24: Hoare triple {10868#(<= |ULTIMATE.start_main_~i~0#1| 1)} [296] L724-3-->threadENTRY: Formula: (and (= |v_ULTIMATE.start_main_~i~0#1_17| |v_threadThread1of3ForFork0_#in~arg.offset_4|) (= v_threadThread1of3ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre2#1_14|) (= |v_threadThread1of3ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_17|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_14|} OutVars{threadThread1of3ForFork0_#res.base=|v_threadThread1of3ForFork0_#res.base_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_17|, threadThread1of3ForFork0_#in~arg.base=|v_threadThread1of3ForFork0_#in~arg.base_4|, threadThread1of3ForFork0_#res.offset=|v_threadThread1of3ForFork0_#res.offset_4|, threadThread1of3ForFork0_~thread~0=v_threadThread1of3ForFork0_~thread~0_6, threadThread1of3ForFork0_thidvar0=v_threadThread1of3ForFork0_thidvar0_2, threadThread1of3ForFork0_#in~arg.offset=|v_threadThread1of3ForFork0_#in~arg.offset_4|, threadThread1of3ForFork0_~arg.base=v_threadThread1of3ForFork0_~arg.base_6, threadThread1of3ForFork0_~arg.offset=v_threadThread1of3ForFork0_~arg.offset_6, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_14|} AuxVars[] AssignedVars[threadThread1of3ForFork0_#res.base, threadThread1of3ForFork0_#in~arg.base, threadThread1of3ForFork0_#res.offset, threadThread1of3ForFork0_~thread~0, threadThread1of3ForFork0_thidvar0, threadThread1of3ForFork0_#in~arg.offset, threadThread1of3ForFork0_~arg.base, threadThread1of3ForFork0_~arg.offset] {10868#(<= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:57,071 INFO L290 TraceCheckUtils]: 25: Hoare triple {10868#(<= |ULTIMATE.start_main_~i~0#1| 1)} [276] L724-4-->L724-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {10868#(<= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:57,071 INFO L290 TraceCheckUtils]: 26: Hoare triple {10868#(<= |ULTIMATE.start_main_~i~0#1| 1)} [229] L724-5-->L723-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet3#1] {10868#(<= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:57,071 INFO L290 TraceCheckUtils]: 27: Hoare triple {10868#(<= |ULTIMATE.start_main_~i~0#1| 1)} [258] L723-2-->L723-3: Formula: (= |v_ULTIMATE.start_main_#t~post1#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_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_2|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {10893#(<= |ULTIMATE.start_main_#t~post1#1| 1)} is VALID [2022-02-20 20:59:57,072 INFO L290 TraceCheckUtils]: 28: Hoare triple {10893#(<= |ULTIMATE.start_main_#t~post1#1| 1)} [237] L723-3-->L723-4: Formula: (= (+ |v_ULTIMATE.start_main_#t~post1#1_3| 1) |v_ULTIMATE.start_main_~i~0#1_7|) InVars {ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_7|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {10807#(<= |ULTIMATE.start_main_~i~0#1| 2)} is VALID [2022-02-20 20:59:57,072 INFO L290 TraceCheckUtils]: 29: Hoare triple {10807#(<= |ULTIMATE.start_main_~i~0#1| 2)} [253] L723-4-->L723-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {10807#(<= |ULTIMATE.start_main_~i~0#1| 2)} is VALID [2022-02-20 20:59:57,073 INFO L290 TraceCheckUtils]: 30: Hoare triple {10807#(<= |ULTIMATE.start_main_~i~0#1| 2)} [243] L723-5-->L723-6: Formula: (not (<= |v_ULTIMATE.start_main_~i~0#1_3| 10)) 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[] {10804#false} is VALID [2022-02-20 20:59:57,073 INFO L290 TraceCheckUtils]: 31: Hoare triple {10804#false} [290] threadENTRY-->L712: Formula: (and (= v_threadThread1of3ForFork0_~arg.offset_1 |v_threadThread1of3ForFork0_#in~arg.offset_1|) (= v_threadThread1of3ForFork0_~arg.base_1 |v_threadThread1of3ForFork0_#in~arg.base_1|)) InVars {threadThread1of3ForFork0_#in~arg.offset=|v_threadThread1of3ForFork0_#in~arg.offset_1|, threadThread1of3ForFork0_#in~arg.base=|v_threadThread1of3ForFork0_#in~arg.base_1|} OutVars{threadThread1of3ForFork0_#in~arg.offset=|v_threadThread1of3ForFork0_#in~arg.offset_1|, threadThread1of3ForFork0_#in~arg.base=|v_threadThread1of3ForFork0_#in~arg.base_1|, threadThread1of3ForFork0_~arg.base=v_threadThread1of3ForFork0_~arg.base_1, threadThread1of3ForFork0_~arg.offset=v_threadThread1of3ForFork0_~arg.offset_1} AuxVars[] AssignedVars[threadThread1of3ForFork0_~arg.base, threadThread1of3ForFork0_~arg.offset] {10804#false} is VALID [2022-02-20 20:59:57,073 INFO L290 TraceCheckUtils]: 32: Hoare triple {10804#false} [291] L712-->L713: Formula: (= v_threadThread1of3ForFork0_~thread~0_1 (+ v_threadThread1of3ForFork0_~arg.base_3 v_threadThread1of3ForFork0_~arg.offset_3)) InVars {threadThread1of3ForFork0_~arg.base=v_threadThread1of3ForFork0_~arg.base_3, threadThread1of3ForFork0_~arg.offset=v_threadThread1of3ForFork0_~arg.offset_3} OutVars{threadThread1of3ForFork0_~arg.base=v_threadThread1of3ForFork0_~arg.base_3, threadThread1of3ForFork0_~thread~0=v_threadThread1of3ForFork0_~thread~0_1, threadThread1of3ForFork0_~arg.offset=v_threadThread1of3ForFork0_~arg.offset_3} AuxVars[] AssignedVars[threadThread1of3ForFork0_~thread~0] {10804#false} is VALID [2022-02-20 20:59:57,073 INFO L290 TraceCheckUtils]: 33: Hoare triple {10804#false} [292] L713-->L715: Formula: (= v_threadThread1of3ForFork0_~thread~0_3 v_~x~0_5) InVars {threadThread1of3ForFork0_~thread~0=v_threadThread1of3ForFork0_~thread~0_3} OutVars{threadThread1of3ForFork0_~thread~0=v_threadThread1of3ForFork0_~thread~0_3, ~x~0=v_~x~0_5} AuxVars[] AssignedVars[~x~0] {10804#false} is VALID [2022-02-20 20:59:57,074 INFO L290 TraceCheckUtils]: 34: Hoare triple {10804#false} [227] L723-6-->L727: Formula: (not (< v_~x~0_4 11)) InVars {~x~0=v_~x~0_4} OutVars{~x~0=v_~x~0_4} AuxVars[] AssignedVars[] {10804#false} is VALID [2022-02-20 20:59:57,074 INFO L290 TraceCheckUtils]: 35: Hoare triple {10804#false} [234] L727-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10804#false} is VALID [2022-02-20 20:59:57,074 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:59:57,074 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 20:59:57,183 INFO L290 TraceCheckUtils]: 35: Hoare triple {10804#false} [234] L727-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10804#false} is VALID [2022-02-20 20:59:57,183 INFO L290 TraceCheckUtils]: 34: Hoare triple {10804#false} [227] L723-6-->L727: Formula: (not (< v_~x~0_4 11)) InVars {~x~0=v_~x~0_4} OutVars{~x~0=v_~x~0_4} AuxVars[] AssignedVars[] {10804#false} is VALID [2022-02-20 20:59:57,184 INFO L290 TraceCheckUtils]: 33: Hoare triple {10804#false} [292] L713-->L715: Formula: (= v_threadThread1of3ForFork0_~thread~0_3 v_~x~0_5) InVars {threadThread1of3ForFork0_~thread~0=v_threadThread1of3ForFork0_~thread~0_3} OutVars{threadThread1of3ForFork0_~thread~0=v_threadThread1of3ForFork0_~thread~0_3, ~x~0=v_~x~0_5} AuxVars[] AssignedVars[~x~0] {10804#false} is VALID [2022-02-20 20:59:57,184 INFO L290 TraceCheckUtils]: 32: Hoare triple {10804#false} [291] L712-->L713: Formula: (= v_threadThread1of3ForFork0_~thread~0_1 (+ v_threadThread1of3ForFork0_~arg.base_3 v_threadThread1of3ForFork0_~arg.offset_3)) InVars {threadThread1of3ForFork0_~arg.base=v_threadThread1of3ForFork0_~arg.base_3, threadThread1of3ForFork0_~arg.offset=v_threadThread1of3ForFork0_~arg.offset_3} OutVars{threadThread1of3ForFork0_~arg.base=v_threadThread1of3ForFork0_~arg.base_3, threadThread1of3ForFork0_~thread~0=v_threadThread1of3ForFork0_~thread~0_1, threadThread1of3ForFork0_~arg.offset=v_threadThread1of3ForFork0_~arg.offset_3} AuxVars[] AssignedVars[threadThread1of3ForFork0_~thread~0] {10804#false} is VALID [2022-02-20 20:59:57,184 INFO L290 TraceCheckUtils]: 31: Hoare triple {10804#false} [290] threadENTRY-->L712: Formula: (and (= v_threadThread1of3ForFork0_~arg.offset_1 |v_threadThread1of3ForFork0_#in~arg.offset_1|) (= v_threadThread1of3ForFork0_~arg.base_1 |v_threadThread1of3ForFork0_#in~arg.base_1|)) InVars {threadThread1of3ForFork0_#in~arg.offset=|v_threadThread1of3ForFork0_#in~arg.offset_1|, threadThread1of3ForFork0_#in~arg.base=|v_threadThread1of3ForFork0_#in~arg.base_1|} OutVars{threadThread1of3ForFork0_#in~arg.offset=|v_threadThread1of3ForFork0_#in~arg.offset_1|, threadThread1of3ForFork0_#in~arg.base=|v_threadThread1of3ForFork0_#in~arg.base_1|, threadThread1of3ForFork0_~arg.base=v_threadThread1of3ForFork0_~arg.base_1, threadThread1of3ForFork0_~arg.offset=v_threadThread1of3ForFork0_~arg.offset_1} AuxVars[] AssignedVars[threadThread1of3ForFork0_~arg.base, threadThread1of3ForFork0_~arg.offset] {10804#false} is VALID [2022-02-20 20:59:57,184 INFO L290 TraceCheckUtils]: 30: Hoare triple {10933#(<= |ULTIMATE.start_main_~i~0#1| 10)} [243] L723-5-->L723-6: Formula: (not (<= |v_ULTIMATE.start_main_~i~0#1_3| 10)) 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[] {10804#false} is VALID [2022-02-20 20:59:57,185 INFO L290 TraceCheckUtils]: 29: Hoare triple {10933#(<= |ULTIMATE.start_main_~i~0#1| 10)} [253] L723-4-->L723-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {10933#(<= |ULTIMATE.start_main_~i~0#1| 10)} is VALID [2022-02-20 20:59:57,185 INFO L290 TraceCheckUtils]: 28: Hoare triple {10940#(<= |ULTIMATE.start_main_#t~post1#1| 9)} [237] L723-3-->L723-4: Formula: (= (+ |v_ULTIMATE.start_main_#t~post1#1_3| 1) |v_ULTIMATE.start_main_~i~0#1_7|) InVars {ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_7|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {10933#(<= |ULTIMATE.start_main_~i~0#1| 10)} is VALID [2022-02-20 20:59:57,186 INFO L290 TraceCheckUtils]: 27: Hoare triple {10944#(<= |ULTIMATE.start_main_~i~0#1| 9)} [258] L723-2-->L723-3: Formula: (= |v_ULTIMATE.start_main_#t~post1#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_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_2|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {10940#(<= |ULTIMATE.start_main_#t~post1#1| 9)} is VALID [2022-02-20 20:59:57,186 INFO L290 TraceCheckUtils]: 26: Hoare triple {10944#(<= |ULTIMATE.start_main_~i~0#1| 9)} [229] L724-5-->L723-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet3#1] {10944#(<= |ULTIMATE.start_main_~i~0#1| 9)} is VALID [2022-02-20 20:59:57,187 INFO L290 TraceCheckUtils]: 25: Hoare triple {10944#(<= |ULTIMATE.start_main_~i~0#1| 9)} [276] L724-4-->L724-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {10944#(<= |ULTIMATE.start_main_~i~0#1| 9)} is VALID [2022-02-20 20:59:57,190 INFO L290 TraceCheckUtils]: 24: Hoare triple {10944#(<= |ULTIMATE.start_main_~i~0#1| 9)} [296] L724-3-->threadENTRY: Formula: (and (= |v_ULTIMATE.start_main_~i~0#1_17| |v_threadThread1of3ForFork0_#in~arg.offset_4|) (= v_threadThread1of3ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre2#1_14|) (= |v_threadThread1of3ForFork0_#in~arg.base_4| 0)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_17|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_14|} OutVars{threadThread1of3ForFork0_#res.base=|v_threadThread1of3ForFork0_#res.base_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_17|, threadThread1of3ForFork0_#in~arg.base=|v_threadThread1of3ForFork0_#in~arg.base_4|, threadThread1of3ForFork0_#res.offset=|v_threadThread1of3ForFork0_#res.offset_4|, threadThread1of3ForFork0_~thread~0=v_threadThread1of3ForFork0_~thread~0_6, threadThread1of3ForFork0_thidvar0=v_threadThread1of3ForFork0_thidvar0_2, threadThread1of3ForFork0_#in~arg.offset=|v_threadThread1of3ForFork0_#in~arg.offset_4|, threadThread1of3ForFork0_~arg.base=v_threadThread1of3ForFork0_~arg.base_6, threadThread1of3ForFork0_~arg.offset=v_threadThread1of3ForFork0_~arg.offset_6, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_14|} AuxVars[] AssignedVars[threadThread1of3ForFork0_#res.base, threadThread1of3ForFork0_#in~arg.base, threadThread1of3ForFork0_#res.offset, threadThread1of3ForFork0_~thread~0, threadThread1of3ForFork0_thidvar0, threadThread1of3ForFork0_#in~arg.offset, threadThread1of3ForFork0_~arg.base, threadThread1of3ForFork0_~arg.offset] {10944#(<= |ULTIMATE.start_main_~i~0#1| 9)} is VALID [2022-02-20 20:59:57,191 INFO L290 TraceCheckUtils]: 23: Hoare triple {10944#(<= |ULTIMATE.start_main_~i~0#1| 9)} [231] L724-2-->L724-3: Formula: (= (store |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3| (store (select |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3|) (+ |v_ULTIMATE.start_main_~#t~0#1.offset_3| (* |v_ULTIMATE.start_main_~i~0#1_5| 4)) |v_ULTIMATE.start_main_#t~pre2#1_3|)) |v_#memory_int_4|) InVars {#memory_int=|v_#memory_int_5|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} OutVars{#memory_int=|v_#memory_int_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} AuxVars[] AssignedVars[#memory_int] {10944#(<= |ULTIMATE.start_main_~i~0#1| 9)} is VALID [2022-02-20 20:59:57,191 INFO L290 TraceCheckUtils]: 22: Hoare triple {10944#(<= |ULTIMATE.start_main_~i~0#1| 9)} [266] L724-1-->L724-2: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] {10944#(<= |ULTIMATE.start_main_~i~0#1| 9)} is VALID [2022-02-20 20:59:57,192 INFO L290 TraceCheckUtils]: 21: Hoare triple {10944#(<= |ULTIMATE.start_main_~i~0#1| 9)} [240] L724-->L724-1: Formula: (= |v_ULTIMATE.start_main_#t~pre2#1_2| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {10944#(<= |ULTIMATE.start_main_~i~0#1| 9)} is VALID [2022-02-20 20:59:57,192 INFO L290 TraceCheckUtils]: 20: Hoare triple {10944#(<= |ULTIMATE.start_main_~i~0#1| 9)} [244] L723-5-->L724: Formula: (<= |v_ULTIMATE.start_main_~i~0#1_4| 10) 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[] {10944#(<= |ULTIMATE.start_main_~i~0#1| 9)} is VALID [2022-02-20 20:59:57,192 INFO L290 TraceCheckUtils]: 19: Hoare triple {10803#true} [275] L722-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_2| 1) InVars {} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {10944#(<= |ULTIMATE.start_main_~i~0#1| 9)} is VALID [2022-02-20 20:59:57,192 INFO L290 TraceCheckUtils]: 18: Hoare triple {10803#true} [263] L719-1-->L722: Formula: (= v_~x~0_2 0) InVars {} OutVars{~x~0=v_~x~0_2} AuxVars[] AssignedVars[~x~0] {10803#true} is VALID [2022-02-20 20:59:57,192 INFO L290 TraceCheckUtils]: 17: Hoare triple {10803#true} [224] L719-->L719-1: Formula: (and (not (= |v_ULTIMATE.start_main_~#t~0#1.base_2| 0)) (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#t~0#1.base_2|) (= (store |v_#length_4| |v_ULTIMATE.start_main_~#t~0#1.base_2| 44) |v_#length_3|) (= |v_ULTIMATE.start_main_~#t~0#1.offset_2| 0) (= |v_#valid_4| (store |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2| 1)) (= (select |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_4|, #valid=|v_#valid_5|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_3|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_2|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_2|, #valid=|v_#valid_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#t~0#1.offset, #valid, #length, ULTIMATE.start_main_~#t~0#1.base] {10803#true} is VALID [2022-02-20 20:59:57,193 INFO L290 TraceCheckUtils]: 16: Hoare triple {10803#true} [278] L718-1-->L719: Formula: (and (= |v_ULTIMATE.start_main_~argv#1.offset_2| |v_ULTIMATE.start_main_#in~argv#1.offset_2|) (= |v_ULTIMATE.start_main_#in~argv#1.base_2| |v_ULTIMATE.start_main_~argv#1.base_2|)) InVars {ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|} OutVars{ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~argv#1.offset] {10803#true} is VALID [2022-02-20 20:59:57,193 INFO L290 TraceCheckUtils]: 15: Hoare triple {10803#true} [241] L718-->L718-1: Formula: (= |v_ULTIMATE.start_main_#in~argc#1_2| |v_ULTIMATE.start_main_~argc#1_2|) InVars {ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_2|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1] {10803#true} is VALID [2022-02-20 20:59:57,193 INFO L290 TraceCheckUtils]: 14: Hoare triple {10803#true} [232] L-1-7-->L718: Formula: true InVars {} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_1|, ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_1|, ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_1|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_1|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_1|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_1|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_1|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_1|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_1|, ULTIMATE.start_main_#t~mem5#1=|v_ULTIMATE.start_main_#t~mem5#1_1|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~1#1, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1, ULTIMATE.start_main_~#t~0#1.offset, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_#t~mem5#1, ULTIMATE.start_main_~#t~0#1.base, ULTIMATE.start_main_#t~pre2#1] {10803#true} is VALID [2022-02-20 20:59:57,193 INFO L290 TraceCheckUtils]: 13: Hoare triple {10803#true} [256] L-1-6-->L-1-7: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1] {10803#true} is VALID [2022-02-20 20:59:57,193 INFO L290 TraceCheckUtils]: 12: Hoare triple {10803#true} [236] L-1-5-->L-1-6: Formula: (and (= |v_ULTIMATE.start_#in~argv#1.offset_1| |v_ULTIMATE.start_main_#in~argv#1.offset_1|) (= |v_ULTIMATE.start_main_#in~argv#1.base_1| |v_ULTIMATE.start_#in~argv#1.base_1|) (= |v_ULTIMATE.start_main_#in~argc#1_1| |v_ULTIMATE.start_#in~argc#1_1|)) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} OutVars{ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_1|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_1|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_#in~argv#1.offset] {10803#true} is VALID [2022-02-20 20:59:57,193 INFO L290 TraceCheckUtils]: 11: Hoare triple {10803#true} [257] L-1-4-->L-1-5: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10803#true} is VALID [2022-02-20 20:59:57,193 INFO L290 TraceCheckUtils]: 10: Hoare triple {10803#true} [274] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10803#true} is VALID [2022-02-20 20:59:57,193 INFO L290 TraceCheckUtils]: 9: Hoare triple {10803#true} [252] L16-5-->L-1-3: Formula: (= v_~x~0_1 0) InVars {} OutVars{~x~0=v_~x~0_1} AuxVars[] AssignedVars[~x~0] {10803#true} is VALID [2022-02-20 20:59:57,194 INFO L290 TraceCheckUtils]: 8: Hoare triple {10803#true} [262] L16-4-->L16-5: Formula: (= (select (select |v_#memory_int_3| 2) 0) 0) InVars {#memory_int=|v_#memory_int_3|} OutVars{#memory_int=|v_#memory_int_3|} AuxVars[] AssignedVars[] {10803#true} is VALID [2022-02-20 20:59:57,194 INFO L290 TraceCheckUtils]: 7: Hoare triple {10803#true} [259] L16-3-->L16-4: Formula: (and (= (select |v_#valid_3| 2) 1) (= (select |v_#length_2| 2) 1)) InVars {#length=|v_#length_2|, #valid=|v_#valid_3|} OutVars{#length=|v_#length_2|, #valid=|v_#valid_3|} AuxVars[] AssignedVars[] {10803#true} is VALID [2022-02-20 20:59:57,194 INFO L290 TraceCheckUtils]: 6: Hoare triple {10803#true} [277] L16-2-->L16-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[] {10803#true} is VALID [2022-02-20 20:59:57,194 INFO L290 TraceCheckUtils]: 5: Hoare triple {10803#true} [222] L16-1-->L16-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[] {10803#true} is VALID [2022-02-20 20:59:57,194 INFO L290 TraceCheckUtils]: 4: Hoare triple {10803#true} [254] L16-->L16-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[] {10803#true} is VALID [2022-02-20 20:59:57,194 INFO L290 TraceCheckUtils]: 3: Hoare triple {10803#true} [273] L-1-2-->L16: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {10803#true} is VALID [2022-02-20 20:59:57,194 INFO L290 TraceCheckUtils]: 2: Hoare triple {10803#true} [272] 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[] {10803#true} is VALID [2022-02-20 20:59:57,195 INFO L290 TraceCheckUtils]: 1: Hoare triple {10803#true} [255] 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] {10803#true} is VALID [2022-02-20 20:59:57,195 INFO L290 TraceCheckUtils]: 0: Hoare triple {10803#true} [265] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10803#true} is VALID [2022-02-20 20:59:57,195 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:59:57,195 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [359827616] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 20:59:57,195 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 20:59:57,195 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5, 5] total 10 [2022-02-20 20:59:57,195 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [749652892] [2022-02-20 20:59:57,196 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 20:59:57,196 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 5.8) internal successors, (58), 10 states have internal predecessors, (58), 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 36 [2022-02-20 20:59:57,196 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 20:59:57,196 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 5.8) internal successors, (58), 10 states have internal predecessors, (58), 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:59:57,248 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:59:57,248 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-02-20 20:59:57,248 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 20:59:57,249 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-02-20 20:59:57,249 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=30, Invalid=60, Unknown=0, NotChecked=0, Total=90 [2022-02-20 20:59:57,250 INFO L499 CegarLoopForPetriNet]: Number of universal loopers: 55 out of 73 [2022-02-20 20:59:57,250 INFO L92 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 64 places, 55 transitions, 153 flow. Second operand has 10 states, 10 states have (on average 57.3) internal successors, (573), 10 states have internal predecessors, (573), 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:59:57,251 INFO L101 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-02-20 20:59:57,251 INFO L102 encePairwiseOnDemand]: Number of universal subtrahend loopers: 55 of 73 [2022-02-20 20:59:57,251 INFO L74 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-02-20 20:59:57,372 INFO L129 PetriNetUnfolder]: 14/115 cut-off events. [2022-02-20 20:59:57,372 INFO L130 PetriNetUnfolder]: For 4/4 co-relation queries the response was YES. [2022-02-20 20:59:57,373 INFO L84 FinitePrefix]: Finished finitePrefix Result has 193 conditions, 115 events. 14/115 cut-off events. For 4/4 co-relation queries the response was YES. Maximal size of possible extension queue 10. Compared 230 event pairs, 6 based on Foata normal form. 2/112 useless extension candidates. Maximal degree in co-relation 184. Up to 29 conditions per place. [2022-02-20 20:59:57,374 INFO L132 encePairwiseOnDemand]: 67/73 looper letters, 13 selfloop transitions, 9 changer transitions 0/65 dead transitions. [2022-02-20 20:59:57,374 INFO L138 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 72 places, 65 transitions, 219 flow [2022-02-20 20:59:57,374 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 20:59:57,374 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 9 states. [2022-02-20 20:59:57,379 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 519 transitions. [2022-02-20 20:59:57,380 INFO L544 CegarLoopForPetriNet]: DFA transition density 0.7899543378995434 [2022-02-20 20:59:57,380 INFO L72 ComplementDD]: Start complementDD. Operand 9 states and 519 transitions. [2022-02-20 20:59:57,380 INFO L73 IsDeterministic]: Start isDeterministic. Operand 9 states and 519 transitions. [2022-02-20 20:59:57,380 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-02-20 20:59:57,380 INFO L117 ReachableStatesCopy]: Start reachableStatesCopy. Operand 9 states and 519 transitions. [2022-02-20 20:59:57,381 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends has 10 states, 9 states have (on average 57.666666666666664) internal successors, (519), 9 states have internal predecessors, (519), 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:59:57,383 INFO L131 ReachableStatesCopy]: Finished reachableStatesCopy Result has 10 states, 10 states have (on average 73.0) internal successors, (730), 10 states have internal predecessors, (730), 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:59:57,383 INFO L81 ComplementDD]: Finished complementDD. Result has 10 states, 10 states have (on average 73.0) internal successors, (730), 10 states have internal predecessors, (730), 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:59:57,383 INFO L186 Difference]: Start difference. First operand has 64 places, 55 transitions, 153 flow. Second operand 9 states and 519 transitions. [2022-02-20 20:59:57,383 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 72 places, 65 transitions, 219 flow [2022-02-20 20:59:57,433 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 71 places, 65 transitions, 215 flow, removed 0 selfloop flow, removed 1 redundant places. [2022-02-20 20:59:57,434 INFO L242 Difference]: Finished difference. Result has 74 places, 61 transitions, 199 flow [2022-02-20 20:59:57,434 INFO L317 CegarLoopForPetriNet]: {PETRI_ALPHABET=73, PETRI_DIFFERENCE_MINUEND_FLOW=149, PETRI_DIFFERENCE_MINUEND_PLACES=63, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=55, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=5, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=49, PETRI_DIFFERENCE_SUBTRAHEND_STATES=9, PETRI_FLOW=199, PETRI_PLACES=74, PETRI_TRANSITIONS=61} [2022-02-20 20:59:57,435 INFO L334 CegarLoopForPetriNet]: 58 programPoint places, 16 predicate places. [2022-02-20 20:59:57,435 INFO L111 iNet2FiniteAutomaton]: Start petriNet2FiniteAutomaton. Operand has 74 places, 61 transitions, 199 flow [2022-02-20 20:59:57,561 INFO L133 iNet2FiniteAutomaton]: Finished petriNet2FiniteAutomaton. Result has 3415 states, 3413 states have (on average 3.2953413419279225) internal successors, (11247), 3414 states have internal predecessors, (11247), 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:59:57,567 INFO L78 Accepts]: Start accepts. Automaton has has 3415 states, 3413 states have (on average 3.2953413419279225) internal successors, (11247), 3414 states have internal predecessors, (11247), 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 36 [2022-02-20 20:59:57,568 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 20:59:57,568 INFO L470 AbstractCegarLoop]: Abstraction has has 74 places, 61 transitions, 199 flow [2022-02-20 20:59:57,568 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 57.3) internal successors, (573), 10 states have internal predecessors, (573), 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:59:57,568 INFO L246 CegarLoopForPetriNet]: Found error trace [2022-02-20 20:59:57,569 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] [2022-02-20 20:59:57,595 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:59:57,791 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,SelfDestructingSolverStorable11 [2022-02-20 20:59:57,791 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr0INUSE_VIOLATION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATION] === [2022-02-20 20:59:57,791 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:59:57,792 INFO L85 PathProgramCache]: Analyzing trace with hash 176735389, now seen corresponding path program 1 times [2022-02-20 20:59:57,792 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:59:57,792 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1159076370] [2022-02-20 20:59:57,792 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:59:57,792 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:59:57,809 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-02-20 20:59:57,809 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-02-20 20:59:57,817 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-02-20 20:59:57,825 INFO L138 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-02-20 20:59:57,825 INFO L628 BasicCegarLoop]: Counterexample is feasible [2022-02-20 20:59:57,825 INFO L764 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0INUSE_VIOLATION (1 of 2 remaining) [2022-02-20 20:59:57,825 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 2 remaining) [2022-02-20 20:59:57,825 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable12 [2022-02-20 20:59:57,826 INFO L732 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1, 1] [2022-02-20 20:59:57,826 WARN L235 ceAbstractionStarter]: 3 thread instances were not sufficient, I will increase this number and restart the analysis [2022-02-20 20:59:57,826 INFO L534 ceAbstractionStarter]: Constructing petrified ICFG for 4 thread instances. [2022-02-20 20:59:57,838 WARN L322 ript$VariableManager]: TermVariabe |threadThread3of4ForFork0_#in~arg.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,838 WARN L322 ript$VariableManager]: TermVariabe |threadThread3of4ForFork0_#in~arg.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,838 WARN L322 ript$VariableManager]: TermVariabe threadThread3of4ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,838 WARN L322 ript$VariableManager]: TermVariabe threadThread3of4ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,838 WARN L322 ript$VariableManager]: TermVariabe |threadThread3of4ForFork0_#in~arg.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,838 WARN L322 ript$VariableManager]: TermVariabe |threadThread3of4ForFork0_#in~arg.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,838 WARN L322 ript$VariableManager]: TermVariabe threadThread3of4ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,838 WARN L322 ript$VariableManager]: TermVariabe threadThread3of4ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,839 WARN L322 ript$VariableManager]: TermVariabe threadThread3of4ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,839 WARN L322 ript$VariableManager]: TermVariabe threadThread3of4ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,839 WARN L322 ript$VariableManager]: TermVariabe threadThread3of4ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,839 WARN L322 ript$VariableManager]: TermVariabe threadThread3of4ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,839 WARN L322 ript$VariableManager]: TermVariabe threadThread3of4ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,839 WARN L322 ript$VariableManager]: TermVariabe threadThread3of4ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,839 WARN L322 ript$VariableManager]: TermVariabe threadThread3of4ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,839 WARN L322 ript$VariableManager]: TermVariabe threadThread3of4ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,839 WARN L322 ript$VariableManager]: TermVariabe |threadThread3of4ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,840 WARN L322 ript$VariableManager]: TermVariabe |threadThread3of4ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,840 WARN L322 ript$VariableManager]: TermVariabe |threadThread3of4ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,840 WARN L322 ript$VariableManager]: TermVariabe |threadThread3of4ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,840 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of4ForFork0_#in~arg.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,840 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of4ForFork0_#in~arg.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,840 WARN L322 ript$VariableManager]: TermVariabe threadThread1of4ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,840 WARN L322 ript$VariableManager]: TermVariabe threadThread1of4ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,840 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of4ForFork0_#in~arg.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,840 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of4ForFork0_#in~arg.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,840 WARN L322 ript$VariableManager]: TermVariabe threadThread1of4ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,841 WARN L322 ript$VariableManager]: TermVariabe threadThread1of4ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,841 WARN L322 ript$VariableManager]: TermVariabe threadThread1of4ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,841 WARN L322 ript$VariableManager]: TermVariabe threadThread1of4ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,841 WARN L322 ript$VariableManager]: TermVariabe threadThread1of4ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,841 WARN L322 ript$VariableManager]: TermVariabe threadThread1of4ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,841 WARN L322 ript$VariableManager]: TermVariabe threadThread1of4ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,841 WARN L322 ript$VariableManager]: TermVariabe threadThread1of4ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,841 WARN L322 ript$VariableManager]: TermVariabe threadThread1of4ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,841 WARN L322 ript$VariableManager]: TermVariabe threadThread1of4ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,841 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of4ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,841 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of4ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,842 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of4ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,842 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of4ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,842 WARN L322 ript$VariableManager]: TermVariabe |threadThread2of4ForFork0_#in~arg.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,842 WARN L322 ript$VariableManager]: TermVariabe |threadThread2of4ForFork0_#in~arg.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,842 WARN L322 ript$VariableManager]: TermVariabe threadThread2of4ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,842 WARN L322 ript$VariableManager]: TermVariabe threadThread2of4ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,842 WARN L322 ript$VariableManager]: TermVariabe |threadThread2of4ForFork0_#in~arg.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,842 WARN L322 ript$VariableManager]: TermVariabe |threadThread2of4ForFork0_#in~arg.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,842 WARN L322 ript$VariableManager]: TermVariabe threadThread2of4ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,842 WARN L322 ript$VariableManager]: TermVariabe threadThread2of4ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,843 WARN L322 ript$VariableManager]: TermVariabe threadThread2of4ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,843 WARN L322 ript$VariableManager]: TermVariabe threadThread2of4ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,843 WARN L322 ript$VariableManager]: TermVariabe threadThread2of4ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,843 WARN L322 ript$VariableManager]: TermVariabe threadThread2of4ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,843 WARN L322 ript$VariableManager]: TermVariabe threadThread2of4ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,843 WARN L322 ript$VariableManager]: TermVariabe threadThread2of4ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,843 WARN L322 ript$VariableManager]: TermVariabe threadThread2of4ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,843 WARN L322 ript$VariableManager]: TermVariabe threadThread2of4ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,843 WARN L322 ript$VariableManager]: TermVariabe |threadThread2of4ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,843 WARN L322 ript$VariableManager]: TermVariabe |threadThread2of4ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,844 WARN L322 ript$VariableManager]: TermVariabe |threadThread2of4ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,844 WARN L322 ript$VariableManager]: TermVariabe |threadThread2of4ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,844 WARN L322 ript$VariableManager]: TermVariabe |threadThread4of4ForFork0_#in~arg.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,844 WARN L322 ript$VariableManager]: TermVariabe |threadThread4of4ForFork0_#in~arg.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,844 WARN L322 ript$VariableManager]: TermVariabe threadThread4of4ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,844 WARN L322 ript$VariableManager]: TermVariabe threadThread4of4ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,844 WARN L322 ript$VariableManager]: TermVariabe |threadThread4of4ForFork0_#in~arg.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,844 WARN L322 ript$VariableManager]: TermVariabe |threadThread4of4ForFork0_#in~arg.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,844 WARN L322 ript$VariableManager]: TermVariabe threadThread4of4ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,844 WARN L322 ript$VariableManager]: TermVariabe threadThread4of4ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,845 WARN L322 ript$VariableManager]: TermVariabe threadThread4of4ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,845 WARN L322 ript$VariableManager]: TermVariabe threadThread4of4ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,845 WARN L322 ript$VariableManager]: TermVariabe threadThread4of4ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,845 WARN L322 ript$VariableManager]: TermVariabe threadThread4of4ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,845 WARN L322 ript$VariableManager]: TermVariabe threadThread4of4ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,845 WARN L322 ript$VariableManager]: TermVariabe threadThread4of4ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,845 WARN L322 ript$VariableManager]: TermVariabe threadThread4of4ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,845 WARN L322 ript$VariableManager]: TermVariabe threadThread4of4ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,845 WARN L322 ript$VariableManager]: TermVariabe |threadThread4of4ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,846 WARN L322 ript$VariableManager]: TermVariabe |threadThread4of4ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,846 WARN L322 ript$VariableManager]: TermVariabe |threadThread4of4ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,846 WARN L322 ript$VariableManager]: TermVariabe |threadThread4of4ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,846 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of4ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,846 WARN L322 ript$VariableManager]: TermVariabe threadThread1of4ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,846 WARN L322 ript$VariableManager]: TermVariabe |threadThread1of4ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,846 WARN L322 ript$VariableManager]: TermVariabe threadThread1of4ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,847 WARN L322 ript$VariableManager]: TermVariabe threadThread1of4ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,847 WARN L322 ript$VariableManager]: TermVariabe threadThread2of4ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,847 WARN L322 ript$VariableManager]: TermVariabe |threadThread2of4ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,847 WARN L322 ript$VariableManager]: TermVariabe threadThread2of4ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,847 WARN L322 ript$VariableManager]: TermVariabe threadThread2of4ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,847 WARN L322 ript$VariableManager]: TermVariabe |threadThread2of4ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,848 WARN L322 ript$VariableManager]: TermVariabe threadThread3of4ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,848 WARN L322 ript$VariableManager]: TermVariabe threadThread3of4ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,848 WARN L322 ript$VariableManager]: TermVariabe |threadThread3of4ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,848 WARN L322 ript$VariableManager]: TermVariabe threadThread3of4ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,848 WARN L322 ript$VariableManager]: TermVariabe |threadThread3of4ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,848 WARN L322 ript$VariableManager]: TermVariabe |threadThread4of4ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,849 WARN L322 ript$VariableManager]: TermVariabe threadThread4of4ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,849 WARN L322 ript$VariableManager]: TermVariabe threadThread4of4ForFork0_~thread~0 not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,849 WARN L322 ript$VariableManager]: TermVariabe |threadThread4of4ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,849 WARN L322 ript$VariableManager]: TermVariabe threadThread4of4ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:59:57,857 INFO L148 ThreadInstanceAdder]: Constructed 4 joinOtherThreadTransitions. [2022-02-20 20:59:57,858 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 20:59:57,859 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:59:57,859 INFO L340 AbstractCegarLoop]: Starting to check reachability of 2 error locations. [2022-02-20 20:59:57,859 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 82 places, 80 transitions, 204 flow [2022-02-20 20:59:57,888 INFO L129 PetriNetUnfolder]: 47/377 cut-off events. [2022-02-20 20:59:57,888 INFO L130 PetriNetUnfolder]: For 48/48 co-relation queries the response was YES. [2022-02-20 20:59:57,889 INFO L84 FinitePrefix]: Finished finitePrefix Result has 432 conditions, 377 events. 47/377 cut-off events. For 48/48 co-relation queries the response was YES. Maximal size of possible extension queue 10. Compared 1165 event pairs, 6 based on Foata normal form. 0/325 useless extension candidates. Maximal degree in co-relation 242. Up to 32 conditions per place. [2022-02-20 20:59:57,889 INFO L82 GeneralOperation]: Start removeDead. Operand has 82 places, 80 transitions, 204 flow [2022-02-20 20:59:57,889 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 66 places, 58 transitions, 148 flow [2022-02-20 20:59:57,891 INFO L129 PetriNetUnfolder]: 1/26 cut-off events. [2022-02-20 20:59:57,891 INFO L130 PetriNetUnfolder]: For 0/0 co-relation queries the response was YES. [2022-02-20 20:59:57,891 INFO L246 CegarLoopForPetriNet]: Found error trace [2022-02-20 20:59:57,891 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] [2022-02-20 20:59:57,891 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATION] === [2022-02-20 20:59:57,892 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:59:57,892 INFO L85 PathProgramCache]: Analyzing trace with hash -2143368340, now seen corresponding path program 1 times [2022-02-20 20:59:57,892 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:59:57,892 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [354900305] [2022-02-20 20:59:57,892 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:59:57,892 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:59:57,899 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:59:57,909 INFO L290 TraceCheckUtils]: 0: Hoare triple {85#true} [345] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {85#true} is VALID [2022-02-20 20:59:57,910 INFO L290 TraceCheckUtils]: 1: Hoare triple {85#true} [335] 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] {85#true} is VALID [2022-02-20 20:59:57,910 INFO L290 TraceCheckUtils]: 2: Hoare triple {85#true} [352] 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[] {85#true} is VALID [2022-02-20 20:59:57,910 INFO L290 TraceCheckUtils]: 3: Hoare triple {85#true} [353] L-1-2-->L16: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {85#true} is VALID [2022-02-20 20:59:57,910 INFO L290 TraceCheckUtils]: 4: Hoare triple {85#true} [334] L16-->L16-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[] {85#true} is VALID [2022-02-20 20:59:57,910 INFO L290 TraceCheckUtils]: 5: Hoare triple {85#true} [302] L16-1-->L16-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[] {85#true} is VALID [2022-02-20 20:59:57,910 INFO L290 TraceCheckUtils]: 6: Hoare triple {85#true} [357] L16-2-->L16-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[] {85#true} is VALID [2022-02-20 20:59:57,910 INFO L290 TraceCheckUtils]: 7: Hoare triple {85#true} [339] L16-3-->L16-4: Formula: (and (= (select |v_#valid_3| 2) 1) (= (select |v_#length_2| 2) 1)) InVars {#length=|v_#length_2|, #valid=|v_#valid_3|} OutVars{#length=|v_#length_2|, #valid=|v_#valid_3|} AuxVars[] AssignedVars[] {85#true} is VALID [2022-02-20 20:59:57,910 INFO L290 TraceCheckUtils]: 8: Hoare triple {85#true} [342] L16-4-->L16-5: Formula: (= (select (select |v_#memory_int_3| 2) 0) 0) InVars {#memory_int=|v_#memory_int_3|} OutVars{#memory_int=|v_#memory_int_3|} AuxVars[] AssignedVars[] {85#true} is VALID [2022-02-20 20:59:57,910 INFO L290 TraceCheckUtils]: 9: Hoare triple {85#true} [332] L16-5-->L-1-3: Formula: (= v_~x~0_1 0) InVars {} OutVars{~x~0=v_~x~0_1} AuxVars[] AssignedVars[~x~0] {85#true} is VALID [2022-02-20 20:59:57,911 INFO L290 TraceCheckUtils]: 10: Hoare triple {85#true} [354] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {85#true} is VALID [2022-02-20 20:59:57,911 INFO L290 TraceCheckUtils]: 11: Hoare triple {85#true} [337] L-1-4-->L-1-5: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {85#true} is VALID [2022-02-20 20:59:57,911 INFO L290 TraceCheckUtils]: 12: Hoare triple {85#true} [316] L-1-5-->L-1-6: Formula: (and (= |v_ULTIMATE.start_#in~argv#1.offset_1| |v_ULTIMATE.start_main_#in~argv#1.offset_1|) (= |v_ULTIMATE.start_main_#in~argv#1.base_1| |v_ULTIMATE.start_#in~argv#1.base_1|) (= |v_ULTIMATE.start_main_#in~argc#1_1| |v_ULTIMATE.start_#in~argc#1_1|)) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} OutVars{ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_1|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_1|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_#in~argv#1.offset] {85#true} is VALID [2022-02-20 20:59:57,911 INFO L290 TraceCheckUtils]: 13: Hoare triple {85#true} [336] L-1-6-->L-1-7: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1] {85#true} is VALID [2022-02-20 20:59:57,911 INFO L290 TraceCheckUtils]: 14: Hoare triple {85#true} [312] L-1-7-->L718: Formula: true InVars {} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_1|, ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_1|, ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_1|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_1|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_1|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_1|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_1|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_1|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_1|, ULTIMATE.start_main_#t~mem5#1=|v_ULTIMATE.start_main_#t~mem5#1_1|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~1#1, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1, ULTIMATE.start_main_~#t~0#1.offset, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_#t~mem5#1, ULTIMATE.start_main_~#t~0#1.base, ULTIMATE.start_main_#t~pre2#1] {85#true} is VALID [2022-02-20 20:59:57,911 INFO L290 TraceCheckUtils]: 15: Hoare triple {85#true} [321] L718-->L718-1: Formula: (= |v_ULTIMATE.start_main_#in~argc#1_2| |v_ULTIMATE.start_main_~argc#1_2|) InVars {ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_2|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1] {85#true} is VALID [2022-02-20 20:59:57,911 INFO L290 TraceCheckUtils]: 16: Hoare triple {85#true} [358] L718-1-->L719: Formula: (and (= |v_ULTIMATE.start_main_~argv#1.offset_2| |v_ULTIMATE.start_main_#in~argv#1.offset_2|) (= |v_ULTIMATE.start_main_#in~argv#1.base_2| |v_ULTIMATE.start_main_~argv#1.base_2|)) InVars {ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|} OutVars{ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~argv#1.offset] {85#true} is VALID [2022-02-20 20:59:57,912 INFO L290 TraceCheckUtils]: 17: Hoare triple {85#true} [304] L719-->L719-1: Formula: (and (not (= |v_ULTIMATE.start_main_~#t~0#1.base_2| 0)) (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#t~0#1.base_2|) (= (store |v_#length_4| |v_ULTIMATE.start_main_~#t~0#1.base_2| 44) |v_#length_3|) (= |v_ULTIMATE.start_main_~#t~0#1.offset_2| 0) (= |v_#valid_4| (store |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2| 1)) (= (select |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_4|, #valid=|v_#valid_5|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_3|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_2|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_2|, #valid=|v_#valid_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#t~0#1.offset, #valid, #length, ULTIMATE.start_main_~#t~0#1.base] {85#true} is VALID [2022-02-20 20:59:57,912 INFO L290 TraceCheckUtils]: 18: Hoare triple {85#true} [343] L719-1-->L722: Formula: (= v_~x~0_2 0) InVars {} OutVars{~x~0=v_~x~0_2} AuxVars[] AssignedVars[~x~0] {85#true} is VALID [2022-02-20 20:59:57,912 INFO L290 TraceCheckUtils]: 19: Hoare triple {85#true} [355] L722-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_2| 1) InVars {} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {87#(= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 20:59:57,912 INFO L290 TraceCheckUtils]: 20: Hoare triple {87#(= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} [323] L723-5-->L723-6: Formula: (not (<= |v_ULTIMATE.start_main_~i~0#1_3| 10)) 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[] {86#false} is VALID [2022-02-20 20:59:57,913 INFO L290 TraceCheckUtils]: 21: Hoare triple {86#false} [307] L723-6-->L727: Formula: (not (< v_~x~0_4 11)) InVars {~x~0=v_~x~0_4} OutVars{~x~0=v_~x~0_4} AuxVars[] AssignedVars[] {86#false} is VALID [2022-02-20 20:59:57,913 INFO L290 TraceCheckUtils]: 22: Hoare triple {86#false} [314] L727-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {86#false} is VALID [2022-02-20 20:59:57,913 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:59:57,913 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 20:59:57,913 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [354900305] [2022-02-20 20:59:57,913 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [354900305] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 20:59:57,913 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 20:59:57,913 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 20:59:57,914 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [391184256] [2022-02-20 20:59:57,914 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 20:59:57,914 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 7.666666666666667) internal successors, (23), 3 states have internal predecessors, (23), 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 23 [2022-02-20 20:59:57,914 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 20:59:57,914 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 7.666666666666667) internal successors, (23), 3 states have internal predecessors, (23), 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:59:57,929 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 23 edges. 23 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:59:57,929 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 20:59:57,929 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 20:59:57,930 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 20:59:57,930 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 20:59:57,930 INFO L499 CegarLoopForPetriNet]: Number of universal loopers: 61 out of 80 [2022-02-20 20:59:57,931 INFO L92 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 66 places, 58 transitions, 148 flow. Second operand has 3 states, 3 states have (on average 62.0) internal successors, (186), 3 states have internal predecessors, (186), 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:59:57,931 INFO L101 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-02-20 20:59:57,931 INFO L102 encePairwiseOnDemand]: Number of universal subtrahend loopers: 61 of 80 [2022-02-20 20:59:57,931 INFO L74 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-02-20 20:59:58,013 INFO L129 PetriNetUnfolder]: 0/97 cut-off events. [2022-02-20 20:59:58,013 INFO L130 PetriNetUnfolder]: For 16/16 co-relation queries the response was YES. [2022-02-20 20:59:58,013 INFO L84 FinitePrefix]: Finished finitePrefix Result has 149 conditions, 97 events. 0/97 cut-off events. For 16/16 co-relation queries the response was YES. Maximal size of possible extension queue 3. Compared 68 event pairs, 0 based on Foata normal form. 0/93 useless extension candidates. Maximal degree in co-relation 0. Up to 24 conditions per place. [2022-02-20 20:59:58,014 INFO L132 encePairwiseOnDemand]: 76/80 looper letters, 13 selfloop transitions, 2 changer transitions 0/61 dead transitions. [2022-02-20 20:59:58,014 INFO L138 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 68 places, 61 transitions, 184 flow [2022-02-20 20:59:58,014 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 20:59:58,014 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2022-02-20 20:59:58,017 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 201 transitions. [2022-02-20 20:59:58,017 INFO L544 CegarLoopForPetriNet]: DFA transition density 0.8375 [2022-02-20 20:59:58,017 INFO L72 ComplementDD]: Start complementDD. Operand 3 states and 201 transitions. [2022-02-20 20:59:58,017 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3 states and 201 transitions. [2022-02-20 20:59:58,017 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-02-20 20:59:58,018 INFO L117 ReachableStatesCopy]: Start reachableStatesCopy. Operand 3 states and 201 transitions. [2022-02-20 20:59:58,018 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends has 4 states, 3 states have (on average 67.0) internal successors, (201), 3 states have internal predecessors, (201), 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:59:58,019 INFO L131 ReachableStatesCopy]: Finished reachableStatesCopy Result has 4 states, 4 states have (on average 80.0) internal successors, (320), 4 states have internal predecessors, (320), 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:59:58,019 INFO L81 ComplementDD]: Finished complementDD. Result has 4 states, 4 states have (on average 80.0) internal successors, (320), 4 states have internal predecessors, (320), 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:59:58,019 INFO L186 Difference]: Start difference. First operand has 66 places, 58 transitions, 148 flow. Second operand 3 states and 201 transitions. [2022-02-20 20:59:58,019 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 68 places, 61 transitions, 184 flow [2022-02-20 20:59:58,020 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 68 places, 61 transitions, 172 flow, removed 6 selfloop flow, removed 0 redundant places. [2022-02-20 20:59:58,021 INFO L242 Difference]: Finished difference. Result has 69 places, 58 transitions, 146 flow [2022-02-20 20:59:58,021 INFO L317 CegarLoopForPetriNet]: {PETRI_ALPHABET=80, PETRI_DIFFERENCE_MINUEND_FLOW=134, PETRI_DIFFERENCE_MINUEND_PLACES=66, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=57, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=55, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=146, PETRI_PLACES=69, PETRI_TRANSITIONS=58} [2022-02-20 20:59:58,022 INFO L334 CegarLoopForPetriNet]: 66 programPoint places, 3 predicate places. [2022-02-20 20:59:58,022 INFO L111 iNet2FiniteAutomaton]: Start petriNet2FiniteAutomaton. Operand has 69 places, 58 transitions, 146 flow [2022-02-20 20:59:58,588 INFO L133 iNet2FiniteAutomaton]: Finished petriNet2FiniteAutomaton. Result has 21523 states, 21518 states have (on average 4.116181801282647) internal successors, (88572), 21522 states have internal predecessors, (88572), 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:59:58,643 INFO L78 Accepts]: Start accepts. Automaton has has 21523 states, 21518 states have (on average 4.116181801282647) internal successors, (88572), 21522 states have internal predecessors, (88572), 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 23 [2022-02-20 20:59:58,644 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 20:59:58,644 INFO L470 AbstractCegarLoop]: Abstraction has has 69 places, 58 transitions, 146 flow [2022-02-20 20:59:58,644 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 62.0) internal successors, (186), 3 states have internal predecessors, (186), 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:59:58,644 INFO L246 CegarLoopForPetriNet]: Found error trace [2022-02-20 20:59:58,644 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] [2022-02-20 20:59:58,645 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable13 [2022-02-20 20:59:58,645 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATION] === [2022-02-20 20:59:58,645 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:59:58,645 INFO L85 PathProgramCache]: Analyzing trace with hash -184146753, now seen corresponding path program 1 times [2022-02-20 20:59:58,646 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:59:58,646 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [451836658] [2022-02-20 20:59:58,646 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:59:58,646 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:59:58,658 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:59:58,683 INFO L290 TraceCheckUtils]: 0: Hoare triple {21614#true} [345] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {21614#true} is VALID [2022-02-20 20:59:58,683 INFO L290 TraceCheckUtils]: 1: Hoare triple {21614#true} [335] 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] {21614#true} is VALID [2022-02-20 20:59:58,683 INFO L290 TraceCheckUtils]: 2: Hoare triple {21614#true} [352] 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[] {21614#true} is VALID [2022-02-20 20:59:58,683 INFO L290 TraceCheckUtils]: 3: Hoare triple {21614#true} [353] L-1-2-->L16: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {21614#true} is VALID [2022-02-20 20:59:58,684 INFO L290 TraceCheckUtils]: 4: Hoare triple {21614#true} [334] L16-->L16-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[] {21614#true} is VALID [2022-02-20 20:59:58,684 INFO L290 TraceCheckUtils]: 5: Hoare triple {21614#true} [302] L16-1-->L16-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[] {21614#true} is VALID [2022-02-20 20:59:58,684 INFO L290 TraceCheckUtils]: 6: Hoare triple {21614#true} [357] L16-2-->L16-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[] {21614#true} is VALID [2022-02-20 20:59:58,684 INFO L290 TraceCheckUtils]: 7: Hoare triple {21614#true} [339] L16-3-->L16-4: Formula: (and (= (select |v_#valid_3| 2) 1) (= (select |v_#length_2| 2) 1)) InVars {#length=|v_#length_2|, #valid=|v_#valid_3|} OutVars{#length=|v_#length_2|, #valid=|v_#valid_3|} AuxVars[] AssignedVars[] {21614#true} is VALID [2022-02-20 20:59:58,684 INFO L290 TraceCheckUtils]: 8: Hoare triple {21614#true} [342] L16-4-->L16-5: Formula: (= (select (select |v_#memory_int_3| 2) 0) 0) InVars {#memory_int=|v_#memory_int_3|} OutVars{#memory_int=|v_#memory_int_3|} AuxVars[] AssignedVars[] {21614#true} is VALID [2022-02-20 20:59:58,685 INFO L290 TraceCheckUtils]: 9: Hoare triple {21614#true} [332] L16-5-->L-1-3: Formula: (= v_~x~0_1 0) InVars {} OutVars{~x~0=v_~x~0_1} AuxVars[] AssignedVars[~x~0] {21614#true} is VALID [2022-02-20 20:59:58,685 INFO L290 TraceCheckUtils]: 10: Hoare triple {21614#true} [354] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {21614#true} is VALID [2022-02-20 20:59:58,685 INFO L290 TraceCheckUtils]: 11: Hoare triple {21614#true} [337] L-1-4-->L-1-5: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {21614#true} is VALID [2022-02-20 20:59:58,685 INFO L290 TraceCheckUtils]: 12: Hoare triple {21614#true} [316] L-1-5-->L-1-6: Formula: (and (= |v_ULTIMATE.start_#in~argv#1.offset_1| |v_ULTIMATE.start_main_#in~argv#1.offset_1|) (= |v_ULTIMATE.start_main_#in~argv#1.base_1| |v_ULTIMATE.start_#in~argv#1.base_1|) (= |v_ULTIMATE.start_main_#in~argc#1_1| |v_ULTIMATE.start_#in~argc#1_1|)) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} OutVars{ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_1|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_1|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_#in~argv#1.offset] {21614#true} is VALID [2022-02-20 20:59:58,685 INFO L290 TraceCheckUtils]: 13: Hoare triple {21614#true} [336] L-1-6-->L-1-7: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1] {21614#true} is VALID [2022-02-20 20:59:58,685 INFO L290 TraceCheckUtils]: 14: Hoare triple {21614#true} [312] L-1-7-->L718: Formula: true InVars {} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_1|, ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_1|, ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_1|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_1|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_1|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_1|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_1|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_1|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_1|, ULTIMATE.start_main_#t~mem5#1=|v_ULTIMATE.start_main_#t~mem5#1_1|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~1#1, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1, ULTIMATE.start_main_~#t~0#1.offset, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_#t~mem5#1, ULTIMATE.start_main_~#t~0#1.base, ULTIMATE.start_main_#t~pre2#1] {21614#true} is VALID [2022-02-20 20:59:58,686 INFO L290 TraceCheckUtils]: 15: Hoare triple {21614#true} [321] L718-->L718-1: Formula: (= |v_ULTIMATE.start_main_#in~argc#1_2| |v_ULTIMATE.start_main_~argc#1_2|) InVars {ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_2|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1] {21614#true} is VALID [2022-02-20 20:59:58,686 INFO L290 TraceCheckUtils]: 16: Hoare triple {21614#true} [358] L718-1-->L719: Formula: (and (= |v_ULTIMATE.start_main_~argv#1.offset_2| |v_ULTIMATE.start_main_#in~argv#1.offset_2|) (= |v_ULTIMATE.start_main_#in~argv#1.base_2| |v_ULTIMATE.start_main_~argv#1.base_2|)) InVars {ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|} OutVars{ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~argv#1.offset] {21614#true} is VALID [2022-02-20 20:59:58,686 INFO L290 TraceCheckUtils]: 17: Hoare triple {21614#true} [304] L719-->L719-1: Formula: (and (not (= |v_ULTIMATE.start_main_~#t~0#1.base_2| 0)) (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#t~0#1.base_2|) (= (store |v_#length_4| |v_ULTIMATE.start_main_~#t~0#1.base_2| 44) |v_#length_3|) (= |v_ULTIMATE.start_main_~#t~0#1.offset_2| 0) (= |v_#valid_4| (store |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2| 1)) (= (select |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_4|, #valid=|v_#valid_5|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_3|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_2|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_2|, #valid=|v_#valid_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#t~0#1.offset, #valid, #length, ULTIMATE.start_main_~#t~0#1.base] {21614#true} is VALID [2022-02-20 20:59:58,686 INFO L290 TraceCheckUtils]: 18: Hoare triple {21614#true} [343] L719-1-->L722: Formula: (= v_~x~0_2 0) InVars {} OutVars{~x~0=v_~x~0_2} AuxVars[] AssignedVars[~x~0] {21616#(= ~x~0 0)} is VALID [2022-02-20 20:59:58,687 INFO L290 TraceCheckUtils]: 19: Hoare triple {21616#(= ~x~0 0)} [355] L722-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_2| 1) InVars {} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {21616#(= ~x~0 0)} is VALID [2022-02-20 20:59:58,687 INFO L290 TraceCheckUtils]: 20: Hoare triple {21616#(= ~x~0 0)} [324] L723-5-->L724: Formula: (<= |v_ULTIMATE.start_main_~i~0#1_4| 10) 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[] {21616#(= ~x~0 0)} is VALID [2022-02-20 20:59:58,688 INFO L290 TraceCheckUtils]: 21: Hoare triple {21616#(= ~x~0 0)} [320] L724-->L724-1: Formula: (= |v_ULTIMATE.start_main_#t~pre2#1_2| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {21616#(= ~x~0 0)} is VALID [2022-02-20 20:59:58,688 INFO L290 TraceCheckUtils]: 22: Hoare triple {21616#(= ~x~0 0)} [346] L724-1-->L724-2: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] {21616#(= ~x~0 0)} is VALID [2022-02-20 20:59:58,688 INFO L290 TraceCheckUtils]: 23: Hoare triple {21616#(= ~x~0 0)} [311] L724-2-->L724-3: Formula: (= (store |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3| (store (select |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3|) (+ |v_ULTIMATE.start_main_~#t~0#1.offset_3| (* |v_ULTIMATE.start_main_~i~0#1_5| 4)) |v_ULTIMATE.start_main_#t~pre2#1_3|)) |v_#memory_int_4|) InVars {#memory_int=|v_#memory_int_5|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} OutVars{#memory_int=|v_#memory_int_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} AuxVars[] AssignedVars[#memory_int] {21616#(= ~x~0 0)} is VALID [2022-02-20 20:59:58,689 INFO L290 TraceCheckUtils]: 24: Hoare triple {21616#(= ~x~0 0)} [381] L724-3-->threadENTRY: Formula: (and (= |v_ULTIMATE.start_main_~i~0#1_25| |v_threadThread1of4ForFork0_#in~arg.offset_4|) (= |v_threadThread1of4ForFork0_#in~arg.base_4| 0) (= v_threadThread1of4ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre2#1_22|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_25|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_22|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_25|, threadThread1of4ForFork0_#res.base=|v_threadThread1of4ForFork0_#res.base_4|, threadThread1of4ForFork0_~arg.offset=v_threadThread1of4ForFork0_~arg.offset_6, threadThread1of4ForFork0_#res.offset=|v_threadThread1of4ForFork0_#res.offset_4|, threadThread1of4ForFork0_~arg.base=v_threadThread1of4ForFork0_~arg.base_6, threadThread1of4ForFork0_~thread~0=v_threadThread1of4ForFork0_~thread~0_6, threadThread1of4ForFork0_thidvar0=v_threadThread1of4ForFork0_thidvar0_2, threadThread1of4ForFork0_#in~arg.offset=|v_threadThread1of4ForFork0_#in~arg.offset_4|, threadThread1of4ForFork0_#in~arg.base=|v_threadThread1of4ForFork0_#in~arg.base_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_22|} AuxVars[] AssignedVars[threadThread1of4ForFork0_#res.base, threadThread1of4ForFork0_~arg.offset, threadThread1of4ForFork0_#res.offset, threadThread1of4ForFork0_~arg.base, threadThread1of4ForFork0_~thread~0, threadThread1of4ForFork0_thidvar0, threadThread1of4ForFork0_#in~arg.offset, threadThread1of4ForFork0_#in~arg.base] {21616#(= ~x~0 0)} is VALID [2022-02-20 20:59:58,689 INFO L290 TraceCheckUtils]: 25: Hoare triple {21616#(= ~x~0 0)} [356] L724-4-->L724-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {21616#(= ~x~0 0)} is VALID [2022-02-20 20:59:58,690 INFO L290 TraceCheckUtils]: 26: Hoare triple {21616#(= ~x~0 0)} [309] L724-5-->L723-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet3#1] {21616#(= ~x~0 0)} is VALID [2022-02-20 20:59:58,690 INFO L290 TraceCheckUtils]: 27: Hoare triple {21616#(= ~x~0 0)} [338] L723-2-->L723-3: Formula: (= |v_ULTIMATE.start_main_#t~post1#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_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_2|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {21616#(= ~x~0 0)} is VALID [2022-02-20 20:59:58,690 INFO L290 TraceCheckUtils]: 28: Hoare triple {21616#(= ~x~0 0)} [317] L723-3-->L723-4: Formula: (= (+ |v_ULTIMATE.start_main_#t~post1#1_3| 1) |v_ULTIMATE.start_main_~i~0#1_7|) InVars {ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_7|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {21616#(= ~x~0 0)} is VALID [2022-02-20 20:59:58,691 INFO L290 TraceCheckUtils]: 29: Hoare triple {21616#(= ~x~0 0)} [333] L723-4-->L723-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {21616#(= ~x~0 0)} is VALID [2022-02-20 20:59:58,691 INFO L290 TraceCheckUtils]: 30: Hoare triple {21616#(= ~x~0 0)} [323] L723-5-->L723-6: Formula: (not (<= |v_ULTIMATE.start_main_~i~0#1_3| 10)) 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[] {21616#(= ~x~0 0)} is VALID [2022-02-20 20:59:58,692 INFO L290 TraceCheckUtils]: 31: Hoare triple {21616#(= ~x~0 0)} [307] L723-6-->L727: Formula: (not (< v_~x~0_4 11)) InVars {~x~0=v_~x~0_4} OutVars{~x~0=v_~x~0_4} AuxVars[] AssignedVars[] {21615#false} is VALID [2022-02-20 20:59:58,692 INFO L290 TraceCheckUtils]: 32: Hoare triple {21615#false} [314] L727-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {21615#false} is VALID [2022-02-20 20:59:58,692 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 20:59:58,692 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 20:59:58,692 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [451836658] [2022-02-20 20:59:58,693 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [451836658] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 20:59:58,693 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 20:59:58,693 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 20:59:58,693 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1392686682] [2022-02-20 20:59:58,693 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 20:59:58,694 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 11.0) internal successors, (33), 3 states have internal predecessors, (33), 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 33 [2022-02-20 20:59:58,694 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 20:59:58,694 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 11.0) internal successors, (33), 3 states have internal predecessors, (33), 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:59:58,719 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:59:58,719 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 20:59:58,719 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 20:59:58,720 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 20:59:58,720 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 20:59:58,720 INFO L499 CegarLoopForPetriNet]: Number of universal loopers: 60 out of 80 [2022-02-20 20:59:58,721 INFO L92 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 69 places, 58 transitions, 146 flow. Second operand has 3 states, 3 states have (on average 61.333333333333336) internal successors, (184), 3 states have internal predecessors, (184), 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:59:58,721 INFO L101 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-02-20 20:59:58,721 INFO L102 encePairwiseOnDemand]: Number of universal subtrahend loopers: 60 of 80 [2022-02-20 20:59:58,721 INFO L74 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-02-20 20:59:58,811 INFO L129 PetriNetUnfolder]: 73/359 cut-off events. [2022-02-20 20:59:58,811 INFO L130 PetriNetUnfolder]: For 44/44 co-relation queries the response was YES. [2022-02-20 20:59:58,813 INFO L84 FinitePrefix]: Finished finitePrefix Result has 568 conditions, 359 events. 73/359 cut-off events. For 44/44 co-relation queries the response was YES. Maximal size of possible extension queue 23. Compared 1623 event pairs, 35 based on Foata normal form. 4/348 useless extension candidates. Maximal degree in co-relation 523. Up to 126 conditions per place. [2022-02-20 20:59:58,816 INFO L132 encePairwiseOnDemand]: 74/80 looper letters, 13 selfloop transitions, 5 changer transitions 0/65 dead transitions. [2022-02-20 20:59:58,816 INFO L138 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 71 places, 65 transitions, 211 flow [2022-02-20 20:59:58,816 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 20:59:58,816 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2022-02-20 20:59:58,819 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 199 transitions. [2022-02-20 20:59:58,819 INFO L544 CegarLoopForPetriNet]: DFA transition density 0.8291666666666667 [2022-02-20 20:59:58,819 INFO L72 ComplementDD]: Start complementDD. Operand 3 states and 199 transitions. [2022-02-20 20:59:58,819 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3 states and 199 transitions. [2022-02-20 20:59:58,819 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-02-20 20:59:58,820 INFO L117 ReachableStatesCopy]: Start reachableStatesCopy. Operand 3 states and 199 transitions. [2022-02-20 20:59:58,820 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends has 4 states, 3 states have (on average 66.33333333333333) internal successors, (199), 3 states have internal predecessors, (199), 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:59:58,821 INFO L131 ReachableStatesCopy]: Finished reachableStatesCopy Result has 4 states, 4 states have (on average 80.0) internal successors, (320), 4 states have internal predecessors, (320), 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:59:58,821 INFO L81 ComplementDD]: Finished complementDD. Result has 4 states, 4 states have (on average 80.0) internal successors, (320), 4 states have internal predecessors, (320), 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:59:58,821 INFO L186 Difference]: Start difference. First operand has 69 places, 58 transitions, 146 flow. Second operand 3 states and 199 transitions. [2022-02-20 20:59:58,821 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 71 places, 65 transitions, 211 flow [2022-02-20 20:59:58,824 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 70 places, 65 transitions, 209 flow, removed 0 selfloop flow, removed 1 redundant places. [2022-02-20 20:59:58,824 INFO L242 Difference]: Finished difference. Result has 71 places, 62 transitions, 177 flow [2022-02-20 20:59:58,825 INFO L317 CegarLoopForPetriNet]: {PETRI_ALPHABET=80, PETRI_DIFFERENCE_MINUEND_FLOW=144, PETRI_DIFFERENCE_MINUEND_PLACES=68, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=58, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=53, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=177, PETRI_PLACES=71, PETRI_TRANSITIONS=62} [2022-02-20 20:59:58,825 INFO L334 CegarLoopForPetriNet]: 66 programPoint places, 5 predicate places. [2022-02-20 20:59:58,825 INFO L111 iNet2FiniteAutomaton]: Start petriNet2FiniteAutomaton. Operand has 71 places, 62 transitions, 177 flow [2022-02-20 20:59:59,417 INFO L133 iNet2FiniteAutomaton]: Finished petriNet2FiniteAutomaton. Result has 21283 states, 21278 states have (on average 4.1112886549487735) internal successors, (87480), 21282 states have internal predecessors, (87480), 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:59:59,475 INFO L78 Accepts]: Start accepts. Automaton has has 21283 states, 21278 states have (on average 4.1112886549487735) internal successors, (87480), 21282 states have internal predecessors, (87480), 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 33 [2022-02-20 20:59:59,475 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 20:59:59,475 INFO L470 AbstractCegarLoop]: Abstraction has has 71 places, 62 transitions, 177 flow [2022-02-20 20:59:59,475 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 61.333333333333336) internal successors, (184), 3 states have internal predecessors, (184), 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:59:59,476 INFO L246 CegarLoopForPetriNet]: Found error trace [2022-02-20 20:59:59,476 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] [2022-02-20 20:59:59,476 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable14 [2022-02-20 20:59:59,476 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATION] === [2022-02-20 20:59:59,477 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:59:59,477 INFO L85 PathProgramCache]: Analyzing trace with hash -1187205763, now seen corresponding path program 1 times [2022-02-20 20:59:59,477 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:59:59,477 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2067012121] [2022-02-20 20:59:59,477 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:59:59,477 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:59:59,486 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:59:59,509 INFO L290 TraceCheckUtils]: 0: Hoare triple {42903#true} [345] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42903#true} is VALID [2022-02-20 20:59:59,510 INFO L290 TraceCheckUtils]: 1: Hoare triple {42903#true} [335] 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] {42903#true} is VALID [2022-02-20 20:59:59,510 INFO L290 TraceCheckUtils]: 2: Hoare triple {42903#true} [352] 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[] {42903#true} is VALID [2022-02-20 20:59:59,510 INFO L290 TraceCheckUtils]: 3: Hoare triple {42903#true} [353] L-1-2-->L16: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {42903#true} is VALID [2022-02-20 20:59:59,510 INFO L290 TraceCheckUtils]: 4: Hoare triple {42903#true} [334] L16-->L16-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[] {42903#true} is VALID [2022-02-20 20:59:59,510 INFO L290 TraceCheckUtils]: 5: Hoare triple {42903#true} [302] L16-1-->L16-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[] {42903#true} is VALID [2022-02-20 20:59:59,510 INFO L290 TraceCheckUtils]: 6: Hoare triple {42903#true} [357] L16-2-->L16-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[] {42903#true} is VALID [2022-02-20 20:59:59,511 INFO L290 TraceCheckUtils]: 7: Hoare triple {42903#true} [339] L16-3-->L16-4: Formula: (and (= (select |v_#valid_3| 2) 1) (= (select |v_#length_2| 2) 1)) InVars {#length=|v_#length_2|, #valid=|v_#valid_3|} OutVars{#length=|v_#length_2|, #valid=|v_#valid_3|} AuxVars[] AssignedVars[] {42903#true} is VALID [2022-02-20 20:59:59,511 INFO L290 TraceCheckUtils]: 8: Hoare triple {42903#true} [342] L16-4-->L16-5: Formula: (= (select (select |v_#memory_int_3| 2) 0) 0) InVars {#memory_int=|v_#memory_int_3|} OutVars{#memory_int=|v_#memory_int_3|} AuxVars[] AssignedVars[] {42903#true} is VALID [2022-02-20 20:59:59,511 INFO L290 TraceCheckUtils]: 9: Hoare triple {42903#true} [332] L16-5-->L-1-3: Formula: (= v_~x~0_1 0) InVars {} OutVars{~x~0=v_~x~0_1} AuxVars[] AssignedVars[~x~0] {42903#true} is VALID [2022-02-20 20:59:59,511 INFO L290 TraceCheckUtils]: 10: Hoare triple {42903#true} [354] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42903#true} is VALID [2022-02-20 20:59:59,511 INFO L290 TraceCheckUtils]: 11: Hoare triple {42903#true} [337] L-1-4-->L-1-5: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42903#true} is VALID [2022-02-20 20:59:59,511 INFO L290 TraceCheckUtils]: 12: Hoare triple {42903#true} [316] L-1-5-->L-1-6: Formula: (and (= |v_ULTIMATE.start_#in~argv#1.offset_1| |v_ULTIMATE.start_main_#in~argv#1.offset_1|) (= |v_ULTIMATE.start_main_#in~argv#1.base_1| |v_ULTIMATE.start_#in~argv#1.base_1|) (= |v_ULTIMATE.start_main_#in~argc#1_1| |v_ULTIMATE.start_#in~argc#1_1|)) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} OutVars{ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_1|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_1|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_#in~argv#1.offset] {42903#true} is VALID [2022-02-20 20:59:59,512 INFO L290 TraceCheckUtils]: 13: Hoare triple {42903#true} [336] L-1-6-->L-1-7: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1] {42903#true} is VALID [2022-02-20 20:59:59,512 INFO L290 TraceCheckUtils]: 14: Hoare triple {42903#true} [312] L-1-7-->L718: Formula: true InVars {} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_1|, ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_1|, ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_1|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_1|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_1|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_1|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_1|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_1|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_1|, ULTIMATE.start_main_#t~mem5#1=|v_ULTIMATE.start_main_#t~mem5#1_1|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~1#1, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1, ULTIMATE.start_main_~#t~0#1.offset, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_#t~mem5#1, ULTIMATE.start_main_~#t~0#1.base, ULTIMATE.start_main_#t~pre2#1] {42903#true} is VALID [2022-02-20 20:59:59,512 INFO L290 TraceCheckUtils]: 15: Hoare triple {42903#true} [321] L718-->L718-1: Formula: (= |v_ULTIMATE.start_main_#in~argc#1_2| |v_ULTIMATE.start_main_~argc#1_2|) InVars {ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_2|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1] {42903#true} is VALID [2022-02-20 20:59:59,512 INFO L290 TraceCheckUtils]: 16: Hoare triple {42903#true} [358] L718-1-->L719: Formula: (and (= |v_ULTIMATE.start_main_~argv#1.offset_2| |v_ULTIMATE.start_main_#in~argv#1.offset_2|) (= |v_ULTIMATE.start_main_#in~argv#1.base_2| |v_ULTIMATE.start_main_~argv#1.base_2|)) InVars {ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|} OutVars{ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~argv#1.offset] {42903#true} is VALID [2022-02-20 20:59:59,512 INFO L290 TraceCheckUtils]: 17: Hoare triple {42903#true} [304] L719-->L719-1: Formula: (and (not (= |v_ULTIMATE.start_main_~#t~0#1.base_2| 0)) (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#t~0#1.base_2|) (= (store |v_#length_4| |v_ULTIMATE.start_main_~#t~0#1.base_2| 44) |v_#length_3|) (= |v_ULTIMATE.start_main_~#t~0#1.offset_2| 0) (= |v_#valid_4| (store |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2| 1)) (= (select |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_4|, #valid=|v_#valid_5|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_3|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_2|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_2|, #valid=|v_#valid_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#t~0#1.offset, #valid, #length, ULTIMATE.start_main_~#t~0#1.base] {42903#true} is VALID [2022-02-20 20:59:59,513 INFO L290 TraceCheckUtils]: 18: Hoare triple {42903#true} [343] L719-1-->L722: Formula: (= v_~x~0_2 0) InVars {} OutVars{~x~0=v_~x~0_2} AuxVars[] AssignedVars[~x~0] {42903#true} is VALID [2022-02-20 20:59:59,513 INFO L290 TraceCheckUtils]: 19: Hoare triple {42903#true} [355] L722-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_2| 1) InVars {} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {42905#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:59,513 INFO L290 TraceCheckUtils]: 20: Hoare triple {42905#(= |ULTIMATE.start_main_~i~0#1| 1)} [324] L723-5-->L724: Formula: (<= |v_ULTIMATE.start_main_~i~0#1_4| 10) 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[] {42905#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:59,514 INFO L290 TraceCheckUtils]: 21: Hoare triple {42905#(= |ULTIMATE.start_main_~i~0#1| 1)} [320] L724-->L724-1: Formula: (= |v_ULTIMATE.start_main_#t~pre2#1_2| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {42905#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:59,514 INFO L290 TraceCheckUtils]: 22: Hoare triple {42905#(= |ULTIMATE.start_main_~i~0#1| 1)} [346] L724-1-->L724-2: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] {42905#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:59,514 INFO L290 TraceCheckUtils]: 23: Hoare triple {42905#(= |ULTIMATE.start_main_~i~0#1| 1)} [311] L724-2-->L724-3: Formula: (= (store |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3| (store (select |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3|) (+ |v_ULTIMATE.start_main_~#t~0#1.offset_3| (* |v_ULTIMATE.start_main_~i~0#1_5| 4)) |v_ULTIMATE.start_main_#t~pre2#1_3|)) |v_#memory_int_4|) InVars {#memory_int=|v_#memory_int_5|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} OutVars{#memory_int=|v_#memory_int_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} AuxVars[] AssignedVars[#memory_int] {42905#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:59,515 INFO L290 TraceCheckUtils]: 24: Hoare triple {42905#(= |ULTIMATE.start_main_~i~0#1| 1)} [381] L724-3-->threadENTRY: Formula: (and (= |v_ULTIMATE.start_main_~i~0#1_25| |v_threadThread1of4ForFork0_#in~arg.offset_4|) (= |v_threadThread1of4ForFork0_#in~arg.base_4| 0) (= v_threadThread1of4ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre2#1_22|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_25|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_22|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_25|, threadThread1of4ForFork0_#res.base=|v_threadThread1of4ForFork0_#res.base_4|, threadThread1of4ForFork0_~arg.offset=v_threadThread1of4ForFork0_~arg.offset_6, threadThread1of4ForFork0_#res.offset=|v_threadThread1of4ForFork0_#res.offset_4|, threadThread1of4ForFork0_~arg.base=v_threadThread1of4ForFork0_~arg.base_6, threadThread1of4ForFork0_~thread~0=v_threadThread1of4ForFork0_~thread~0_6, threadThread1of4ForFork0_thidvar0=v_threadThread1of4ForFork0_thidvar0_2, threadThread1of4ForFork0_#in~arg.offset=|v_threadThread1of4ForFork0_#in~arg.offset_4|, threadThread1of4ForFork0_#in~arg.base=|v_threadThread1of4ForFork0_#in~arg.base_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_22|} AuxVars[] AssignedVars[threadThread1of4ForFork0_#res.base, threadThread1of4ForFork0_~arg.offset, threadThread1of4ForFork0_#res.offset, threadThread1of4ForFork0_~arg.base, threadThread1of4ForFork0_~thread~0, threadThread1of4ForFork0_thidvar0, threadThread1of4ForFork0_#in~arg.offset, threadThread1of4ForFork0_#in~arg.base] {42905#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:59,515 INFO L290 TraceCheckUtils]: 25: Hoare triple {42905#(= |ULTIMATE.start_main_~i~0#1| 1)} [356] L724-4-->L724-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {42905#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:59,516 INFO L290 TraceCheckUtils]: 26: Hoare triple {42905#(= |ULTIMATE.start_main_~i~0#1| 1)} [309] L724-5-->L723-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet3#1] {42905#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:59,516 INFO L290 TraceCheckUtils]: 27: Hoare triple {42905#(= |ULTIMATE.start_main_~i~0#1| 1)} [338] L723-2-->L723-3: Formula: (= |v_ULTIMATE.start_main_#t~post1#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_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_2|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {42906#(= (+ (- 1) |ULTIMATE.start_main_#t~post1#1|) 0)} is VALID [2022-02-20 20:59:59,517 INFO L290 TraceCheckUtils]: 28: Hoare triple {42906#(= (+ (- 1) |ULTIMATE.start_main_#t~post1#1|) 0)} [317] L723-3-->L723-4: Formula: (= (+ |v_ULTIMATE.start_main_#t~post1#1_3| 1) |v_ULTIMATE.start_main_~i~0#1_7|) InVars {ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_7|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {42907#(<= |ULTIMATE.start_main_~i~0#1| 2)} is VALID [2022-02-20 20:59:59,517 INFO L290 TraceCheckUtils]: 29: Hoare triple {42907#(<= |ULTIMATE.start_main_~i~0#1| 2)} [333] L723-4-->L723-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {42907#(<= |ULTIMATE.start_main_~i~0#1| 2)} is VALID [2022-02-20 20:59:59,517 INFO L290 TraceCheckUtils]: 30: Hoare triple {42907#(<= |ULTIMATE.start_main_~i~0#1| 2)} [323] L723-5-->L723-6: Formula: (not (<= |v_ULTIMATE.start_main_~i~0#1_3| 10)) 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[] {42904#false} is VALID [2022-02-20 20:59:59,518 INFO L290 TraceCheckUtils]: 31: Hoare triple {42904#false} [365] threadENTRY-->L712: Formula: (and (= |v_threadThread1of4ForFork0_#in~arg.offset_1| v_threadThread1of4ForFork0_~arg.offset_1) (= v_threadThread1of4ForFork0_~arg.base_1 |v_threadThread1of4ForFork0_#in~arg.base_1|)) InVars {threadThread1of4ForFork0_#in~arg.base=|v_threadThread1of4ForFork0_#in~arg.base_1|, threadThread1of4ForFork0_#in~arg.offset=|v_threadThread1of4ForFork0_#in~arg.offset_1|} OutVars{threadThread1of4ForFork0_#in~arg.offset=|v_threadThread1of4ForFork0_#in~arg.offset_1|, threadThread1of4ForFork0_~arg.base=v_threadThread1of4ForFork0_~arg.base_1, threadThread1of4ForFork0_#in~arg.base=|v_threadThread1of4ForFork0_#in~arg.base_1|, threadThread1of4ForFork0_~arg.offset=v_threadThread1of4ForFork0_~arg.offset_1} AuxVars[] AssignedVars[threadThread1of4ForFork0_~arg.offset, threadThread1of4ForFork0_~arg.base] {42904#false} is VALID [2022-02-20 20:59:59,518 INFO L290 TraceCheckUtils]: 32: Hoare triple {42904#false} [366] L712-->L713: Formula: (= v_threadThread1of4ForFork0_~thread~0_1 (+ v_threadThread1of4ForFork0_~arg.base_3 v_threadThread1of4ForFork0_~arg.offset_3)) InVars {threadThread1of4ForFork0_~arg.offset=v_threadThread1of4ForFork0_~arg.offset_3, threadThread1of4ForFork0_~arg.base=v_threadThread1of4ForFork0_~arg.base_3} OutVars{threadThread1of4ForFork0_~arg.base=v_threadThread1of4ForFork0_~arg.base_3, threadThread1of4ForFork0_~thread~0=v_threadThread1of4ForFork0_~thread~0_1, threadThread1of4ForFork0_~arg.offset=v_threadThread1of4ForFork0_~arg.offset_3} AuxVars[] AssignedVars[threadThread1of4ForFork0_~thread~0] {42904#false} is VALID [2022-02-20 20:59:59,518 INFO L290 TraceCheckUtils]: 33: Hoare triple {42904#false} [367] L713-->L715: Formula: (= v_threadThread1of4ForFork0_~thread~0_3 v_~x~0_5) InVars {threadThread1of4ForFork0_~thread~0=v_threadThread1of4ForFork0_~thread~0_3} OutVars{~x~0=v_~x~0_5, threadThread1of4ForFork0_~thread~0=v_threadThread1of4ForFork0_~thread~0_3} AuxVars[] AssignedVars[~x~0] {42904#false} is VALID [2022-02-20 20:59:59,518 INFO L290 TraceCheckUtils]: 34: Hoare triple {42904#false} [307] L723-6-->L727: Formula: (not (< v_~x~0_4 11)) InVars {~x~0=v_~x~0_4} OutVars{~x~0=v_~x~0_4} AuxVars[] AssignedVars[] {42904#false} is VALID [2022-02-20 20:59:59,518 INFO L290 TraceCheckUtils]: 35: Hoare triple {42904#false} [314] L727-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42904#false} is VALID [2022-02-20 20:59:59,519 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:59:59,519 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 20:59:59,519 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2067012121] [2022-02-20 20:59:59,519 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2067012121] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 20:59:59,519 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [848238235] [2022-02-20 20:59:59,519 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:59:59,519 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 20:59:59,520 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 20:59:59,524 INFO L229 MonitoredProcess]: Starting monitored process 4 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:59:59,552 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-02-20 20:59:59,592 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:59:59,593 INFO L263 TraceCheckSpWp]: Trace formula consists of 91 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-20 20:59:59,601 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:59:59,601 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 20:59:59,716 INFO L290 TraceCheckUtils]: 0: Hoare triple {42903#true} [345] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42903#true} is VALID [2022-02-20 20:59:59,716 INFO L290 TraceCheckUtils]: 1: Hoare triple {42903#true} [335] 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] {42903#true} is VALID [2022-02-20 20:59:59,716 INFO L290 TraceCheckUtils]: 2: Hoare triple {42903#true} [352] 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[] {42903#true} is VALID [2022-02-20 20:59:59,716 INFO L290 TraceCheckUtils]: 3: Hoare triple {42903#true} [353] L-1-2-->L16: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {42903#true} is VALID [2022-02-20 20:59:59,717 INFO L290 TraceCheckUtils]: 4: Hoare triple {42903#true} [334] L16-->L16-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[] {42903#true} is VALID [2022-02-20 20:59:59,717 INFO L290 TraceCheckUtils]: 5: Hoare triple {42903#true} [302] L16-1-->L16-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[] {42903#true} is VALID [2022-02-20 20:59:59,717 INFO L290 TraceCheckUtils]: 6: Hoare triple {42903#true} [357] L16-2-->L16-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[] {42903#true} is VALID [2022-02-20 20:59:59,717 INFO L290 TraceCheckUtils]: 7: Hoare triple {42903#true} [339] L16-3-->L16-4: Formula: (and (= (select |v_#valid_3| 2) 1) (= (select |v_#length_2| 2) 1)) InVars {#length=|v_#length_2|, #valid=|v_#valid_3|} OutVars{#length=|v_#length_2|, #valid=|v_#valid_3|} AuxVars[] AssignedVars[] {42903#true} is VALID [2022-02-20 20:59:59,717 INFO L290 TraceCheckUtils]: 8: Hoare triple {42903#true} [342] L16-4-->L16-5: Formula: (= (select (select |v_#memory_int_3| 2) 0) 0) InVars {#memory_int=|v_#memory_int_3|} OutVars{#memory_int=|v_#memory_int_3|} AuxVars[] AssignedVars[] {42903#true} is VALID [2022-02-20 20:59:59,717 INFO L290 TraceCheckUtils]: 9: Hoare triple {42903#true} [332] L16-5-->L-1-3: Formula: (= v_~x~0_1 0) InVars {} OutVars{~x~0=v_~x~0_1} AuxVars[] AssignedVars[~x~0] {42903#true} is VALID [2022-02-20 20:59:59,718 INFO L290 TraceCheckUtils]: 10: Hoare triple {42903#true} [354] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42903#true} is VALID [2022-02-20 20:59:59,718 INFO L290 TraceCheckUtils]: 11: Hoare triple {42903#true} [337] L-1-4-->L-1-5: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42903#true} is VALID [2022-02-20 20:59:59,718 INFO L290 TraceCheckUtils]: 12: Hoare triple {42903#true} [316] L-1-5-->L-1-6: Formula: (and (= |v_ULTIMATE.start_#in~argv#1.offset_1| |v_ULTIMATE.start_main_#in~argv#1.offset_1|) (= |v_ULTIMATE.start_main_#in~argv#1.base_1| |v_ULTIMATE.start_#in~argv#1.base_1|) (= |v_ULTIMATE.start_main_#in~argc#1_1| |v_ULTIMATE.start_#in~argc#1_1|)) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} OutVars{ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_1|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_1|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_#in~argv#1.offset] {42903#true} is VALID [2022-02-20 20:59:59,718 INFO L290 TraceCheckUtils]: 13: Hoare triple {42903#true} [336] L-1-6-->L-1-7: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1] {42903#true} is VALID [2022-02-20 20:59:59,718 INFO L290 TraceCheckUtils]: 14: Hoare triple {42903#true} [312] L-1-7-->L718: Formula: true InVars {} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_1|, ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_1|, ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_1|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_1|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_1|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_1|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_1|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_1|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_1|, ULTIMATE.start_main_#t~mem5#1=|v_ULTIMATE.start_main_#t~mem5#1_1|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~1#1, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1, ULTIMATE.start_main_~#t~0#1.offset, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_#t~mem5#1, ULTIMATE.start_main_~#t~0#1.base, ULTIMATE.start_main_#t~pre2#1] {42903#true} is VALID [2022-02-20 20:59:59,719 INFO L290 TraceCheckUtils]: 15: Hoare triple {42903#true} [321] L718-->L718-1: Formula: (= |v_ULTIMATE.start_main_#in~argc#1_2| |v_ULTIMATE.start_main_~argc#1_2|) InVars {ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_2|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1] {42903#true} is VALID [2022-02-20 20:59:59,719 INFO L290 TraceCheckUtils]: 16: Hoare triple {42903#true} [358] L718-1-->L719: Formula: (and (= |v_ULTIMATE.start_main_~argv#1.offset_2| |v_ULTIMATE.start_main_#in~argv#1.offset_2|) (= |v_ULTIMATE.start_main_#in~argv#1.base_2| |v_ULTIMATE.start_main_~argv#1.base_2|)) InVars {ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|} OutVars{ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~argv#1.offset] {42903#true} is VALID [2022-02-20 20:59:59,719 INFO L290 TraceCheckUtils]: 17: Hoare triple {42903#true} [304] L719-->L719-1: Formula: (and (not (= |v_ULTIMATE.start_main_~#t~0#1.base_2| 0)) (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#t~0#1.base_2|) (= (store |v_#length_4| |v_ULTIMATE.start_main_~#t~0#1.base_2| 44) |v_#length_3|) (= |v_ULTIMATE.start_main_~#t~0#1.offset_2| 0) (= |v_#valid_4| (store |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2| 1)) (= (select |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_4|, #valid=|v_#valid_5|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_3|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_2|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_2|, #valid=|v_#valid_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#t~0#1.offset, #valid, #length, ULTIMATE.start_main_~#t~0#1.base] {42903#true} is VALID [2022-02-20 20:59:59,719 INFO L290 TraceCheckUtils]: 18: Hoare triple {42903#true} [343] L719-1-->L722: Formula: (= v_~x~0_2 0) InVars {} OutVars{~x~0=v_~x~0_2} AuxVars[] AssignedVars[~x~0] {42903#true} is VALID [2022-02-20 20:59:59,720 INFO L290 TraceCheckUtils]: 19: Hoare triple {42903#true} [355] L722-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_2| 1) InVars {} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {42968#(<= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:59,720 INFO L290 TraceCheckUtils]: 20: Hoare triple {42968#(<= |ULTIMATE.start_main_~i~0#1| 1)} [324] L723-5-->L724: Formula: (<= |v_ULTIMATE.start_main_~i~0#1_4| 10) 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[] {42968#(<= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:59,720 INFO L290 TraceCheckUtils]: 21: Hoare triple {42968#(<= |ULTIMATE.start_main_~i~0#1| 1)} [320] L724-->L724-1: Formula: (= |v_ULTIMATE.start_main_#t~pre2#1_2| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {42968#(<= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:59,721 INFO L290 TraceCheckUtils]: 22: Hoare triple {42968#(<= |ULTIMATE.start_main_~i~0#1| 1)} [346] L724-1-->L724-2: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] {42968#(<= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:59,721 INFO L290 TraceCheckUtils]: 23: Hoare triple {42968#(<= |ULTIMATE.start_main_~i~0#1| 1)} [311] L724-2-->L724-3: Formula: (= (store |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3| (store (select |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3|) (+ |v_ULTIMATE.start_main_~#t~0#1.offset_3| (* |v_ULTIMATE.start_main_~i~0#1_5| 4)) |v_ULTIMATE.start_main_#t~pre2#1_3|)) |v_#memory_int_4|) InVars {#memory_int=|v_#memory_int_5|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} OutVars{#memory_int=|v_#memory_int_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} AuxVars[] AssignedVars[#memory_int] {42968#(<= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:59,721 INFO L290 TraceCheckUtils]: 24: Hoare triple {42968#(<= |ULTIMATE.start_main_~i~0#1| 1)} [381] L724-3-->threadENTRY: Formula: (and (= |v_ULTIMATE.start_main_~i~0#1_25| |v_threadThread1of4ForFork0_#in~arg.offset_4|) (= |v_threadThread1of4ForFork0_#in~arg.base_4| 0) (= v_threadThread1of4ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre2#1_22|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_25|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_22|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_25|, threadThread1of4ForFork0_#res.base=|v_threadThread1of4ForFork0_#res.base_4|, threadThread1of4ForFork0_~arg.offset=v_threadThread1of4ForFork0_~arg.offset_6, threadThread1of4ForFork0_#res.offset=|v_threadThread1of4ForFork0_#res.offset_4|, threadThread1of4ForFork0_~arg.base=v_threadThread1of4ForFork0_~arg.base_6, threadThread1of4ForFork0_~thread~0=v_threadThread1of4ForFork0_~thread~0_6, threadThread1of4ForFork0_thidvar0=v_threadThread1of4ForFork0_thidvar0_2, threadThread1of4ForFork0_#in~arg.offset=|v_threadThread1of4ForFork0_#in~arg.offset_4|, threadThread1of4ForFork0_#in~arg.base=|v_threadThread1of4ForFork0_#in~arg.base_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_22|} AuxVars[] AssignedVars[threadThread1of4ForFork0_#res.base, threadThread1of4ForFork0_~arg.offset, threadThread1of4ForFork0_#res.offset, threadThread1of4ForFork0_~arg.base, threadThread1of4ForFork0_~thread~0, threadThread1of4ForFork0_thidvar0, threadThread1of4ForFork0_#in~arg.offset, threadThread1of4ForFork0_#in~arg.base] {42968#(<= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:59,722 INFO L290 TraceCheckUtils]: 25: Hoare triple {42968#(<= |ULTIMATE.start_main_~i~0#1| 1)} [356] L724-4-->L724-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {42968#(<= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:59,722 INFO L290 TraceCheckUtils]: 26: Hoare triple {42968#(<= |ULTIMATE.start_main_~i~0#1| 1)} [309] L724-5-->L723-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet3#1] {42968#(<= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 20:59:59,723 INFO L290 TraceCheckUtils]: 27: Hoare triple {42968#(<= |ULTIMATE.start_main_~i~0#1| 1)} [338] L723-2-->L723-3: Formula: (= |v_ULTIMATE.start_main_#t~post1#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_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_2|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {42993#(<= |ULTIMATE.start_main_#t~post1#1| 1)} is VALID [2022-02-20 20:59:59,723 INFO L290 TraceCheckUtils]: 28: Hoare triple {42993#(<= |ULTIMATE.start_main_#t~post1#1| 1)} [317] L723-3-->L723-4: Formula: (= (+ |v_ULTIMATE.start_main_#t~post1#1_3| 1) |v_ULTIMATE.start_main_~i~0#1_7|) InVars {ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_7|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {42907#(<= |ULTIMATE.start_main_~i~0#1| 2)} is VALID [2022-02-20 20:59:59,724 INFO L290 TraceCheckUtils]: 29: Hoare triple {42907#(<= |ULTIMATE.start_main_~i~0#1| 2)} [333] L723-4-->L723-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {42907#(<= |ULTIMATE.start_main_~i~0#1| 2)} is VALID [2022-02-20 20:59:59,724 INFO L290 TraceCheckUtils]: 30: Hoare triple {42907#(<= |ULTIMATE.start_main_~i~0#1| 2)} [323] L723-5-->L723-6: Formula: (not (<= |v_ULTIMATE.start_main_~i~0#1_3| 10)) 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[] {42904#false} is VALID [2022-02-20 20:59:59,724 INFO L290 TraceCheckUtils]: 31: Hoare triple {42904#false} [365] threadENTRY-->L712: Formula: (and (= |v_threadThread1of4ForFork0_#in~arg.offset_1| v_threadThread1of4ForFork0_~arg.offset_1) (= v_threadThread1of4ForFork0_~arg.base_1 |v_threadThread1of4ForFork0_#in~arg.base_1|)) InVars {threadThread1of4ForFork0_#in~arg.base=|v_threadThread1of4ForFork0_#in~arg.base_1|, threadThread1of4ForFork0_#in~arg.offset=|v_threadThread1of4ForFork0_#in~arg.offset_1|} OutVars{threadThread1of4ForFork0_#in~arg.offset=|v_threadThread1of4ForFork0_#in~arg.offset_1|, threadThread1of4ForFork0_~arg.base=v_threadThread1of4ForFork0_~arg.base_1, threadThread1of4ForFork0_#in~arg.base=|v_threadThread1of4ForFork0_#in~arg.base_1|, threadThread1of4ForFork0_~arg.offset=v_threadThread1of4ForFork0_~arg.offset_1} AuxVars[] AssignedVars[threadThread1of4ForFork0_~arg.offset, threadThread1of4ForFork0_~arg.base] {42904#false} is VALID [2022-02-20 20:59:59,724 INFO L290 TraceCheckUtils]: 32: Hoare triple {42904#false} [366] L712-->L713: Formula: (= v_threadThread1of4ForFork0_~thread~0_1 (+ v_threadThread1of4ForFork0_~arg.base_3 v_threadThread1of4ForFork0_~arg.offset_3)) InVars {threadThread1of4ForFork0_~arg.offset=v_threadThread1of4ForFork0_~arg.offset_3, threadThread1of4ForFork0_~arg.base=v_threadThread1of4ForFork0_~arg.base_3} OutVars{threadThread1of4ForFork0_~arg.base=v_threadThread1of4ForFork0_~arg.base_3, threadThread1of4ForFork0_~thread~0=v_threadThread1of4ForFork0_~thread~0_1, threadThread1of4ForFork0_~arg.offset=v_threadThread1of4ForFork0_~arg.offset_3} AuxVars[] AssignedVars[threadThread1of4ForFork0_~thread~0] {42904#false} is VALID [2022-02-20 20:59:59,725 INFO L290 TraceCheckUtils]: 33: Hoare triple {42904#false} [367] L713-->L715: Formula: (= v_threadThread1of4ForFork0_~thread~0_3 v_~x~0_5) InVars {threadThread1of4ForFork0_~thread~0=v_threadThread1of4ForFork0_~thread~0_3} OutVars{~x~0=v_~x~0_5, threadThread1of4ForFork0_~thread~0=v_threadThread1of4ForFork0_~thread~0_3} AuxVars[] AssignedVars[~x~0] {42904#false} is VALID [2022-02-20 20:59:59,725 INFO L290 TraceCheckUtils]: 34: Hoare triple {42904#false} [307] L723-6-->L727: Formula: (not (< v_~x~0_4 11)) InVars {~x~0=v_~x~0_4} OutVars{~x~0=v_~x~0_4} AuxVars[] AssignedVars[] {42904#false} is VALID [2022-02-20 20:59:59,725 INFO L290 TraceCheckUtils]: 35: Hoare triple {42904#false} [314] L727-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42904#false} is VALID [2022-02-20 20:59:59,725 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:59:59,725 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 20:59:59,838 INFO L290 TraceCheckUtils]: 35: Hoare triple {42904#false} [314] L727-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42904#false} is VALID [2022-02-20 20:59:59,839 INFO L290 TraceCheckUtils]: 34: Hoare triple {42904#false} [307] L723-6-->L727: Formula: (not (< v_~x~0_4 11)) InVars {~x~0=v_~x~0_4} OutVars{~x~0=v_~x~0_4} AuxVars[] AssignedVars[] {42904#false} is VALID [2022-02-20 20:59:59,839 INFO L290 TraceCheckUtils]: 33: Hoare triple {42904#false} [367] L713-->L715: Formula: (= v_threadThread1of4ForFork0_~thread~0_3 v_~x~0_5) InVars {threadThread1of4ForFork0_~thread~0=v_threadThread1of4ForFork0_~thread~0_3} OutVars{~x~0=v_~x~0_5, threadThread1of4ForFork0_~thread~0=v_threadThread1of4ForFork0_~thread~0_3} AuxVars[] AssignedVars[~x~0] {42904#false} is VALID [2022-02-20 20:59:59,839 INFO L290 TraceCheckUtils]: 32: Hoare triple {42904#false} [366] L712-->L713: Formula: (= v_threadThread1of4ForFork0_~thread~0_1 (+ v_threadThread1of4ForFork0_~arg.base_3 v_threadThread1of4ForFork0_~arg.offset_3)) InVars {threadThread1of4ForFork0_~arg.offset=v_threadThread1of4ForFork0_~arg.offset_3, threadThread1of4ForFork0_~arg.base=v_threadThread1of4ForFork0_~arg.base_3} OutVars{threadThread1of4ForFork0_~arg.base=v_threadThread1of4ForFork0_~arg.base_3, threadThread1of4ForFork0_~thread~0=v_threadThread1of4ForFork0_~thread~0_1, threadThread1of4ForFork0_~arg.offset=v_threadThread1of4ForFork0_~arg.offset_3} AuxVars[] AssignedVars[threadThread1of4ForFork0_~thread~0] {42904#false} is VALID [2022-02-20 20:59:59,839 INFO L290 TraceCheckUtils]: 31: Hoare triple {42904#false} [365] threadENTRY-->L712: Formula: (and (= |v_threadThread1of4ForFork0_#in~arg.offset_1| v_threadThread1of4ForFork0_~arg.offset_1) (= v_threadThread1of4ForFork0_~arg.base_1 |v_threadThread1of4ForFork0_#in~arg.base_1|)) InVars {threadThread1of4ForFork0_#in~arg.base=|v_threadThread1of4ForFork0_#in~arg.base_1|, threadThread1of4ForFork0_#in~arg.offset=|v_threadThread1of4ForFork0_#in~arg.offset_1|} OutVars{threadThread1of4ForFork0_#in~arg.offset=|v_threadThread1of4ForFork0_#in~arg.offset_1|, threadThread1of4ForFork0_~arg.base=v_threadThread1of4ForFork0_~arg.base_1, threadThread1of4ForFork0_#in~arg.base=|v_threadThread1of4ForFork0_#in~arg.base_1|, threadThread1of4ForFork0_~arg.offset=v_threadThread1of4ForFork0_~arg.offset_1} AuxVars[] AssignedVars[threadThread1of4ForFork0_~arg.offset, threadThread1of4ForFork0_~arg.base] {42904#false} is VALID [2022-02-20 20:59:59,840 INFO L290 TraceCheckUtils]: 30: Hoare triple {43033#(<= |ULTIMATE.start_main_~i~0#1| 10)} [323] L723-5-->L723-6: Formula: (not (<= |v_ULTIMATE.start_main_~i~0#1_3| 10)) 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[] {42904#false} is VALID [2022-02-20 20:59:59,840 INFO L290 TraceCheckUtils]: 29: Hoare triple {43033#(<= |ULTIMATE.start_main_~i~0#1| 10)} [333] L723-4-->L723-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {43033#(<= |ULTIMATE.start_main_~i~0#1| 10)} is VALID [2022-02-20 20:59:59,841 INFO L290 TraceCheckUtils]: 28: Hoare triple {43040#(<= |ULTIMATE.start_main_#t~post1#1| 9)} [317] L723-3-->L723-4: Formula: (= (+ |v_ULTIMATE.start_main_#t~post1#1_3| 1) |v_ULTIMATE.start_main_~i~0#1_7|) InVars {ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_7|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {43033#(<= |ULTIMATE.start_main_~i~0#1| 10)} is VALID [2022-02-20 20:59:59,841 INFO L290 TraceCheckUtils]: 27: Hoare triple {43044#(<= |ULTIMATE.start_main_~i~0#1| 9)} [338] L723-2-->L723-3: Formula: (= |v_ULTIMATE.start_main_#t~post1#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_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_2|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {43040#(<= |ULTIMATE.start_main_#t~post1#1| 9)} is VALID [2022-02-20 20:59:59,842 INFO L290 TraceCheckUtils]: 26: Hoare triple {43044#(<= |ULTIMATE.start_main_~i~0#1| 9)} [309] L724-5-->L723-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet3#1] {43044#(<= |ULTIMATE.start_main_~i~0#1| 9)} is VALID [2022-02-20 20:59:59,842 INFO L290 TraceCheckUtils]: 25: Hoare triple {43044#(<= |ULTIMATE.start_main_~i~0#1| 9)} [356] L724-4-->L724-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {43044#(<= |ULTIMATE.start_main_~i~0#1| 9)} is VALID [2022-02-20 20:59:59,843 INFO L290 TraceCheckUtils]: 24: Hoare triple {43044#(<= |ULTIMATE.start_main_~i~0#1| 9)} [381] L724-3-->threadENTRY: Formula: (and (= |v_ULTIMATE.start_main_~i~0#1_25| |v_threadThread1of4ForFork0_#in~arg.offset_4|) (= |v_threadThread1of4ForFork0_#in~arg.base_4| 0) (= v_threadThread1of4ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre2#1_22|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_25|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_22|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_25|, threadThread1of4ForFork0_#res.base=|v_threadThread1of4ForFork0_#res.base_4|, threadThread1of4ForFork0_~arg.offset=v_threadThread1of4ForFork0_~arg.offset_6, threadThread1of4ForFork0_#res.offset=|v_threadThread1of4ForFork0_#res.offset_4|, threadThread1of4ForFork0_~arg.base=v_threadThread1of4ForFork0_~arg.base_6, threadThread1of4ForFork0_~thread~0=v_threadThread1of4ForFork0_~thread~0_6, threadThread1of4ForFork0_thidvar0=v_threadThread1of4ForFork0_thidvar0_2, threadThread1of4ForFork0_#in~arg.offset=|v_threadThread1of4ForFork0_#in~arg.offset_4|, threadThread1of4ForFork0_#in~arg.base=|v_threadThread1of4ForFork0_#in~arg.base_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_22|} AuxVars[] AssignedVars[threadThread1of4ForFork0_#res.base, threadThread1of4ForFork0_~arg.offset, threadThread1of4ForFork0_#res.offset, threadThread1of4ForFork0_~arg.base, threadThread1of4ForFork0_~thread~0, threadThread1of4ForFork0_thidvar0, threadThread1of4ForFork0_#in~arg.offset, threadThread1of4ForFork0_#in~arg.base] {43044#(<= |ULTIMATE.start_main_~i~0#1| 9)} is VALID [2022-02-20 20:59:59,843 INFO L290 TraceCheckUtils]: 23: Hoare triple {43044#(<= |ULTIMATE.start_main_~i~0#1| 9)} [311] L724-2-->L724-3: Formula: (= (store |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3| (store (select |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3|) (+ |v_ULTIMATE.start_main_~#t~0#1.offset_3| (* |v_ULTIMATE.start_main_~i~0#1_5| 4)) |v_ULTIMATE.start_main_#t~pre2#1_3|)) |v_#memory_int_4|) InVars {#memory_int=|v_#memory_int_5|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} OutVars{#memory_int=|v_#memory_int_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} AuxVars[] AssignedVars[#memory_int] {43044#(<= |ULTIMATE.start_main_~i~0#1| 9)} is VALID [2022-02-20 20:59:59,844 INFO L290 TraceCheckUtils]: 22: Hoare triple {43044#(<= |ULTIMATE.start_main_~i~0#1| 9)} [346] L724-1-->L724-2: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] {43044#(<= |ULTIMATE.start_main_~i~0#1| 9)} is VALID [2022-02-20 20:59:59,844 INFO L290 TraceCheckUtils]: 21: Hoare triple {43044#(<= |ULTIMATE.start_main_~i~0#1| 9)} [320] L724-->L724-1: Formula: (= |v_ULTIMATE.start_main_#t~pre2#1_2| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {43044#(<= |ULTIMATE.start_main_~i~0#1| 9)} is VALID [2022-02-20 20:59:59,845 INFO L290 TraceCheckUtils]: 20: Hoare triple {43044#(<= |ULTIMATE.start_main_~i~0#1| 9)} [324] L723-5-->L724: Formula: (<= |v_ULTIMATE.start_main_~i~0#1_4| 10) 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[] {43044#(<= |ULTIMATE.start_main_~i~0#1| 9)} is VALID [2022-02-20 20:59:59,845 INFO L290 TraceCheckUtils]: 19: Hoare triple {42903#true} [355] L722-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_2| 1) InVars {} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {43044#(<= |ULTIMATE.start_main_~i~0#1| 9)} is VALID [2022-02-20 20:59:59,845 INFO L290 TraceCheckUtils]: 18: Hoare triple {42903#true} [343] L719-1-->L722: Formula: (= v_~x~0_2 0) InVars {} OutVars{~x~0=v_~x~0_2} AuxVars[] AssignedVars[~x~0] {42903#true} is VALID [2022-02-20 20:59:59,845 INFO L290 TraceCheckUtils]: 17: Hoare triple {42903#true} [304] L719-->L719-1: Formula: (and (not (= |v_ULTIMATE.start_main_~#t~0#1.base_2| 0)) (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#t~0#1.base_2|) (= (store |v_#length_4| |v_ULTIMATE.start_main_~#t~0#1.base_2| 44) |v_#length_3|) (= |v_ULTIMATE.start_main_~#t~0#1.offset_2| 0) (= |v_#valid_4| (store |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2| 1)) (= (select |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_4|, #valid=|v_#valid_5|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_3|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_2|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_2|, #valid=|v_#valid_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#t~0#1.offset, #valid, #length, ULTIMATE.start_main_~#t~0#1.base] {42903#true} is VALID [2022-02-20 20:59:59,846 INFO L290 TraceCheckUtils]: 16: Hoare triple {42903#true} [358] L718-1-->L719: Formula: (and (= |v_ULTIMATE.start_main_~argv#1.offset_2| |v_ULTIMATE.start_main_#in~argv#1.offset_2|) (= |v_ULTIMATE.start_main_#in~argv#1.base_2| |v_ULTIMATE.start_main_~argv#1.base_2|)) InVars {ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|} OutVars{ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~argv#1.offset] {42903#true} is VALID [2022-02-20 20:59:59,846 INFO L290 TraceCheckUtils]: 15: Hoare triple {42903#true} [321] L718-->L718-1: Formula: (= |v_ULTIMATE.start_main_#in~argc#1_2| |v_ULTIMATE.start_main_~argc#1_2|) InVars {ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_2|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1] {42903#true} is VALID [2022-02-20 20:59:59,846 INFO L290 TraceCheckUtils]: 14: Hoare triple {42903#true} [312] L-1-7-->L718: Formula: true InVars {} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_1|, ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_1|, ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_1|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_1|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_1|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_1|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_1|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_1|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_1|, ULTIMATE.start_main_#t~mem5#1=|v_ULTIMATE.start_main_#t~mem5#1_1|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~1#1, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1, ULTIMATE.start_main_~#t~0#1.offset, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_#t~mem5#1, ULTIMATE.start_main_~#t~0#1.base, ULTIMATE.start_main_#t~pre2#1] {42903#true} is VALID [2022-02-20 20:59:59,846 INFO L290 TraceCheckUtils]: 13: Hoare triple {42903#true} [336] L-1-6-->L-1-7: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1] {42903#true} is VALID [2022-02-20 20:59:59,846 INFO L290 TraceCheckUtils]: 12: Hoare triple {42903#true} [316] L-1-5-->L-1-6: Formula: (and (= |v_ULTIMATE.start_#in~argv#1.offset_1| |v_ULTIMATE.start_main_#in~argv#1.offset_1|) (= |v_ULTIMATE.start_main_#in~argv#1.base_1| |v_ULTIMATE.start_#in~argv#1.base_1|) (= |v_ULTIMATE.start_main_#in~argc#1_1| |v_ULTIMATE.start_#in~argc#1_1|)) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} OutVars{ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_1|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_1|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_#in~argv#1.offset] {42903#true} is VALID [2022-02-20 20:59:59,847 INFO L290 TraceCheckUtils]: 11: Hoare triple {42903#true} [337] L-1-4-->L-1-5: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42903#true} is VALID [2022-02-20 20:59:59,847 INFO L290 TraceCheckUtils]: 10: Hoare triple {42903#true} [354] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42903#true} is VALID [2022-02-20 20:59:59,847 INFO L290 TraceCheckUtils]: 9: Hoare triple {42903#true} [332] L16-5-->L-1-3: Formula: (= v_~x~0_1 0) InVars {} OutVars{~x~0=v_~x~0_1} AuxVars[] AssignedVars[~x~0] {42903#true} is VALID [2022-02-20 20:59:59,847 INFO L290 TraceCheckUtils]: 8: Hoare triple {42903#true} [342] L16-4-->L16-5: Formula: (= (select (select |v_#memory_int_3| 2) 0) 0) InVars {#memory_int=|v_#memory_int_3|} OutVars{#memory_int=|v_#memory_int_3|} AuxVars[] AssignedVars[] {42903#true} is VALID [2022-02-20 20:59:59,847 INFO L290 TraceCheckUtils]: 7: Hoare triple {42903#true} [339] L16-3-->L16-4: Formula: (and (= (select |v_#valid_3| 2) 1) (= (select |v_#length_2| 2) 1)) InVars {#length=|v_#length_2|, #valid=|v_#valid_3|} OutVars{#length=|v_#length_2|, #valid=|v_#valid_3|} AuxVars[] AssignedVars[] {42903#true} is VALID [2022-02-20 20:59:59,847 INFO L290 TraceCheckUtils]: 6: Hoare triple {42903#true} [357] L16-2-->L16-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[] {42903#true} is VALID [2022-02-20 20:59:59,848 INFO L290 TraceCheckUtils]: 5: Hoare triple {42903#true} [302] L16-1-->L16-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[] {42903#true} is VALID [2022-02-20 20:59:59,848 INFO L290 TraceCheckUtils]: 4: Hoare triple {42903#true} [334] L16-->L16-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[] {42903#true} is VALID [2022-02-20 20:59:59,848 INFO L290 TraceCheckUtils]: 3: Hoare triple {42903#true} [353] L-1-2-->L16: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {42903#true} is VALID [2022-02-20 20:59:59,848 INFO L290 TraceCheckUtils]: 2: Hoare triple {42903#true} [352] 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[] {42903#true} is VALID [2022-02-20 20:59:59,848 INFO L290 TraceCheckUtils]: 1: Hoare triple {42903#true} [335] 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] {42903#true} is VALID [2022-02-20 20:59:59,848 INFO L290 TraceCheckUtils]: 0: Hoare triple {42903#true} [345] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42903#true} is VALID [2022-02-20 20:59:59,849 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:59:59,849 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [848238235] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 20:59:59,849 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 20:59:59,849 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5, 5] total 10 [2022-02-20 20:59:59,849 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1688275932] [2022-02-20 20:59:59,850 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 20:59:59,850 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 5.8) internal successors, (58), 10 states have internal predecessors, (58), 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 36 [2022-02-20 20:59:59,850 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 20:59:59,851 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 5.8) internal successors, (58), 10 states have internal predecessors, (58), 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:59:59,956 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:59:59,957 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-02-20 20:59:59,957 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 20:59:59,957 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-02-20 20:59:59,957 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=30, Invalid=60, Unknown=0, NotChecked=0, Total=90 [2022-02-20 20:59:59,958 INFO L499 CegarLoopForPetriNet]: Number of universal loopers: 60 out of 80 [2022-02-20 20:59:59,959 INFO L92 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 71 places, 62 transitions, 177 flow. Second operand has 10 states, 10 states have (on average 62.3) internal successors, (623), 10 states have internal predecessors, (623), 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:59:59,959 INFO L101 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-02-20 20:59:59,959 INFO L102 encePairwiseOnDemand]: Number of universal subtrahend loopers: 60 of 80 [2022-02-20 20:59:59,959 INFO L74 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-02-20 21:00:00,210 INFO L129 PetriNetUnfolder]: 54/233 cut-off events. [2022-02-20 21:00:00,210 INFO L130 PetriNetUnfolder]: For 5/5 co-relation queries the response was YES. [2022-02-20 21:00:00,211 INFO L84 FinitePrefix]: Finished finitePrefix Result has 387 conditions, 233 events. 54/233 cut-off events. For 5/5 co-relation queries the response was YES. Maximal size of possible extension queue 20. Compared 835 event pairs, 28 based on Foata normal form. 2/217 useless extension candidates. Maximal degree in co-relation 324. Up to 92 conditions per place. [2022-02-20 21:00:00,212 INFO L132 encePairwiseOnDemand]: 74/80 looper letters, 14 selfloop transitions, 9 changer transitions 0/72 dead transitions. [2022-02-20 21:00:00,212 INFO L138 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 79 places, 72 transitions, 245 flow [2022-02-20 21:00:00,212 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 21:00:00,213 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 9 states. [2022-02-20 21:00:00,219 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 565 transitions. [2022-02-20 21:00:00,220 INFO L544 CegarLoopForPetriNet]: DFA transition density 0.7847222222222222 [2022-02-20 21:00:00,220 INFO L72 ComplementDD]: Start complementDD. Operand 9 states and 565 transitions. [2022-02-20 21:00:00,220 INFO L73 IsDeterministic]: Start isDeterministic. Operand 9 states and 565 transitions. [2022-02-20 21:00:00,220 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-02-20 21:00:00,220 INFO L117 ReachableStatesCopy]: Start reachableStatesCopy. Operand 9 states and 565 transitions. [2022-02-20 21:00:00,222 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends has 10 states, 9 states have (on average 62.77777777777778) internal successors, (565), 9 states have internal predecessors, (565), 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 21:00:00,223 INFO L131 ReachableStatesCopy]: Finished reachableStatesCopy Result has 10 states, 10 states have (on average 80.0) internal successors, (800), 10 states have internal predecessors, (800), 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 21:00:00,223 INFO L81 ComplementDD]: Finished complementDD. Result has 10 states, 10 states have (on average 80.0) internal successors, (800), 10 states have internal predecessors, (800), 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 21:00:00,224 INFO L186 Difference]: Start difference. First operand has 71 places, 62 transitions, 177 flow. Second operand 9 states and 565 transitions. [2022-02-20 21:00:00,224 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 79 places, 72 transitions, 245 flow [2022-02-20 21:00:02,695 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 78 places, 72 transitions, 240 flow, removed 0 selfloop flow, removed 1 redundant places. [2022-02-20 21:00:02,696 INFO L242 Difference]: Finished difference. Result has 81 places, 68 transitions, 222 flow [2022-02-20 21:00:02,696 INFO L317 CegarLoopForPetriNet]: {PETRI_ALPHABET=80, PETRI_DIFFERENCE_MINUEND_FLOW=172, PETRI_DIFFERENCE_MINUEND_PLACES=70, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=62, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=5, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=56, PETRI_DIFFERENCE_SUBTRAHEND_STATES=9, PETRI_FLOW=222, PETRI_PLACES=81, PETRI_TRANSITIONS=68} [2022-02-20 21:00:02,697 INFO L334 CegarLoopForPetriNet]: 66 programPoint places, 15 predicate places. [2022-02-20 21:00:02,697 INFO L111 iNet2FiniteAutomaton]: Start petriNet2FiniteAutomaton. Operand has 81 places, 68 transitions, 222 flow [2022-02-20 21:00:03,216 INFO L133 iNet2FiniteAutomaton]: Finished petriNet2FiniteAutomaton. Result has 21181 states, 21178 states have (on average 4.118660874492398) internal successors, (87225), 21180 states have internal predecessors, (87225), 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 21:00:03,279 INFO L78 Accepts]: Start accepts. Automaton has has 21181 states, 21178 states have (on average 4.118660874492398) internal successors, (87225), 21180 states have internal predecessors, (87225), 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 36 [2022-02-20 21:00:03,279 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 21:00:03,280 INFO L470 AbstractCegarLoop]: Abstraction has has 81 places, 68 transitions, 222 flow [2022-02-20 21:00:03,280 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 62.3) internal successors, (623), 10 states have internal predecessors, (623), 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 21:00:03,280 INFO L246 CegarLoopForPetriNet]: Found error trace [2022-02-20 21:00:03,280 INFO L254 CegarLoopForPetriNet]: trace histogram [3, 3, 3, 3, 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] [2022-02-20 21:00:03,301 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-02-20 21:00:03,495 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable15,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 21:00:03,495 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATION] === [2022-02-20 21:00:03,496 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 21:00:03,496 INFO L85 PathProgramCache]: Analyzing trace with hash -909312246, now seen corresponding path program 1 times [2022-02-20 21:00:03,496 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 21:00:03,496 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1669393065] [2022-02-20 21:00:03,496 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 21:00:03,496 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 21:00:03,509 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 21:00:03,562 INFO L290 TraceCheckUtils]: 0: Hoare triple {64317#true} [345] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {64317#true} is VALID [2022-02-20 21:00:03,562 INFO L290 TraceCheckUtils]: 1: Hoare triple {64317#true} [335] 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] {64317#true} is VALID [2022-02-20 21:00:03,562 INFO L290 TraceCheckUtils]: 2: Hoare triple {64317#true} [352] 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[] {64317#true} is VALID [2022-02-20 21:00:03,563 INFO L290 TraceCheckUtils]: 3: Hoare triple {64317#true} [353] L-1-2-->L16: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {64317#true} is VALID [2022-02-20 21:00:03,563 INFO L290 TraceCheckUtils]: 4: Hoare triple {64317#true} [334] L16-->L16-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[] {64317#true} is VALID [2022-02-20 21:00:03,563 INFO L290 TraceCheckUtils]: 5: Hoare triple {64317#true} [302] L16-1-->L16-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[] {64317#true} is VALID [2022-02-20 21:00:03,563 INFO L290 TraceCheckUtils]: 6: Hoare triple {64317#true} [357] L16-2-->L16-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[] {64317#true} is VALID [2022-02-20 21:00:03,563 INFO L290 TraceCheckUtils]: 7: Hoare triple {64317#true} [339] L16-3-->L16-4: Formula: (and (= (select |v_#valid_3| 2) 1) (= (select |v_#length_2| 2) 1)) InVars {#length=|v_#length_2|, #valid=|v_#valid_3|} OutVars{#length=|v_#length_2|, #valid=|v_#valid_3|} AuxVars[] AssignedVars[] {64317#true} is VALID [2022-02-20 21:00:03,563 INFO L290 TraceCheckUtils]: 8: Hoare triple {64317#true} [342] L16-4-->L16-5: Formula: (= (select (select |v_#memory_int_3| 2) 0) 0) InVars {#memory_int=|v_#memory_int_3|} OutVars{#memory_int=|v_#memory_int_3|} AuxVars[] AssignedVars[] {64317#true} is VALID [2022-02-20 21:00:03,564 INFO L290 TraceCheckUtils]: 9: Hoare triple {64317#true} [332] L16-5-->L-1-3: Formula: (= v_~x~0_1 0) InVars {} OutVars{~x~0=v_~x~0_1} AuxVars[] AssignedVars[~x~0] {64317#true} is VALID [2022-02-20 21:00:03,564 INFO L290 TraceCheckUtils]: 10: Hoare triple {64317#true} [354] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {64317#true} is VALID [2022-02-20 21:00:03,564 INFO L290 TraceCheckUtils]: 11: Hoare triple {64317#true} [337] L-1-4-->L-1-5: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {64317#true} is VALID [2022-02-20 21:00:03,564 INFO L290 TraceCheckUtils]: 12: Hoare triple {64317#true} [316] L-1-5-->L-1-6: Formula: (and (= |v_ULTIMATE.start_#in~argv#1.offset_1| |v_ULTIMATE.start_main_#in~argv#1.offset_1|) (= |v_ULTIMATE.start_main_#in~argv#1.base_1| |v_ULTIMATE.start_#in~argv#1.base_1|) (= |v_ULTIMATE.start_main_#in~argc#1_1| |v_ULTIMATE.start_#in~argc#1_1|)) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} OutVars{ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_1|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_1|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_#in~argv#1.offset] {64317#true} is VALID [2022-02-20 21:00:03,564 INFO L290 TraceCheckUtils]: 13: Hoare triple {64317#true} [336] L-1-6-->L-1-7: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1] {64317#true} is VALID [2022-02-20 21:00:03,564 INFO L290 TraceCheckUtils]: 14: Hoare triple {64317#true} [312] L-1-7-->L718: Formula: true InVars {} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_1|, ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_1|, ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_1|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_1|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_1|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_1|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_1|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_1|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_1|, ULTIMATE.start_main_#t~mem5#1=|v_ULTIMATE.start_main_#t~mem5#1_1|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~1#1, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1, ULTIMATE.start_main_~#t~0#1.offset, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_#t~mem5#1, ULTIMATE.start_main_~#t~0#1.base, ULTIMATE.start_main_#t~pre2#1] {64317#true} is VALID [2022-02-20 21:00:03,565 INFO L290 TraceCheckUtils]: 15: Hoare triple {64317#true} [321] L718-->L718-1: Formula: (= |v_ULTIMATE.start_main_#in~argc#1_2| |v_ULTIMATE.start_main_~argc#1_2|) InVars {ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_2|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1] {64317#true} is VALID [2022-02-20 21:00:03,565 INFO L290 TraceCheckUtils]: 16: Hoare triple {64317#true} [358] L718-1-->L719: Formula: (and (= |v_ULTIMATE.start_main_~argv#1.offset_2| |v_ULTIMATE.start_main_#in~argv#1.offset_2|) (= |v_ULTIMATE.start_main_#in~argv#1.base_2| |v_ULTIMATE.start_main_~argv#1.base_2|)) InVars {ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|} OutVars{ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~argv#1.offset] {64317#true} is VALID [2022-02-20 21:00:03,565 INFO L290 TraceCheckUtils]: 17: Hoare triple {64317#true} [304] L719-->L719-1: Formula: (and (not (= |v_ULTIMATE.start_main_~#t~0#1.base_2| 0)) (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#t~0#1.base_2|) (= (store |v_#length_4| |v_ULTIMATE.start_main_~#t~0#1.base_2| 44) |v_#length_3|) (= |v_ULTIMATE.start_main_~#t~0#1.offset_2| 0) (= |v_#valid_4| (store |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2| 1)) (= (select |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_4|, #valid=|v_#valid_5|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_3|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_2|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_2|, #valid=|v_#valid_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#t~0#1.offset, #valid, #length, ULTIMATE.start_main_~#t~0#1.base] {64317#true} is VALID [2022-02-20 21:00:03,565 INFO L290 TraceCheckUtils]: 18: Hoare triple {64317#true} [343] L719-1-->L722: Formula: (= v_~x~0_2 0) InVars {} OutVars{~x~0=v_~x~0_2} AuxVars[] AssignedVars[~x~0] {64317#true} is VALID [2022-02-20 21:00:03,566 INFO L290 TraceCheckUtils]: 19: Hoare triple {64317#true} [355] L722-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_2| 1) InVars {} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {64319#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 21:00:03,566 INFO L290 TraceCheckUtils]: 20: Hoare triple {64319#(= |ULTIMATE.start_main_~i~0#1| 1)} [324] L723-5-->L724: Formula: (<= |v_ULTIMATE.start_main_~i~0#1_4| 10) 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[] {64319#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 21:00:03,566 INFO L290 TraceCheckUtils]: 21: Hoare triple {64319#(= |ULTIMATE.start_main_~i~0#1| 1)} [320] L724-->L724-1: Formula: (= |v_ULTIMATE.start_main_#t~pre2#1_2| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {64319#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 21:00:03,567 INFO L290 TraceCheckUtils]: 22: Hoare triple {64319#(= |ULTIMATE.start_main_~i~0#1| 1)} [346] L724-1-->L724-2: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] {64319#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 21:00:03,567 INFO L290 TraceCheckUtils]: 23: Hoare triple {64319#(= |ULTIMATE.start_main_~i~0#1| 1)} [311] L724-2-->L724-3: Formula: (= (store |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3| (store (select |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3|) (+ |v_ULTIMATE.start_main_~#t~0#1.offset_3| (* |v_ULTIMATE.start_main_~i~0#1_5| 4)) |v_ULTIMATE.start_main_#t~pre2#1_3|)) |v_#memory_int_4|) InVars {#memory_int=|v_#memory_int_5|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} OutVars{#memory_int=|v_#memory_int_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} AuxVars[] AssignedVars[#memory_int] {64319#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 21:00:03,568 INFO L290 TraceCheckUtils]: 24: Hoare triple {64319#(= |ULTIMATE.start_main_~i~0#1| 1)} [381] L724-3-->threadENTRY: Formula: (and (= |v_ULTIMATE.start_main_~i~0#1_25| |v_threadThread1of4ForFork0_#in~arg.offset_4|) (= |v_threadThread1of4ForFork0_#in~arg.base_4| 0) (= v_threadThread1of4ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre2#1_22|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_25|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_22|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_25|, threadThread1of4ForFork0_#res.base=|v_threadThread1of4ForFork0_#res.base_4|, threadThread1of4ForFork0_~arg.offset=v_threadThread1of4ForFork0_~arg.offset_6, threadThread1of4ForFork0_#res.offset=|v_threadThread1of4ForFork0_#res.offset_4|, threadThread1of4ForFork0_~arg.base=v_threadThread1of4ForFork0_~arg.base_6, threadThread1of4ForFork0_~thread~0=v_threadThread1of4ForFork0_~thread~0_6, threadThread1of4ForFork0_thidvar0=v_threadThread1of4ForFork0_thidvar0_2, threadThread1of4ForFork0_#in~arg.offset=|v_threadThread1of4ForFork0_#in~arg.offset_4|, threadThread1of4ForFork0_#in~arg.base=|v_threadThread1of4ForFork0_#in~arg.base_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_22|} AuxVars[] AssignedVars[threadThread1of4ForFork0_#res.base, threadThread1of4ForFork0_~arg.offset, threadThread1of4ForFork0_#res.offset, threadThread1of4ForFork0_~arg.base, threadThread1of4ForFork0_~thread~0, threadThread1of4ForFork0_thidvar0, threadThread1of4ForFork0_#in~arg.offset, threadThread1of4ForFork0_#in~arg.base] {64320#(and (= |threadThread1of4ForFork0_#in~arg.offset| 1) (= |threadThread1of4ForFork0_#in~arg.base| 0))} is VALID [2022-02-20 21:00:03,568 INFO L290 TraceCheckUtils]: 25: Hoare triple {64320#(and (= |threadThread1of4ForFork0_#in~arg.offset| 1) (= |threadThread1of4ForFork0_#in~arg.base| 0))} [365] threadENTRY-->L712: Formula: (and (= |v_threadThread1of4ForFork0_#in~arg.offset_1| v_threadThread1of4ForFork0_~arg.offset_1) (= v_threadThread1of4ForFork0_~arg.base_1 |v_threadThread1of4ForFork0_#in~arg.base_1|)) InVars {threadThread1of4ForFork0_#in~arg.base=|v_threadThread1of4ForFork0_#in~arg.base_1|, threadThread1of4ForFork0_#in~arg.offset=|v_threadThread1of4ForFork0_#in~arg.offset_1|} OutVars{threadThread1of4ForFork0_#in~arg.offset=|v_threadThread1of4ForFork0_#in~arg.offset_1|, threadThread1of4ForFork0_~arg.base=v_threadThread1of4ForFork0_~arg.base_1, threadThread1of4ForFork0_#in~arg.base=|v_threadThread1of4ForFork0_#in~arg.base_1|, threadThread1of4ForFork0_~arg.offset=v_threadThread1of4ForFork0_~arg.offset_1} AuxVars[] AssignedVars[threadThread1of4ForFork0_~arg.offset, threadThread1of4ForFork0_~arg.base] {64321#(and (= (+ (- 1) threadThread1of4ForFork0_~arg.offset) 0) (= threadThread1of4ForFork0_~arg.base 0))} is VALID [2022-02-20 21:00:03,569 INFO L290 TraceCheckUtils]: 26: Hoare triple {64321#(and (= (+ (- 1) threadThread1of4ForFork0_~arg.offset) 0) (= threadThread1of4ForFork0_~arg.base 0))} [366] L712-->L713: Formula: (= v_threadThread1of4ForFork0_~thread~0_1 (+ v_threadThread1of4ForFork0_~arg.base_3 v_threadThread1of4ForFork0_~arg.offset_3)) InVars {threadThread1of4ForFork0_~arg.offset=v_threadThread1of4ForFork0_~arg.offset_3, threadThread1of4ForFork0_~arg.base=v_threadThread1of4ForFork0_~arg.base_3} OutVars{threadThread1of4ForFork0_~arg.base=v_threadThread1of4ForFork0_~arg.base_3, threadThread1of4ForFork0_~thread~0=v_threadThread1of4ForFork0_~thread~0_1, threadThread1of4ForFork0_~arg.offset=v_threadThread1of4ForFork0_~arg.offset_3} AuxVars[] AssignedVars[threadThread1of4ForFork0_~thread~0] {64322#(<= threadThread1of4ForFork0_~thread~0 1)} is VALID [2022-02-20 21:00:03,569 INFO L290 TraceCheckUtils]: 27: Hoare triple {64322#(<= threadThread1of4ForFork0_~thread~0 1)} [367] L713-->L715: Formula: (= v_threadThread1of4ForFork0_~thread~0_3 v_~x~0_5) InVars {threadThread1of4ForFork0_~thread~0=v_threadThread1of4ForFork0_~thread~0_3} OutVars{~x~0=v_~x~0_5, threadThread1of4ForFork0_~thread~0=v_threadThread1of4ForFork0_~thread~0_3} AuxVars[] AssignedVars[~x~0] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,569 INFO L290 TraceCheckUtils]: 28: Hoare triple {64323#(<= ~x~0 1)} [356] L724-4-->L724-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,570 INFO L290 TraceCheckUtils]: 29: Hoare triple {64323#(<= ~x~0 1)} [309] L724-5-->L723-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet3#1] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,570 INFO L290 TraceCheckUtils]: 30: Hoare triple {64323#(<= ~x~0 1)} [338] L723-2-->L723-3: Formula: (= |v_ULTIMATE.start_main_#t~post1#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_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_2|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,570 INFO L290 TraceCheckUtils]: 31: Hoare triple {64323#(<= ~x~0 1)} [317] L723-3-->L723-4: Formula: (= (+ |v_ULTIMATE.start_main_#t~post1#1_3| 1) |v_ULTIMATE.start_main_~i~0#1_7|) InVars {ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_7|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,571 INFO L290 TraceCheckUtils]: 32: Hoare triple {64323#(<= ~x~0 1)} [333] L723-4-->L723-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,571 INFO L290 TraceCheckUtils]: 33: Hoare triple {64323#(<= ~x~0 1)} [324] L723-5-->L724: Formula: (<= |v_ULTIMATE.start_main_~i~0#1_4| 10) 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[] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,572 INFO L290 TraceCheckUtils]: 34: Hoare triple {64323#(<= ~x~0 1)} [320] L724-->L724-1: Formula: (= |v_ULTIMATE.start_main_#t~pre2#1_2| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,572 INFO L290 TraceCheckUtils]: 35: Hoare triple {64323#(<= ~x~0 1)} [346] L724-1-->L724-2: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,572 INFO L290 TraceCheckUtils]: 36: Hoare triple {64323#(<= ~x~0 1)} [311] L724-2-->L724-3: Formula: (= (store |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3| (store (select |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3|) (+ |v_ULTIMATE.start_main_~#t~0#1.offset_3| (* |v_ULTIMATE.start_main_~i~0#1_5| 4)) |v_ULTIMATE.start_main_#t~pre2#1_3|)) |v_#memory_int_4|) InVars {#memory_int=|v_#memory_int_5|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} OutVars{#memory_int=|v_#memory_int_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} AuxVars[] AssignedVars[#memory_int] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,573 INFO L290 TraceCheckUtils]: 37: Hoare triple {64323#(<= ~x~0 1)} [382] L724-3-->threadENTRY: Formula: (and (= v_threadThread2of4ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre2#1_24|) (= |v_ULTIMATE.start_main_~i~0#1_27| |v_threadThread2of4ForFork0_#in~arg.offset_4|) (= 0 |v_threadThread2of4ForFork0_#in~arg.base_4|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_27|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_24|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_27|, threadThread2of4ForFork0_#in~arg.offset=|v_threadThread2of4ForFork0_#in~arg.offset_4|, threadThread2of4ForFork0_~arg.offset=v_threadThread2of4ForFork0_~arg.offset_6, threadThread2of4ForFork0_thidvar0=v_threadThread2of4ForFork0_thidvar0_2, threadThread2of4ForFork0_#res.base=|v_threadThread2of4ForFork0_#res.base_4|, threadThread2of4ForFork0_#in~arg.base=|v_threadThread2of4ForFork0_#in~arg.base_4|, threadThread2of4ForFork0_~arg.base=v_threadThread2of4ForFork0_~arg.base_6, threadThread2of4ForFork0_~thread~0=v_threadThread2of4ForFork0_~thread~0_6, threadThread2of4ForFork0_#res.offset=|v_threadThread2of4ForFork0_#res.offset_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_24|} AuxVars[] AssignedVars[threadThread2of4ForFork0_#in~arg.offset, threadThread2of4ForFork0_~arg.offset, threadThread2of4ForFork0_thidvar0, threadThread2of4ForFork0_#res.base, threadThread2of4ForFork0_#in~arg.base, threadThread2of4ForFork0_~arg.base, threadThread2of4ForFork0_~thread~0, threadThread2of4ForFork0_#res.offset] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,573 INFO L290 TraceCheckUtils]: 38: Hoare triple {64323#(<= ~x~0 1)} [356] L724-4-->L724-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,573 INFO L290 TraceCheckUtils]: 39: Hoare triple {64323#(<= ~x~0 1)} [309] L724-5-->L723-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet3#1] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,574 INFO L290 TraceCheckUtils]: 40: Hoare triple {64323#(<= ~x~0 1)} [338] L723-2-->L723-3: Formula: (= |v_ULTIMATE.start_main_#t~post1#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_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_2|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,574 INFO L290 TraceCheckUtils]: 41: Hoare triple {64323#(<= ~x~0 1)} [317] L723-3-->L723-4: Formula: (= (+ |v_ULTIMATE.start_main_#t~post1#1_3| 1) |v_ULTIMATE.start_main_~i~0#1_7|) InVars {ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_7|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,575 INFO L290 TraceCheckUtils]: 42: Hoare triple {64323#(<= ~x~0 1)} [333] L723-4-->L723-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,575 INFO L290 TraceCheckUtils]: 43: Hoare triple {64323#(<= ~x~0 1)} [324] L723-5-->L724: Formula: (<= |v_ULTIMATE.start_main_~i~0#1_4| 10) 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[] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,575 INFO L290 TraceCheckUtils]: 44: Hoare triple {64323#(<= ~x~0 1)} [320] L724-->L724-1: Formula: (= |v_ULTIMATE.start_main_#t~pre2#1_2| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,576 INFO L290 TraceCheckUtils]: 45: Hoare triple {64323#(<= ~x~0 1)} [346] L724-1-->L724-2: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,576 INFO L290 TraceCheckUtils]: 46: Hoare triple {64323#(<= ~x~0 1)} [311] L724-2-->L724-3: Formula: (= (store |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3| (store (select |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3|) (+ |v_ULTIMATE.start_main_~#t~0#1.offset_3| (* |v_ULTIMATE.start_main_~i~0#1_5| 4)) |v_ULTIMATE.start_main_#t~pre2#1_3|)) |v_#memory_int_4|) InVars {#memory_int=|v_#memory_int_5|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} OutVars{#memory_int=|v_#memory_int_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} AuxVars[] AssignedVars[#memory_int] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,576 INFO L290 TraceCheckUtils]: 47: Hoare triple {64323#(<= ~x~0 1)} [383] L724-3-->threadENTRY: Formula: (and (= |v_threadThread3of4ForFork0_#in~arg.base_4| 0) (= v_threadThread3of4ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre2#1_26|) (= |v_ULTIMATE.start_main_~i~0#1_29| |v_threadThread3of4ForFork0_#in~arg.offset_4|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_29|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_26|} OutVars{threadThread3of4ForFork0_#in~arg.offset=|v_threadThread3of4ForFork0_#in~arg.offset_4|, threadThread3of4ForFork0_~thread~0=v_threadThread3of4ForFork0_~thread~0_6, threadThread3of4ForFork0_thidvar0=v_threadThread3of4ForFork0_thidvar0_2, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_29|, threadThread3of4ForFork0_~arg.offset=v_threadThread3of4ForFork0_~arg.offset_6, threadThread3of4ForFork0_#res.base=|v_threadThread3of4ForFork0_#res.base_4|, threadThread3of4ForFork0_~arg.base=v_threadThread3of4ForFork0_~arg.base_6, threadThread3of4ForFork0_#in~arg.base=|v_threadThread3of4ForFork0_#in~arg.base_4|, threadThread3of4ForFork0_#res.offset=|v_threadThread3of4ForFork0_#res.offset_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_26|} AuxVars[] AssignedVars[threadThread3of4ForFork0_#in~arg.offset, threadThread3of4ForFork0_~thread~0, threadThread3of4ForFork0_thidvar0, threadThread3of4ForFork0_~arg.offset, threadThread3of4ForFork0_#res.base, threadThread3of4ForFork0_~arg.base, threadThread3of4ForFork0_#in~arg.base, threadThread3of4ForFork0_#res.offset] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,577 INFO L290 TraceCheckUtils]: 48: Hoare triple {64323#(<= ~x~0 1)} [356] L724-4-->L724-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,577 INFO L290 TraceCheckUtils]: 49: Hoare triple {64323#(<= ~x~0 1)} [309] L724-5-->L723-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet3#1] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,577 INFO L290 TraceCheckUtils]: 50: Hoare triple {64323#(<= ~x~0 1)} [338] L723-2-->L723-3: Formula: (= |v_ULTIMATE.start_main_#t~post1#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_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_2|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,578 INFO L290 TraceCheckUtils]: 51: Hoare triple {64323#(<= ~x~0 1)} [317] L723-3-->L723-4: Formula: (= (+ |v_ULTIMATE.start_main_#t~post1#1_3| 1) |v_ULTIMATE.start_main_~i~0#1_7|) InVars {ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_7|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,578 INFO L290 TraceCheckUtils]: 52: Hoare triple {64323#(<= ~x~0 1)} [333] L723-4-->L723-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,579 INFO L290 TraceCheckUtils]: 53: Hoare triple {64323#(<= ~x~0 1)} [323] L723-5-->L723-6: Formula: (not (<= |v_ULTIMATE.start_main_~i~0#1_3| 10)) 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[] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,579 INFO L290 TraceCheckUtils]: 54: Hoare triple {64323#(<= ~x~0 1)} [307] L723-6-->L727: Formula: (not (< v_~x~0_4 11)) InVars {~x~0=v_~x~0_4} OutVars{~x~0=v_~x~0_4} AuxVars[] AssignedVars[] {64318#false} is VALID [2022-02-20 21:00:03,579 INFO L290 TraceCheckUtils]: 55: Hoare triple {64318#false} [314] L727-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {64318#false} is VALID [2022-02-20 21:00:03,580 INFO L134 CoverageAnalysis]: Checked inductivity of 33 backedges. 0 proven. 11 refuted. 0 times theorem prover too weak. 22 trivial. 0 not checked. [2022-02-20 21:00:03,580 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 21:00:03,580 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1669393065] [2022-02-20 21:00:03,580 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1669393065] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 21:00:03,580 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2010627669] [2022-02-20 21:00:03,580 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 21:00:03,581 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 21:00:03,581 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 21:00:03,582 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 21:00:03,613 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-02-20 21:00:03,659 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 21:00:03,660 INFO L263 TraceCheckSpWp]: Trace formula consists of 135 conjuncts, 8 conjunts are in the unsatisfiable core [2022-02-20 21:00:03,673 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 21:00:03,674 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 21:00:03,937 INFO L290 TraceCheckUtils]: 0: Hoare triple {64317#true} [345] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {64317#true} is VALID [2022-02-20 21:00:03,938 INFO L290 TraceCheckUtils]: 1: Hoare triple {64317#true} [335] 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] {64317#true} is VALID [2022-02-20 21:00:03,938 INFO L290 TraceCheckUtils]: 2: Hoare triple {64317#true} [352] 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[] {64317#true} is VALID [2022-02-20 21:00:03,938 INFO L290 TraceCheckUtils]: 3: Hoare triple {64317#true} [353] L-1-2-->L16: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {64317#true} is VALID [2022-02-20 21:00:03,938 INFO L290 TraceCheckUtils]: 4: Hoare triple {64317#true} [334] L16-->L16-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[] {64317#true} is VALID [2022-02-20 21:00:03,939 INFO L290 TraceCheckUtils]: 5: Hoare triple {64317#true} [302] L16-1-->L16-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[] {64317#true} is VALID [2022-02-20 21:00:03,939 INFO L290 TraceCheckUtils]: 6: Hoare triple {64317#true} [357] L16-2-->L16-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[] {64317#true} is VALID [2022-02-20 21:00:03,939 INFO L290 TraceCheckUtils]: 7: Hoare triple {64317#true} [339] L16-3-->L16-4: Formula: (and (= (select |v_#valid_3| 2) 1) (= (select |v_#length_2| 2) 1)) InVars {#length=|v_#length_2|, #valid=|v_#valid_3|} OutVars{#length=|v_#length_2|, #valid=|v_#valid_3|} AuxVars[] AssignedVars[] {64317#true} is VALID [2022-02-20 21:00:03,939 INFO L290 TraceCheckUtils]: 8: Hoare triple {64317#true} [342] L16-4-->L16-5: Formula: (= (select (select |v_#memory_int_3| 2) 0) 0) InVars {#memory_int=|v_#memory_int_3|} OutVars{#memory_int=|v_#memory_int_3|} AuxVars[] AssignedVars[] {64317#true} is VALID [2022-02-20 21:00:03,939 INFO L290 TraceCheckUtils]: 9: Hoare triple {64317#true} [332] L16-5-->L-1-3: Formula: (= v_~x~0_1 0) InVars {} OutVars{~x~0=v_~x~0_1} AuxVars[] AssignedVars[~x~0] {64317#true} is VALID [2022-02-20 21:00:03,939 INFO L290 TraceCheckUtils]: 10: Hoare triple {64317#true} [354] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {64317#true} is VALID [2022-02-20 21:00:03,940 INFO L290 TraceCheckUtils]: 11: Hoare triple {64317#true} [337] L-1-4-->L-1-5: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {64317#true} is VALID [2022-02-20 21:00:03,940 INFO L290 TraceCheckUtils]: 12: Hoare triple {64317#true} [316] L-1-5-->L-1-6: Formula: (and (= |v_ULTIMATE.start_#in~argv#1.offset_1| |v_ULTIMATE.start_main_#in~argv#1.offset_1|) (= |v_ULTIMATE.start_main_#in~argv#1.base_1| |v_ULTIMATE.start_#in~argv#1.base_1|) (= |v_ULTIMATE.start_main_#in~argc#1_1| |v_ULTIMATE.start_#in~argc#1_1|)) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} OutVars{ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_1|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_1|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_#in~argv#1.offset] {64317#true} is VALID [2022-02-20 21:00:03,940 INFO L290 TraceCheckUtils]: 13: Hoare triple {64317#true} [336] L-1-6-->L-1-7: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1] {64317#true} is VALID [2022-02-20 21:00:03,940 INFO L290 TraceCheckUtils]: 14: Hoare triple {64317#true} [312] L-1-7-->L718: Formula: true InVars {} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_1|, ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_1|, ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_1|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_1|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_1|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_1|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_1|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_1|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_1|, ULTIMATE.start_main_#t~mem5#1=|v_ULTIMATE.start_main_#t~mem5#1_1|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~1#1, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1, ULTIMATE.start_main_~#t~0#1.offset, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_#t~mem5#1, ULTIMATE.start_main_~#t~0#1.base, ULTIMATE.start_main_#t~pre2#1] {64317#true} is VALID [2022-02-20 21:00:03,941 INFO L290 TraceCheckUtils]: 15: Hoare triple {64317#true} [321] L718-->L718-1: Formula: (= |v_ULTIMATE.start_main_#in~argc#1_2| |v_ULTIMATE.start_main_~argc#1_2|) InVars {ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_2|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1] {64317#true} is VALID [2022-02-20 21:00:03,941 INFO L290 TraceCheckUtils]: 16: Hoare triple {64317#true} [358] L718-1-->L719: Formula: (and (= |v_ULTIMATE.start_main_~argv#1.offset_2| |v_ULTIMATE.start_main_#in~argv#1.offset_2|) (= |v_ULTIMATE.start_main_#in~argv#1.base_2| |v_ULTIMATE.start_main_~argv#1.base_2|)) InVars {ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|} OutVars{ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~argv#1.offset] {64317#true} is VALID [2022-02-20 21:00:03,944 INFO L290 TraceCheckUtils]: 17: Hoare triple {64317#true} [304] L719-->L719-1: Formula: (and (not (= |v_ULTIMATE.start_main_~#t~0#1.base_2| 0)) (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#t~0#1.base_2|) (= (store |v_#length_4| |v_ULTIMATE.start_main_~#t~0#1.base_2| 44) |v_#length_3|) (= |v_ULTIMATE.start_main_~#t~0#1.offset_2| 0) (= |v_#valid_4| (store |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2| 1)) (= (select |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_4|, #valid=|v_#valid_5|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_3|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_2|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_2|, #valid=|v_#valid_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#t~0#1.offset, #valid, #length, ULTIMATE.start_main_~#t~0#1.base] {64317#true} is VALID [2022-02-20 21:00:03,944 INFO L290 TraceCheckUtils]: 18: Hoare triple {64317#true} [343] L719-1-->L722: Formula: (= v_~x~0_2 0) InVars {} OutVars{~x~0=v_~x~0_2} AuxVars[] AssignedVars[~x~0] {64317#true} is VALID [2022-02-20 21:00:03,944 INFO L290 TraceCheckUtils]: 19: Hoare triple {64317#true} [355] L722-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_2| 1) InVars {} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {64384#(<= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 21:00:03,945 INFO L290 TraceCheckUtils]: 20: Hoare triple {64384#(<= |ULTIMATE.start_main_~i~0#1| 1)} [324] L723-5-->L724: Formula: (<= |v_ULTIMATE.start_main_~i~0#1_4| 10) 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[] {64384#(<= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 21:00:03,945 INFO L290 TraceCheckUtils]: 21: Hoare triple {64384#(<= |ULTIMATE.start_main_~i~0#1| 1)} [320] L724-->L724-1: Formula: (= |v_ULTIMATE.start_main_#t~pre2#1_2| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {64384#(<= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 21:00:03,946 INFO L290 TraceCheckUtils]: 22: Hoare triple {64384#(<= |ULTIMATE.start_main_~i~0#1| 1)} [346] L724-1-->L724-2: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] {64384#(<= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 21:00:03,946 INFO L290 TraceCheckUtils]: 23: Hoare triple {64384#(<= |ULTIMATE.start_main_~i~0#1| 1)} [311] L724-2-->L724-3: Formula: (= (store |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3| (store (select |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3|) (+ |v_ULTIMATE.start_main_~#t~0#1.offset_3| (* |v_ULTIMATE.start_main_~i~0#1_5| 4)) |v_ULTIMATE.start_main_#t~pre2#1_3|)) |v_#memory_int_4|) InVars {#memory_int=|v_#memory_int_5|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} OutVars{#memory_int=|v_#memory_int_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} AuxVars[] AssignedVars[#memory_int] {64384#(<= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 21:00:03,947 INFO L290 TraceCheckUtils]: 24: Hoare triple {64384#(<= |ULTIMATE.start_main_~i~0#1| 1)} [381] L724-3-->threadENTRY: Formula: (and (= |v_ULTIMATE.start_main_~i~0#1_25| |v_threadThread1of4ForFork0_#in~arg.offset_4|) (= |v_threadThread1of4ForFork0_#in~arg.base_4| 0) (= v_threadThread1of4ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre2#1_22|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_25|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_22|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_25|, threadThread1of4ForFork0_#res.base=|v_threadThread1of4ForFork0_#res.base_4|, threadThread1of4ForFork0_~arg.offset=v_threadThread1of4ForFork0_~arg.offset_6, threadThread1of4ForFork0_#res.offset=|v_threadThread1of4ForFork0_#res.offset_4|, threadThread1of4ForFork0_~arg.base=v_threadThread1of4ForFork0_~arg.base_6, threadThread1of4ForFork0_~thread~0=v_threadThread1of4ForFork0_~thread~0_6, threadThread1of4ForFork0_thidvar0=v_threadThread1of4ForFork0_thidvar0_2, threadThread1of4ForFork0_#in~arg.offset=|v_threadThread1of4ForFork0_#in~arg.offset_4|, threadThread1of4ForFork0_#in~arg.base=|v_threadThread1of4ForFork0_#in~arg.base_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_22|} AuxVars[] AssignedVars[threadThread1of4ForFork0_#res.base, threadThread1of4ForFork0_~arg.offset, threadThread1of4ForFork0_#res.offset, threadThread1of4ForFork0_~arg.base, threadThread1of4ForFork0_~thread~0, threadThread1of4ForFork0_thidvar0, threadThread1of4ForFork0_#in~arg.offset, threadThread1of4ForFork0_#in~arg.base] {64400#(and (<= |threadThread1of4ForFork0_#in~arg.offset| 1) (<= |threadThread1of4ForFork0_#in~arg.base| 0))} is VALID [2022-02-20 21:00:03,948 INFO L290 TraceCheckUtils]: 25: Hoare triple {64400#(and (<= |threadThread1of4ForFork0_#in~arg.offset| 1) (<= |threadThread1of4ForFork0_#in~arg.base| 0))} [365] threadENTRY-->L712: Formula: (and (= |v_threadThread1of4ForFork0_#in~arg.offset_1| v_threadThread1of4ForFork0_~arg.offset_1) (= v_threadThread1of4ForFork0_~arg.base_1 |v_threadThread1of4ForFork0_#in~arg.base_1|)) InVars {threadThread1of4ForFork0_#in~arg.base=|v_threadThread1of4ForFork0_#in~arg.base_1|, threadThread1of4ForFork0_#in~arg.offset=|v_threadThread1of4ForFork0_#in~arg.offset_1|} OutVars{threadThread1of4ForFork0_#in~arg.offset=|v_threadThread1of4ForFork0_#in~arg.offset_1|, threadThread1of4ForFork0_~arg.base=v_threadThread1of4ForFork0_~arg.base_1, threadThread1of4ForFork0_#in~arg.base=|v_threadThread1of4ForFork0_#in~arg.base_1|, threadThread1of4ForFork0_~arg.offset=v_threadThread1of4ForFork0_~arg.offset_1} AuxVars[] AssignedVars[threadThread1of4ForFork0_~arg.offset, threadThread1of4ForFork0_~arg.base] {64404#(and (<= threadThread1of4ForFork0_~arg.offset 1) (<= threadThread1of4ForFork0_~arg.base 0))} is VALID [2022-02-20 21:00:03,953 INFO L290 TraceCheckUtils]: 26: Hoare triple {64404#(and (<= threadThread1of4ForFork0_~arg.offset 1) (<= threadThread1of4ForFork0_~arg.base 0))} [366] L712-->L713: Formula: (= v_threadThread1of4ForFork0_~thread~0_1 (+ v_threadThread1of4ForFork0_~arg.base_3 v_threadThread1of4ForFork0_~arg.offset_3)) InVars {threadThread1of4ForFork0_~arg.offset=v_threadThread1of4ForFork0_~arg.offset_3, threadThread1of4ForFork0_~arg.base=v_threadThread1of4ForFork0_~arg.base_3} OutVars{threadThread1of4ForFork0_~arg.base=v_threadThread1of4ForFork0_~arg.base_3, threadThread1of4ForFork0_~thread~0=v_threadThread1of4ForFork0_~thread~0_1, threadThread1of4ForFork0_~arg.offset=v_threadThread1of4ForFork0_~arg.offset_3} AuxVars[] AssignedVars[threadThread1of4ForFork0_~thread~0] {64322#(<= threadThread1of4ForFork0_~thread~0 1)} is VALID [2022-02-20 21:00:03,953 INFO L290 TraceCheckUtils]: 27: Hoare triple {64322#(<= threadThread1of4ForFork0_~thread~0 1)} [367] L713-->L715: Formula: (= v_threadThread1of4ForFork0_~thread~0_3 v_~x~0_5) InVars {threadThread1of4ForFork0_~thread~0=v_threadThread1of4ForFork0_~thread~0_3} OutVars{~x~0=v_~x~0_5, threadThread1of4ForFork0_~thread~0=v_threadThread1of4ForFork0_~thread~0_3} AuxVars[] AssignedVars[~x~0] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,954 INFO L290 TraceCheckUtils]: 28: Hoare triple {64323#(<= ~x~0 1)} [356] L724-4-->L724-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,954 INFO L290 TraceCheckUtils]: 29: Hoare triple {64323#(<= ~x~0 1)} [309] L724-5-->L723-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet3#1] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,954 INFO L290 TraceCheckUtils]: 30: Hoare triple {64323#(<= ~x~0 1)} [338] L723-2-->L723-3: Formula: (= |v_ULTIMATE.start_main_#t~post1#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_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_2|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,955 INFO L290 TraceCheckUtils]: 31: Hoare triple {64323#(<= ~x~0 1)} [317] L723-3-->L723-4: Formula: (= (+ |v_ULTIMATE.start_main_#t~post1#1_3| 1) |v_ULTIMATE.start_main_~i~0#1_7|) InVars {ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_7|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,956 INFO L290 TraceCheckUtils]: 32: Hoare triple {64323#(<= ~x~0 1)} [333] L723-4-->L723-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,956 INFO L290 TraceCheckUtils]: 33: Hoare triple {64323#(<= ~x~0 1)} [324] L723-5-->L724: Formula: (<= |v_ULTIMATE.start_main_~i~0#1_4| 10) 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[] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,956 INFO L290 TraceCheckUtils]: 34: Hoare triple {64323#(<= ~x~0 1)} [320] L724-->L724-1: Formula: (= |v_ULTIMATE.start_main_#t~pre2#1_2| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,957 INFO L290 TraceCheckUtils]: 35: Hoare triple {64323#(<= ~x~0 1)} [346] L724-1-->L724-2: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,957 INFO L290 TraceCheckUtils]: 36: Hoare triple {64323#(<= ~x~0 1)} [311] L724-2-->L724-3: Formula: (= (store |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3| (store (select |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3|) (+ |v_ULTIMATE.start_main_~#t~0#1.offset_3| (* |v_ULTIMATE.start_main_~i~0#1_5| 4)) |v_ULTIMATE.start_main_#t~pre2#1_3|)) |v_#memory_int_4|) InVars {#memory_int=|v_#memory_int_5|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} OutVars{#memory_int=|v_#memory_int_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} AuxVars[] AssignedVars[#memory_int] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,957 INFO L290 TraceCheckUtils]: 37: Hoare triple {64323#(<= ~x~0 1)} [382] L724-3-->threadENTRY: Formula: (and (= v_threadThread2of4ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre2#1_24|) (= |v_ULTIMATE.start_main_~i~0#1_27| |v_threadThread2of4ForFork0_#in~arg.offset_4|) (= 0 |v_threadThread2of4ForFork0_#in~arg.base_4|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_27|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_24|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_27|, threadThread2of4ForFork0_#in~arg.offset=|v_threadThread2of4ForFork0_#in~arg.offset_4|, threadThread2of4ForFork0_~arg.offset=v_threadThread2of4ForFork0_~arg.offset_6, threadThread2of4ForFork0_thidvar0=v_threadThread2of4ForFork0_thidvar0_2, threadThread2of4ForFork0_#res.base=|v_threadThread2of4ForFork0_#res.base_4|, threadThread2of4ForFork0_#in~arg.base=|v_threadThread2of4ForFork0_#in~arg.base_4|, threadThread2of4ForFork0_~arg.base=v_threadThread2of4ForFork0_~arg.base_6, threadThread2of4ForFork0_~thread~0=v_threadThread2of4ForFork0_~thread~0_6, threadThread2of4ForFork0_#res.offset=|v_threadThread2of4ForFork0_#res.offset_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_24|} AuxVars[] AssignedVars[threadThread2of4ForFork0_#in~arg.offset, threadThread2of4ForFork0_~arg.offset, threadThread2of4ForFork0_thidvar0, threadThread2of4ForFork0_#res.base, threadThread2of4ForFork0_#in~arg.base, threadThread2of4ForFork0_~arg.base, threadThread2of4ForFork0_~thread~0, threadThread2of4ForFork0_#res.offset] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,958 INFO L290 TraceCheckUtils]: 38: Hoare triple {64323#(<= ~x~0 1)} [356] L724-4-->L724-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,958 INFO L290 TraceCheckUtils]: 39: Hoare triple {64323#(<= ~x~0 1)} [309] L724-5-->L723-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet3#1] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,958 INFO L290 TraceCheckUtils]: 40: Hoare triple {64323#(<= ~x~0 1)} [338] L723-2-->L723-3: Formula: (= |v_ULTIMATE.start_main_#t~post1#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_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_2|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,959 INFO L290 TraceCheckUtils]: 41: Hoare triple {64323#(<= ~x~0 1)} [317] L723-3-->L723-4: Formula: (= (+ |v_ULTIMATE.start_main_#t~post1#1_3| 1) |v_ULTIMATE.start_main_~i~0#1_7|) InVars {ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_7|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,959 INFO L290 TraceCheckUtils]: 42: Hoare triple {64323#(<= ~x~0 1)} [333] L723-4-->L723-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,959 INFO L290 TraceCheckUtils]: 43: Hoare triple {64323#(<= ~x~0 1)} [324] L723-5-->L724: Formula: (<= |v_ULTIMATE.start_main_~i~0#1_4| 10) 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[] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,960 INFO L290 TraceCheckUtils]: 44: Hoare triple {64323#(<= ~x~0 1)} [320] L724-->L724-1: Formula: (= |v_ULTIMATE.start_main_#t~pre2#1_2| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,961 INFO L290 TraceCheckUtils]: 45: Hoare triple {64323#(<= ~x~0 1)} [346] L724-1-->L724-2: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,961 INFO L290 TraceCheckUtils]: 46: Hoare triple {64323#(<= ~x~0 1)} [311] L724-2-->L724-3: Formula: (= (store |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3| (store (select |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3|) (+ |v_ULTIMATE.start_main_~#t~0#1.offset_3| (* |v_ULTIMATE.start_main_~i~0#1_5| 4)) |v_ULTIMATE.start_main_#t~pre2#1_3|)) |v_#memory_int_4|) InVars {#memory_int=|v_#memory_int_5|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} OutVars{#memory_int=|v_#memory_int_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} AuxVars[] AssignedVars[#memory_int] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,961 INFO L290 TraceCheckUtils]: 47: Hoare triple {64323#(<= ~x~0 1)} [383] L724-3-->threadENTRY: Formula: (and (= |v_threadThread3of4ForFork0_#in~arg.base_4| 0) (= v_threadThread3of4ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre2#1_26|) (= |v_ULTIMATE.start_main_~i~0#1_29| |v_threadThread3of4ForFork0_#in~arg.offset_4|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_29|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_26|} OutVars{threadThread3of4ForFork0_#in~arg.offset=|v_threadThread3of4ForFork0_#in~arg.offset_4|, threadThread3of4ForFork0_~thread~0=v_threadThread3of4ForFork0_~thread~0_6, threadThread3of4ForFork0_thidvar0=v_threadThread3of4ForFork0_thidvar0_2, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_29|, threadThread3of4ForFork0_~arg.offset=v_threadThread3of4ForFork0_~arg.offset_6, threadThread3of4ForFork0_#res.base=|v_threadThread3of4ForFork0_#res.base_4|, threadThread3of4ForFork0_~arg.base=v_threadThread3of4ForFork0_~arg.base_6, threadThread3of4ForFork0_#in~arg.base=|v_threadThread3of4ForFork0_#in~arg.base_4|, threadThread3of4ForFork0_#res.offset=|v_threadThread3of4ForFork0_#res.offset_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_26|} AuxVars[] AssignedVars[threadThread3of4ForFork0_#in~arg.offset, threadThread3of4ForFork0_~thread~0, threadThread3of4ForFork0_thidvar0, threadThread3of4ForFork0_~arg.offset, threadThread3of4ForFork0_#res.base, threadThread3of4ForFork0_~arg.base, threadThread3of4ForFork0_#in~arg.base, threadThread3of4ForFork0_#res.offset] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,962 INFO L290 TraceCheckUtils]: 48: Hoare triple {64323#(<= ~x~0 1)} [356] L724-4-->L724-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,962 INFO L290 TraceCheckUtils]: 49: Hoare triple {64323#(<= ~x~0 1)} [309] L724-5-->L723-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet3#1] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,962 INFO L290 TraceCheckUtils]: 50: Hoare triple {64323#(<= ~x~0 1)} [338] L723-2-->L723-3: Formula: (= |v_ULTIMATE.start_main_#t~post1#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_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_2|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,963 INFO L290 TraceCheckUtils]: 51: Hoare triple {64323#(<= ~x~0 1)} [317] L723-3-->L723-4: Formula: (= (+ |v_ULTIMATE.start_main_#t~post1#1_3| 1) |v_ULTIMATE.start_main_~i~0#1_7|) InVars {ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_7|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,963 INFO L290 TraceCheckUtils]: 52: Hoare triple {64323#(<= ~x~0 1)} [333] L723-4-->L723-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,964 INFO L290 TraceCheckUtils]: 53: Hoare triple {64323#(<= ~x~0 1)} [323] L723-5-->L723-6: Formula: (not (<= |v_ULTIMATE.start_main_~i~0#1_3| 10)) 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[] {64323#(<= ~x~0 1)} is VALID [2022-02-20 21:00:03,964 INFO L290 TraceCheckUtils]: 54: Hoare triple {64323#(<= ~x~0 1)} [307] L723-6-->L727: Formula: (not (< v_~x~0_4 11)) InVars {~x~0=v_~x~0_4} OutVars{~x~0=v_~x~0_4} AuxVars[] AssignedVars[] {64318#false} is VALID [2022-02-20 21:00:03,964 INFO L290 TraceCheckUtils]: 55: Hoare triple {64318#false} [314] L727-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {64318#false} is VALID [2022-02-20 21:00:03,964 INFO L134 CoverageAnalysis]: Checked inductivity of 33 backedges. 0 proven. 11 refuted. 0 times theorem prover too weak. 22 trivial. 0 not checked. [2022-02-20 21:00:03,965 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 21:00:04,214 INFO L290 TraceCheckUtils]: 55: Hoare triple {64318#false} [314] L727-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {64318#false} is VALID [2022-02-20 21:00:04,215 INFO L290 TraceCheckUtils]: 54: Hoare triple {64498#(< ~x~0 11)} [307] L723-6-->L727: Formula: (not (< v_~x~0_4 11)) InVars {~x~0=v_~x~0_4} OutVars{~x~0=v_~x~0_4} AuxVars[] AssignedVars[] {64318#false} is VALID [2022-02-20 21:00:04,215 INFO L290 TraceCheckUtils]: 53: Hoare triple {64498#(< ~x~0 11)} [323] L723-5-->L723-6: Formula: (not (<= |v_ULTIMATE.start_main_~i~0#1_3| 10)) 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[] {64498#(< ~x~0 11)} is VALID [2022-02-20 21:00:04,215 INFO L290 TraceCheckUtils]: 52: Hoare triple {64498#(< ~x~0 11)} [333] L723-4-->L723-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {64498#(< ~x~0 11)} is VALID [2022-02-20 21:00:04,216 INFO L290 TraceCheckUtils]: 51: Hoare triple {64498#(< ~x~0 11)} [317] L723-3-->L723-4: Formula: (= (+ |v_ULTIMATE.start_main_#t~post1#1_3| 1) |v_ULTIMATE.start_main_~i~0#1_7|) InVars {ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_7|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {64498#(< ~x~0 11)} is VALID [2022-02-20 21:00:04,216 INFO L290 TraceCheckUtils]: 50: Hoare triple {64498#(< ~x~0 11)} [338] L723-2-->L723-3: Formula: (= |v_ULTIMATE.start_main_#t~post1#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_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_2|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {64498#(< ~x~0 11)} is VALID [2022-02-20 21:00:04,216 INFO L290 TraceCheckUtils]: 49: Hoare triple {64498#(< ~x~0 11)} [309] L724-5-->L723-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet3#1] {64498#(< ~x~0 11)} is VALID [2022-02-20 21:00:04,217 INFO L290 TraceCheckUtils]: 48: Hoare triple {64498#(< ~x~0 11)} [356] L724-4-->L724-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {64498#(< ~x~0 11)} is VALID [2022-02-20 21:00:04,217 INFO L290 TraceCheckUtils]: 47: Hoare triple {64498#(< ~x~0 11)} [383] L724-3-->threadENTRY: Formula: (and (= |v_threadThread3of4ForFork0_#in~arg.base_4| 0) (= v_threadThread3of4ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre2#1_26|) (= |v_ULTIMATE.start_main_~i~0#1_29| |v_threadThread3of4ForFork0_#in~arg.offset_4|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_29|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_26|} OutVars{threadThread3of4ForFork0_#in~arg.offset=|v_threadThread3of4ForFork0_#in~arg.offset_4|, threadThread3of4ForFork0_~thread~0=v_threadThread3of4ForFork0_~thread~0_6, threadThread3of4ForFork0_thidvar0=v_threadThread3of4ForFork0_thidvar0_2, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_29|, threadThread3of4ForFork0_~arg.offset=v_threadThread3of4ForFork0_~arg.offset_6, threadThread3of4ForFork0_#res.base=|v_threadThread3of4ForFork0_#res.base_4|, threadThread3of4ForFork0_~arg.base=v_threadThread3of4ForFork0_~arg.base_6, threadThread3of4ForFork0_#in~arg.base=|v_threadThread3of4ForFork0_#in~arg.base_4|, threadThread3of4ForFork0_#res.offset=|v_threadThread3of4ForFork0_#res.offset_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_26|} AuxVars[] AssignedVars[threadThread3of4ForFork0_#in~arg.offset, threadThread3of4ForFork0_~thread~0, threadThread3of4ForFork0_thidvar0, threadThread3of4ForFork0_~arg.offset, threadThread3of4ForFork0_#res.base, threadThread3of4ForFork0_~arg.base, threadThread3of4ForFork0_#in~arg.base, threadThread3of4ForFork0_#res.offset] {64498#(< ~x~0 11)} is VALID [2022-02-20 21:00:04,217 INFO L290 TraceCheckUtils]: 46: Hoare triple {64498#(< ~x~0 11)} [311] L724-2-->L724-3: Formula: (= (store |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3| (store (select |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3|) (+ |v_ULTIMATE.start_main_~#t~0#1.offset_3| (* |v_ULTIMATE.start_main_~i~0#1_5| 4)) |v_ULTIMATE.start_main_#t~pre2#1_3|)) |v_#memory_int_4|) InVars {#memory_int=|v_#memory_int_5|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} OutVars{#memory_int=|v_#memory_int_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} AuxVars[] AssignedVars[#memory_int] {64498#(< ~x~0 11)} is VALID [2022-02-20 21:00:04,218 INFO L290 TraceCheckUtils]: 45: Hoare triple {64498#(< ~x~0 11)} [346] L724-1-->L724-2: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] {64498#(< ~x~0 11)} is VALID [2022-02-20 21:00:04,218 INFO L290 TraceCheckUtils]: 44: Hoare triple {64498#(< ~x~0 11)} [320] L724-->L724-1: Formula: (= |v_ULTIMATE.start_main_#t~pre2#1_2| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {64498#(< ~x~0 11)} is VALID [2022-02-20 21:00:04,219 INFO L290 TraceCheckUtils]: 43: Hoare triple {64498#(< ~x~0 11)} [324] L723-5-->L724: Formula: (<= |v_ULTIMATE.start_main_~i~0#1_4| 10) 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[] {64498#(< ~x~0 11)} is VALID [2022-02-20 21:00:04,219 INFO L290 TraceCheckUtils]: 42: Hoare triple {64498#(< ~x~0 11)} [333] L723-4-->L723-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {64498#(< ~x~0 11)} is VALID [2022-02-20 21:00:04,219 INFO L290 TraceCheckUtils]: 41: Hoare triple {64498#(< ~x~0 11)} [317] L723-3-->L723-4: Formula: (= (+ |v_ULTIMATE.start_main_#t~post1#1_3| 1) |v_ULTIMATE.start_main_~i~0#1_7|) InVars {ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_7|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {64498#(< ~x~0 11)} is VALID [2022-02-20 21:00:04,220 INFO L290 TraceCheckUtils]: 40: Hoare triple {64498#(< ~x~0 11)} [338] L723-2-->L723-3: Formula: (= |v_ULTIMATE.start_main_#t~post1#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_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_2|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {64498#(< ~x~0 11)} is VALID [2022-02-20 21:00:04,220 INFO L290 TraceCheckUtils]: 39: Hoare triple {64498#(< ~x~0 11)} [309] L724-5-->L723-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet3#1] {64498#(< ~x~0 11)} is VALID [2022-02-20 21:00:04,220 INFO L290 TraceCheckUtils]: 38: Hoare triple {64498#(< ~x~0 11)} [356] L724-4-->L724-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {64498#(< ~x~0 11)} is VALID [2022-02-20 21:00:04,221 INFO L290 TraceCheckUtils]: 37: Hoare triple {64498#(< ~x~0 11)} [382] L724-3-->threadENTRY: Formula: (and (= v_threadThread2of4ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre2#1_24|) (= |v_ULTIMATE.start_main_~i~0#1_27| |v_threadThread2of4ForFork0_#in~arg.offset_4|) (= 0 |v_threadThread2of4ForFork0_#in~arg.base_4|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_27|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_24|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_27|, threadThread2of4ForFork0_#in~arg.offset=|v_threadThread2of4ForFork0_#in~arg.offset_4|, threadThread2of4ForFork0_~arg.offset=v_threadThread2of4ForFork0_~arg.offset_6, threadThread2of4ForFork0_thidvar0=v_threadThread2of4ForFork0_thidvar0_2, threadThread2of4ForFork0_#res.base=|v_threadThread2of4ForFork0_#res.base_4|, threadThread2of4ForFork0_#in~arg.base=|v_threadThread2of4ForFork0_#in~arg.base_4|, threadThread2of4ForFork0_~arg.base=v_threadThread2of4ForFork0_~arg.base_6, threadThread2of4ForFork0_~thread~0=v_threadThread2of4ForFork0_~thread~0_6, threadThread2of4ForFork0_#res.offset=|v_threadThread2of4ForFork0_#res.offset_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_24|} AuxVars[] AssignedVars[threadThread2of4ForFork0_#in~arg.offset, threadThread2of4ForFork0_~arg.offset, threadThread2of4ForFork0_thidvar0, threadThread2of4ForFork0_#res.base, threadThread2of4ForFork0_#in~arg.base, threadThread2of4ForFork0_~arg.base, threadThread2of4ForFork0_~thread~0, threadThread2of4ForFork0_#res.offset] {64498#(< ~x~0 11)} is VALID [2022-02-20 21:00:04,221 INFO L290 TraceCheckUtils]: 36: Hoare triple {64498#(< ~x~0 11)} [311] L724-2-->L724-3: Formula: (= (store |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3| (store (select |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3|) (+ |v_ULTIMATE.start_main_~#t~0#1.offset_3| (* |v_ULTIMATE.start_main_~i~0#1_5| 4)) |v_ULTIMATE.start_main_#t~pre2#1_3|)) |v_#memory_int_4|) InVars {#memory_int=|v_#memory_int_5|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} OutVars{#memory_int=|v_#memory_int_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} AuxVars[] AssignedVars[#memory_int] {64498#(< ~x~0 11)} is VALID [2022-02-20 21:00:04,221 INFO L290 TraceCheckUtils]: 35: Hoare triple {64498#(< ~x~0 11)} [346] L724-1-->L724-2: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] {64498#(< ~x~0 11)} is VALID [2022-02-20 21:00:04,222 INFO L290 TraceCheckUtils]: 34: Hoare triple {64498#(< ~x~0 11)} [320] L724-->L724-1: Formula: (= |v_ULTIMATE.start_main_#t~pre2#1_2| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {64498#(< ~x~0 11)} is VALID [2022-02-20 21:00:04,222 INFO L290 TraceCheckUtils]: 33: Hoare triple {64498#(< ~x~0 11)} [324] L723-5-->L724: Formula: (<= |v_ULTIMATE.start_main_~i~0#1_4| 10) 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[] {64498#(< ~x~0 11)} is VALID [2022-02-20 21:00:04,222 INFO L290 TraceCheckUtils]: 32: Hoare triple {64498#(< ~x~0 11)} [333] L723-4-->L723-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {64498#(< ~x~0 11)} is VALID [2022-02-20 21:00:04,223 INFO L290 TraceCheckUtils]: 31: Hoare triple {64498#(< ~x~0 11)} [317] L723-3-->L723-4: Formula: (= (+ |v_ULTIMATE.start_main_#t~post1#1_3| 1) |v_ULTIMATE.start_main_~i~0#1_7|) InVars {ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|} OutVars{ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_3|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_7|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {64498#(< ~x~0 11)} is VALID [2022-02-20 21:00:04,223 INFO L290 TraceCheckUtils]: 30: Hoare triple {64498#(< ~x~0 11)} [338] L723-2-->L723-3: Formula: (= |v_ULTIMATE.start_main_#t~post1#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_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_2|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1#1] {64498#(< ~x~0 11)} is VALID [2022-02-20 21:00:04,223 INFO L290 TraceCheckUtils]: 29: Hoare triple {64498#(< ~x~0 11)} [309] L724-5-->L723-2: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet3#1] {64498#(< ~x~0 11)} is VALID [2022-02-20 21:00:04,224 INFO L290 TraceCheckUtils]: 28: Hoare triple {64498#(< ~x~0 11)} [356] L724-4-->L724-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {64498#(< ~x~0 11)} is VALID [2022-02-20 21:00:04,224 INFO L290 TraceCheckUtils]: 27: Hoare triple {64580#(< threadThread1of4ForFork0_~thread~0 11)} [367] L713-->L715: Formula: (= v_threadThread1of4ForFork0_~thread~0_3 v_~x~0_5) InVars {threadThread1of4ForFork0_~thread~0=v_threadThread1of4ForFork0_~thread~0_3} OutVars{~x~0=v_~x~0_5, threadThread1of4ForFork0_~thread~0=v_threadThread1of4ForFork0_~thread~0_3} AuxVars[] AssignedVars[~x~0] {64498#(< ~x~0 11)} is VALID [2022-02-20 21:00:04,225 INFO L290 TraceCheckUtils]: 26: Hoare triple {64584#(< (+ threadThread1of4ForFork0_~arg.offset threadThread1of4ForFork0_~arg.base) 11)} [366] L712-->L713: Formula: (= v_threadThread1of4ForFork0_~thread~0_1 (+ v_threadThread1of4ForFork0_~arg.base_3 v_threadThread1of4ForFork0_~arg.offset_3)) InVars {threadThread1of4ForFork0_~arg.offset=v_threadThread1of4ForFork0_~arg.offset_3, threadThread1of4ForFork0_~arg.base=v_threadThread1of4ForFork0_~arg.base_3} OutVars{threadThread1of4ForFork0_~arg.base=v_threadThread1of4ForFork0_~arg.base_3, threadThread1of4ForFork0_~thread~0=v_threadThread1of4ForFork0_~thread~0_1, threadThread1of4ForFork0_~arg.offset=v_threadThread1of4ForFork0_~arg.offset_3} AuxVars[] AssignedVars[threadThread1of4ForFork0_~thread~0] {64580#(< threadThread1of4ForFork0_~thread~0 11)} is VALID [2022-02-20 21:00:04,225 INFO L290 TraceCheckUtils]: 25: Hoare triple {64588#(< (+ |threadThread1of4ForFork0_#in~arg.base| |threadThread1of4ForFork0_#in~arg.offset|) 11)} [365] threadENTRY-->L712: Formula: (and (= |v_threadThread1of4ForFork0_#in~arg.offset_1| v_threadThread1of4ForFork0_~arg.offset_1) (= v_threadThread1of4ForFork0_~arg.base_1 |v_threadThread1of4ForFork0_#in~arg.base_1|)) InVars {threadThread1of4ForFork0_#in~arg.base=|v_threadThread1of4ForFork0_#in~arg.base_1|, threadThread1of4ForFork0_#in~arg.offset=|v_threadThread1of4ForFork0_#in~arg.offset_1|} OutVars{threadThread1of4ForFork0_#in~arg.offset=|v_threadThread1of4ForFork0_#in~arg.offset_1|, threadThread1of4ForFork0_~arg.base=v_threadThread1of4ForFork0_~arg.base_1, threadThread1of4ForFork0_#in~arg.base=|v_threadThread1of4ForFork0_#in~arg.base_1|, threadThread1of4ForFork0_~arg.offset=v_threadThread1of4ForFork0_~arg.offset_1} AuxVars[] AssignedVars[threadThread1of4ForFork0_~arg.offset, threadThread1of4ForFork0_~arg.base] {64584#(< (+ threadThread1of4ForFork0_~arg.offset threadThread1of4ForFork0_~arg.base) 11)} is VALID [2022-02-20 21:00:04,226 INFO L290 TraceCheckUtils]: 24: Hoare triple {64592#(< |ULTIMATE.start_main_~i~0#1| 11)} [381] L724-3-->threadENTRY: Formula: (and (= |v_ULTIMATE.start_main_~i~0#1_25| |v_threadThread1of4ForFork0_#in~arg.offset_4|) (= |v_threadThread1of4ForFork0_#in~arg.base_4| 0) (= v_threadThread1of4ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre2#1_22|)) InVars {ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_25|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_22|} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_25|, threadThread1of4ForFork0_#res.base=|v_threadThread1of4ForFork0_#res.base_4|, threadThread1of4ForFork0_~arg.offset=v_threadThread1of4ForFork0_~arg.offset_6, threadThread1of4ForFork0_#res.offset=|v_threadThread1of4ForFork0_#res.offset_4|, threadThread1of4ForFork0_~arg.base=v_threadThread1of4ForFork0_~arg.base_6, threadThread1of4ForFork0_~thread~0=v_threadThread1of4ForFork0_~thread~0_6, threadThread1of4ForFork0_thidvar0=v_threadThread1of4ForFork0_thidvar0_2, threadThread1of4ForFork0_#in~arg.offset=|v_threadThread1of4ForFork0_#in~arg.offset_4|, threadThread1of4ForFork0_#in~arg.base=|v_threadThread1of4ForFork0_#in~arg.base_4|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_22|} AuxVars[] AssignedVars[threadThread1of4ForFork0_#res.base, threadThread1of4ForFork0_~arg.offset, threadThread1of4ForFork0_#res.offset, threadThread1of4ForFork0_~arg.base, threadThread1of4ForFork0_~thread~0, threadThread1of4ForFork0_thidvar0, threadThread1of4ForFork0_#in~arg.offset, threadThread1of4ForFork0_#in~arg.base] {64588#(< (+ |threadThread1of4ForFork0_#in~arg.base| |threadThread1of4ForFork0_#in~arg.offset|) 11)} is VALID [2022-02-20 21:00:04,226 INFO L290 TraceCheckUtils]: 23: Hoare triple {64592#(< |ULTIMATE.start_main_~i~0#1| 11)} [311] L724-2-->L724-3: Formula: (= (store |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3| (store (select |v_#memory_int_5| |v_ULTIMATE.start_main_~#t~0#1.base_3|) (+ |v_ULTIMATE.start_main_~#t~0#1.offset_3| (* |v_ULTIMATE.start_main_~i~0#1_5| 4)) |v_ULTIMATE.start_main_#t~pre2#1_3|)) |v_#memory_int_4|) InVars {#memory_int=|v_#memory_int_5|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} OutVars{#memory_int=|v_#memory_int_4|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_5|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_3|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_3|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_3|} AuxVars[] AssignedVars[#memory_int] {64592#(< |ULTIMATE.start_main_~i~0#1| 11)} is VALID [2022-02-20 21:00:04,227 INFO L290 TraceCheckUtils]: 22: Hoare triple {64592#(< |ULTIMATE.start_main_~i~0#1| 11)} [346] L724-1-->L724-2: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] {64592#(< |ULTIMATE.start_main_~i~0#1| 11)} is VALID [2022-02-20 21:00:04,227 INFO L290 TraceCheckUtils]: 21: Hoare triple {64592#(< |ULTIMATE.start_main_~i~0#1| 11)} [320] L724-->L724-1: Formula: (= |v_ULTIMATE.start_main_#t~pre2#1_2| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre2#1] {64592#(< |ULTIMATE.start_main_~i~0#1| 11)} is VALID [2022-02-20 21:00:04,227 INFO L290 TraceCheckUtils]: 20: Hoare triple {64592#(< |ULTIMATE.start_main_~i~0#1| 11)} [324] L723-5-->L724: Formula: (<= |v_ULTIMATE.start_main_~i~0#1_4| 10) 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[] {64592#(< |ULTIMATE.start_main_~i~0#1| 11)} is VALID [2022-02-20 21:00:04,228 INFO L290 TraceCheckUtils]: 19: Hoare triple {64317#true} [355] L722-->L723-5: Formula: (= |v_ULTIMATE.start_main_~i~0#1_2| 1) InVars {} OutVars{ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~0#1] {64592#(< |ULTIMATE.start_main_~i~0#1| 11)} is VALID [2022-02-20 21:00:04,228 INFO L290 TraceCheckUtils]: 18: Hoare triple {64317#true} [343] L719-1-->L722: Formula: (= v_~x~0_2 0) InVars {} OutVars{~x~0=v_~x~0_2} AuxVars[] AssignedVars[~x~0] {64317#true} is VALID [2022-02-20 21:00:04,228 INFO L290 TraceCheckUtils]: 17: Hoare triple {64317#true} [304] L719-->L719-1: Formula: (and (not (= |v_ULTIMATE.start_main_~#t~0#1.base_2| 0)) (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#t~0#1.base_2|) (= (store |v_#length_4| |v_ULTIMATE.start_main_~#t~0#1.base_2| 44) |v_#length_3|) (= |v_ULTIMATE.start_main_~#t~0#1.offset_2| 0) (= |v_#valid_4| (store |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2| 1)) (= (select |v_#valid_5| |v_ULTIMATE.start_main_~#t~0#1.base_2|) 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_4|, #valid=|v_#valid_5|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_3|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_2|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_2|, #valid=|v_#valid_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#t~0#1.offset, #valid, #length, ULTIMATE.start_main_~#t~0#1.base] {64317#true} is VALID [2022-02-20 21:00:04,228 INFO L290 TraceCheckUtils]: 16: Hoare triple {64317#true} [358] L718-1-->L719: Formula: (and (= |v_ULTIMATE.start_main_~argv#1.offset_2| |v_ULTIMATE.start_main_#in~argv#1.offset_2|) (= |v_ULTIMATE.start_main_#in~argv#1.base_2| |v_ULTIMATE.start_main_~argv#1.base_2|)) InVars {ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|} OutVars{ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_2|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_2|, ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_2|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~argv#1.offset] {64317#true} is VALID [2022-02-20 21:00:04,228 INFO L290 TraceCheckUtils]: 15: Hoare triple {64317#true} [321] L718-->L718-1: Formula: (= |v_ULTIMATE.start_main_#in~argc#1_2| |v_ULTIMATE.start_main_~argc#1_2|) InVars {ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_2|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1] {64317#true} is VALID [2022-02-20 21:00:04,229 INFO L290 TraceCheckUtils]: 14: Hoare triple {64317#true} [312] L-1-7-->L718: Formula: true InVars {} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_1|, ULTIMATE.start_main_#t~post1#1=|v_ULTIMATE.start_main_#t~post1#1_1|, ULTIMATE.start_main_~i~1#1=|v_ULTIMATE.start_main_~i~1#1_1|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_1|, ULTIMATE.start_main_#t~pre2#1=|v_ULTIMATE.start_main_#t~pre2#1_1|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_1|, ULTIMATE.start_main_~i~0#1=|v_ULTIMATE.start_main_~i~0#1_1|, ULTIMATE.start_main_#t~nondet3#1=|v_ULTIMATE.start_main_#t~nondet3#1_1|, ULTIMATE.start_main_~#t~0#1.offset=|v_ULTIMATE.start_main_~#t~0#1.offset_1|, ULTIMATE.start_main_#t~post4#1=|v_ULTIMATE.start_main_#t~post4#1_1|, ULTIMATE.start_main_#t~mem5#1=|v_ULTIMATE.start_main_#t~mem5#1_1|, ULTIMATE.start_main_~#t~0#1.base=|v_ULTIMATE.start_main_~#t~0#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#t~post1#1, ULTIMATE.start_main_~i~1#1, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_~i~0#1, ULTIMATE.start_main_#t~nondet3#1, ULTIMATE.start_main_~#t~0#1.offset, ULTIMATE.start_main_#t~post4#1, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_#t~mem5#1, ULTIMATE.start_main_~#t~0#1.base, ULTIMATE.start_main_#t~pre2#1] {64317#true} is VALID [2022-02-20 21:00:04,229 INFO L290 TraceCheckUtils]: 13: Hoare triple {64317#true} [336] L-1-6-->L-1-7: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1] {64317#true} is VALID [2022-02-20 21:00:04,229 INFO L290 TraceCheckUtils]: 12: Hoare triple {64317#true} [316] L-1-5-->L-1-6: Formula: (and (= |v_ULTIMATE.start_#in~argv#1.offset_1| |v_ULTIMATE.start_main_#in~argv#1.offset_1|) (= |v_ULTIMATE.start_main_#in~argv#1.base_1| |v_ULTIMATE.start_#in~argv#1.base_1|) (= |v_ULTIMATE.start_main_#in~argc#1_1| |v_ULTIMATE.start_#in~argc#1_1|)) InVars {ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} OutVars{ULTIMATE.start_main_#in~argv#1.base=|v_ULTIMATE.start_main_#in~argv#1.base_1|, ULTIMATE.start_#in~argc#1=|v_ULTIMATE.start_#in~argc#1_1|, ULTIMATE.start_main_#in~argc#1=|v_ULTIMATE.start_main_#in~argc#1_1|, ULTIMATE.start_main_#in~argv#1.offset=|v_ULTIMATE.start_main_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.offset=|v_ULTIMATE.start_#in~argv#1.offset_1|, ULTIMATE.start_#in~argv#1.base=|v_ULTIMATE.start_#in~argv#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#in~argv#1.base, ULTIMATE.start_main_#in~argc#1, ULTIMATE.start_main_#in~argv#1.offset] {64317#true} is VALID [2022-02-20 21:00:04,229 INFO L290 TraceCheckUtils]: 11: Hoare triple {64317#true} [337] L-1-4-->L-1-5: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {64317#true} is VALID [2022-02-20 21:00:04,229 INFO L290 TraceCheckUtils]: 10: Hoare triple {64317#true} [354] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {64317#true} is VALID [2022-02-20 21:00:04,229 INFO L290 TraceCheckUtils]: 9: Hoare triple {64317#true} [332] L16-5-->L-1-3: Formula: (= v_~x~0_1 0) InVars {} OutVars{~x~0=v_~x~0_1} AuxVars[] AssignedVars[~x~0] {64317#true} is VALID [2022-02-20 21:00:04,230 INFO L290 TraceCheckUtils]: 8: Hoare triple {64317#true} [342] L16-4-->L16-5: Formula: (= (select (select |v_#memory_int_3| 2) 0) 0) InVars {#memory_int=|v_#memory_int_3|} OutVars{#memory_int=|v_#memory_int_3|} AuxVars[] AssignedVars[] {64317#true} is VALID [2022-02-20 21:00:04,230 INFO L290 TraceCheckUtils]: 7: Hoare triple {64317#true} [339] L16-3-->L16-4: Formula: (and (= (select |v_#valid_3| 2) 1) (= (select |v_#length_2| 2) 1)) InVars {#length=|v_#length_2|, #valid=|v_#valid_3|} OutVars{#length=|v_#length_2|, #valid=|v_#valid_3|} AuxVars[] AssignedVars[] {64317#true} is VALID [2022-02-20 21:00:04,230 INFO L290 TraceCheckUtils]: 6: Hoare triple {64317#true} [357] L16-2-->L16-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[] {64317#true} is VALID [2022-02-20 21:00:04,230 INFO L290 TraceCheckUtils]: 5: Hoare triple {64317#true} [302] L16-1-->L16-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[] {64317#true} is VALID [2022-02-20 21:00:04,230 INFO L290 TraceCheckUtils]: 4: Hoare triple {64317#true} [334] L16-->L16-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[] {64317#true} is VALID [2022-02-20 21:00:04,230 INFO L290 TraceCheckUtils]: 3: Hoare triple {64317#true} [353] L-1-2-->L16: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {64317#true} is VALID [2022-02-20 21:00:04,231 INFO L290 TraceCheckUtils]: 2: Hoare triple {64317#true} [352] 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[] {64317#true} is VALID [2022-02-20 21:00:04,231 INFO L290 TraceCheckUtils]: 1: Hoare triple {64317#true} [335] 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] {64317#true} is VALID [2022-02-20 21:00:04,231 INFO L290 TraceCheckUtils]: 0: Hoare triple {64317#true} [345] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {64317#true} is VALID [2022-02-20 21:00:04,231 INFO L134 CoverageAnalysis]: Checked inductivity of 33 backedges. 0 proven. 11 refuted. 0 times theorem prover too weak. 22 trivial. 0 not checked. [2022-02-20 21:00:04,231 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2010627669] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 21:00:04,232 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 21:00:04,232 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7, 7] total 15 [2022-02-20 21:00:04,232 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1676335962] [2022-02-20 21:00:04,232 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 21:00:04,233 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 4.8) internal successors, (72), 15 states have internal predecessors, (72), 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 56 [2022-02-20 21:00:04,233 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 21:00:04,233 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 4.8) internal successors, (72), 15 states have internal predecessors, (72), 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 21:00:04,279 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 21:00:04,279 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-02-20 21:00:04,279 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 21:00:04,280 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-02-20 21:00:04,280 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=38, Invalid=172, Unknown=0, NotChecked=0, Total=210 [2022-02-20 21:00:04,281 INFO L499 CegarLoopForPetriNet]: Number of universal loopers: 51 out of 80 [2022-02-20 21:00:04,283 INFO L92 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 81 places, 68 transitions, 222 flow. Second operand has 15 states, 15 states have (on average 53.6) internal successors, (804), 15 states have internal predecessors, (804), 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 21:00:04,283 INFO L101 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-02-20 21:00:04,283 INFO L102 encePairwiseOnDemand]: Number of universal subtrahend loopers: 51 of 80 [2022-02-20 21:00:04,283 INFO L74 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand