./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/pthread/fib_unsafe-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/fib_unsafe-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 38d4dff022ef4d2ea830e2718ea99215413d1e3f67567ac017eaf8275c303ef0 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 20:06:53,147 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 20:06:53,149 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 20:06:53,172 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 20:06:53,172 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 20:06:53,173 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 20:06:53,174 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 20:06:53,176 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 20:06:53,177 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 20:06:53,178 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 20:06:53,179 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 20:06:53,180 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 20:06:53,181 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 20:06:53,181 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 20:06:53,182 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 20:06:53,183 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 20:06:53,184 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 20:06:53,185 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 20:06:53,186 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 20:06:53,188 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 20:06:53,189 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 20:06:53,198 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 20:06:53,199 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 20:06:53,201 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 20:06:53,203 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 20:06:53,209 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 20:06:53,209 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 20:06:53,210 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 20:06:53,210 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 20:06:53,211 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 20:06:53,211 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 20:06:53,212 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 20:06:53,213 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 20:06:53,214 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 20:06:53,215 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 20:06:53,216 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 20:06:53,216 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 20:06:53,217 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 20:06:53,217 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 20:06:53,218 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 20:06:53,218 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 20:06:53,219 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:06:53,245 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 20:06:53,247 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 20:06:53,248 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 20:06:53,248 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 20:06:53,249 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 20:06:53,249 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 20:06:53,249 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 20:06:53,249 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 20:06:53,250 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 20:06:53,250 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 20:06:53,251 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 20:06:53,251 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 20:06:53,251 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 20:06:53,251 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 20:06:53,251 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-02-20 20:06:53,252 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 20:06:53,252 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-02-20 20:06:53,252 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 20:06:53,252 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-02-20 20:06:53,252 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 20:06:53,253 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-02-20 20:06:53,253 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 20:06:53,253 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 20:06:53,253 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 20:06:53,253 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 20:06:53,254 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 20:06:53,254 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 20:06:53,254 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-02-20 20:06:53,254 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 20:06:53,254 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 20:06:53,254 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-02-20 20:06:53,255 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-02-20 20:06:53,255 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-02-20 20:06:53,255 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 -> 38d4dff022ef4d2ea830e2718ea99215413d1e3f67567ac017eaf8275c303ef0 [2022-02-20 20:06:53,479 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 20:06:53,496 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 20:06:53,498 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 20:06:53,499 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 20:06:53,499 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 20:06:53,500 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/pthread/fib_unsafe-10.i [2022-02-20 20:06:53,560 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/8154ce9c3/471baae4bc9a440cae8998df80a0b03d/FLAGa7cfe79ac [2022-02-20 20:06:54,058 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 20:06:54,058 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread/fib_unsafe-10.i [2022-02-20 20:06:54,072 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/8154ce9c3/471baae4bc9a440cae8998df80a0b03d/FLAGa7cfe79ac [2022-02-20 20:06:54,380 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/8154ce9c3/471baae4bc9a440cae8998df80a0b03d [2022-02-20 20:06:54,383 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 20:06:54,384 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 20:06:54,388 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 20:06:54,388 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 20:06:54,390 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 20:06:54,391 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 08:06:54" (1/1) ... [2022-02-20 20:06:54,392 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5b0eb4a2 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:06:54, skipping insertion in model container [2022-02-20 20:06:54,392 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 08:06:54" (1/1) ... [2022-02-20 20:06:54,398 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 20:06:54,429 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 20:06:54,767 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/fib_unsafe-10.i[30813,30826] [2022-02-20 20:06:54,770 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 20:06:54,777 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 20:06:54,836 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/fib_unsafe-10.i[30813,30826] [2022-02-20 20:06:54,837 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 20:06:54,869 INFO L208 MainTranslator]: Completed translation [2022-02-20 20:06:54,870 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:06:54 WrapperNode [2022-02-20 20:06:54,870 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 20:06:54,872 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 20:06:54,872 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 20:06:54,872 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 20:06:54,878 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:06:54" (1/1) ... [2022-02-20 20:06:54,906 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:06:54" (1/1) ... [2022-02-20 20:06:54,935 INFO L137 Inliner]: procedures = 164, calls = 26, calls flagged for inlining = 3, calls inlined = 3, statements flattened = 71 [2022-02-20 20:06:54,936 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 20:06:54,936 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 20:06:54,936 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 20:06:54,937 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 20:06:54,943 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:06:54" (1/1) ... [2022-02-20 20:06:54,944 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:06:54" (1/1) ... [2022-02-20 20:06:54,948 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:06:54" (1/1) ... [2022-02-20 20:06:54,949 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:06:54" (1/1) ... [2022-02-20 20:06:54,963 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:06:54" (1/1) ... [2022-02-20 20:06:54,966 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:06:54" (1/1) ... [2022-02-20 20:06:54,966 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:06:54" (1/1) ... [2022-02-20 20:06:54,969 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 20:06:54,969 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 20:06:54,969 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 20:06:54,970 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 20:06:54,975 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:06:54" (1/1) ... [2022-02-20 20:06:54,980 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 20:06:54,990 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 20:06:55,005 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:06:55,010 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:06:55,041 INFO L130 BoogieDeclarations]: Found specification of procedure t1 [2022-02-20 20:06:55,041 INFO L138 BoogieDeclarations]: Found implementation of procedure t1 [2022-02-20 20:06:55,041 INFO L130 BoogieDeclarations]: Found specification of procedure t2 [2022-02-20 20:06:55,042 INFO L138 BoogieDeclarations]: Found implementation of procedure t2 [2022-02-20 20:06:55,042 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-02-20 20:06:55,042 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2022-02-20 20:06:55,042 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 20:06:55,042 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-02-20 20:06:55,042 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 20:06:55,043 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-02-20 20:06:55,043 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2022-02-20 20:06:55,043 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 20:06:55,043 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 20:06:55,045 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:06:55,199 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 20:06:55,200 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 20:06:55,437 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 20:06:55,443 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 20:06:55,443 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-02-20 20:06:55,445 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 08:06:55 BoogieIcfgContainer [2022-02-20 20:06:55,445 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 20:06:55,446 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 20:06:55,446 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 20:06:55,451 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 20:06:55,451 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 08:06:54" (1/3) ... [2022-02-20 20:06:55,452 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@63d034a5 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 08:06:55, skipping insertion in model container [2022-02-20 20:06:55,452 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:06:54" (2/3) ... [2022-02-20 20:06:55,452 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@63d034a5 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 08:06:55, skipping insertion in model container [2022-02-20 20:06:55,452 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 08:06:55" (3/3) ... [2022-02-20 20:06:55,455 INFO L111 eAbstractionObserver]: Analyzing ICFG fib_unsafe-10.i [2022-02-20 20:06:55,463 WARN L150 ceAbstractionStarter]: Switching off computation of Hoare annotation because input is a concurrent program [2022-02-20 20:06:55,463 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 20:06:55,464 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-02-20 20:06:55,464 INFO L534 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2022-02-20 20:06:55,550 WARN L322 ript$VariableManager]: TermVariabe |t1Thread1of1ForFork0_#in~arg.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,551 WARN L322 ript$VariableManager]: TermVariabe |t1Thread1of1ForFork0_#in~arg.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,551 WARN L322 ript$VariableManager]: TermVariabe t1Thread1of1ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,551 WARN L322 ript$VariableManager]: TermVariabe t1Thread1of1ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,551 WARN L322 ript$VariableManager]: TermVariabe |t1Thread1of1ForFork0_#in~arg.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,552 WARN L322 ript$VariableManager]: TermVariabe |t1Thread1of1ForFork0_#in~arg.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,552 WARN L322 ript$VariableManager]: TermVariabe t1Thread1of1ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,552 WARN L322 ript$VariableManager]: TermVariabe t1Thread1of1ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,554 WARN L322 ript$VariableManager]: TermVariabe |t1Thread1of1ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,554 WARN L322 ript$VariableManager]: TermVariabe |t1Thread1of1ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,555 WARN L322 ript$VariableManager]: TermVariabe |t1Thread1of1ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,555 WARN L322 ript$VariableManager]: TermVariabe |t1Thread1of1ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,555 WARN L322 ript$VariableManager]: TermVariabe |t1Thread1of1ForFork0_#t~post1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,555 WARN L322 ript$VariableManager]: TermVariabe |t1Thread1of1ForFork0_#t~post1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,556 WARN L322 ript$VariableManager]: TermVariabe |t1Thread1of1ForFork0_#t~post1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,556 WARN L322 ript$VariableManager]: TermVariabe |t1Thread1of1ForFork0_#t~post1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,556 WARN L322 ript$VariableManager]: TermVariabe |t1Thread1of1ForFork0_#t~post1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,556 WARN L322 ript$VariableManager]: TermVariabe |t1Thread1of1ForFork0_#t~post1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,557 WARN L322 ript$VariableManager]: TermVariabe |t2Thread1of1ForFork1_#in~arg.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,557 WARN L322 ript$VariableManager]: TermVariabe |t2Thread1of1ForFork1_#in~arg.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,557 WARN L322 ript$VariableManager]: TermVariabe t2Thread1of1ForFork1_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,557 WARN L322 ript$VariableManager]: TermVariabe t2Thread1of1ForFork1_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,557 WARN L322 ript$VariableManager]: TermVariabe |t2Thread1of1ForFork1_#in~arg.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,558 WARN L322 ript$VariableManager]: TermVariabe |t2Thread1of1ForFork1_#in~arg.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,558 WARN L322 ript$VariableManager]: TermVariabe t2Thread1of1ForFork1_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,558 WARN L322 ript$VariableManager]: TermVariabe t2Thread1of1ForFork1_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,560 WARN L322 ript$VariableManager]: TermVariabe |t2Thread1of1ForFork1_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,560 WARN L322 ript$VariableManager]: TermVariabe |t2Thread1of1ForFork1_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,560 WARN L322 ript$VariableManager]: TermVariabe |t2Thread1of1ForFork1_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,561 WARN L322 ript$VariableManager]: TermVariabe |t2Thread1of1ForFork1_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,561 WARN L322 ript$VariableManager]: TermVariabe |t2Thread1of1ForFork1_#t~post2| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,561 WARN L322 ript$VariableManager]: TermVariabe |t2Thread1of1ForFork1_#t~post2| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,562 WARN L322 ript$VariableManager]: TermVariabe |t2Thread1of1ForFork1_#t~post2| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,562 WARN L322 ript$VariableManager]: TermVariabe |t2Thread1of1ForFork1_#t~post2| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,562 WARN L322 ript$VariableManager]: TermVariabe |t2Thread1of1ForFork1_#t~post2| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,562 WARN L322 ript$VariableManager]: TermVariabe |t2Thread1of1ForFork1_#t~post2| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,565 WARN L322 ript$VariableManager]: TermVariabe |t1Thread1of1ForFork0_#t~post1| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,565 WARN L322 ript$VariableManager]: TermVariabe t1Thread1of1ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,566 WARN L322 ript$VariableManager]: TermVariabe t1Thread1of1ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,566 WARN L322 ript$VariableManager]: TermVariabe |t1Thread1of1ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,566 WARN L322 ript$VariableManager]: TermVariabe |t1Thread1of1ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,568 WARN L322 ript$VariableManager]: TermVariabe t2Thread1of1ForFork1_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,568 WARN L322 ript$VariableManager]: TermVariabe t2Thread1of1ForFork1_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,569 WARN L322 ript$VariableManager]: TermVariabe |t2Thread1of1ForFork1_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,569 WARN L322 ript$VariableManager]: TermVariabe |t2Thread1of1ForFork1_#t~post2| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,569 WARN L322 ript$VariableManager]: TermVariabe |t2Thread1of1ForFork1_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-02-20 20:06:55,569 INFO L148 ThreadInstanceAdder]: Constructed 0 joinOtherThreadTransitions. [2022-02-20 20:06:55,622 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 20:06:55,637 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:06:55,637 INFO L340 AbstractCegarLoop]: Starting to check reachability of 3 error locations. [2022-02-20 20:06:55,646 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 96 places, 96 transitions, 202 flow [2022-02-20 20:06:55,708 INFO L129 PetriNetUnfolder]: 7/94 cut-off events. [2022-02-20 20:06:55,708 INFO L130 PetriNetUnfolder]: For 0/0 co-relation queries the response was YES. [2022-02-20 20:06:55,715 INFO L84 FinitePrefix]: Finished finitePrefix Result has 101 conditions, 94 events. 7/94 cut-off events. For 0/0 co-relation queries the response was YES. Maximal size of possible extension queue 3. Compared 73 event pairs, 0 based on Foata normal form. 0/86 useless extension candidates. Maximal degree in co-relation 64. Up to 2 conditions per place. [2022-02-20 20:06:55,715 INFO L82 GeneralOperation]: Start removeDead. Operand has 96 places, 96 transitions, 202 flow [2022-02-20 20:06:55,720 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 94 places, 94 transitions, 194 flow [2022-02-20 20:06:55,737 INFO L129 PetriNetUnfolder]: 7/85 cut-off events. [2022-02-20 20:06:55,737 INFO L130 PetriNetUnfolder]: For 0/0 co-relation queries the response was YES. [2022-02-20 20:06:55,737 INFO L246 CegarLoopForPetriNet]: Found error trace [2022-02-20 20:06:55,738 INFO L254 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 20:06:55,738 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATION, ULTIMATE.startErr1INUSE_VIOLATION] === [2022-02-20 20:06:55,742 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:06:55,742 INFO L85 PathProgramCache]: Analyzing trace with hash -1927097680, now seen corresponding path program 1 times [2022-02-20 20:06:55,750 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:06:55,751 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [137279923] [2022-02-20 20:06:55,751 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:06:55,751 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:06:55,852 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:06:55,929 INFO L290 TraceCheckUtils]: 0: Hoare triple {99#true} [200] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {99#true} is VALID [2022-02-20 20:06:55,929 INFO L290 TraceCheckUtils]: 1: Hoare triple {99#true} [189] 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] {99#true} is VALID [2022-02-20 20:06:55,929 INFO L290 TraceCheckUtils]: 2: Hoare triple {99#true} [207] 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[] {99#true} is VALID [2022-02-20 20:06:55,930 INFO L290 TraceCheckUtils]: 3: Hoare triple {99#true} [208] L-1-2-->L19: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {99#true} is VALID [2022-02-20 20:06:55,930 INFO L290 TraceCheckUtils]: 4: Hoare triple {99#true} [176] L19-->L19-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[] {99#true} is VALID [2022-02-20 20:06:55,930 INFO L290 TraceCheckUtils]: 5: Hoare triple {99#true} [164] L19-1-->L19-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[] {99#true} is VALID [2022-02-20 20:06:55,930 INFO L290 TraceCheckUtils]: 6: Hoare triple {99#true} [186] L19-2-->L19-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[] {99#true} is VALID [2022-02-20 20:06:55,931 INFO L290 TraceCheckUtils]: 7: Hoare triple {99#true} [184] L19-3-->L19-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[] {99#true} is VALID [2022-02-20 20:06:55,931 INFO L290 TraceCheckUtils]: 8: Hoare triple {99#true} [143] L19-4-->L19-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[] {99#true} is VALID [2022-02-20 20:06:55,931 INFO L290 TraceCheckUtils]: 9: Hoare triple {99#true} [211] L19-5-->L683: Formula: (= v_~i~0_1 0) InVars {} OutVars{~i~0=v_~i~0_1} AuxVars[] AssignedVars[~i~0] {99#true} is VALID [2022-02-20 20:06:55,935 INFO L290 TraceCheckUtils]: 10: Hoare triple {99#true} [148] L683-->L686: Formula: (= v_~j~0_1 0) InVars {} OutVars{~j~0=v_~j~0_1} AuxVars[] AssignedVars[~j~0] {99#true} is VALID [2022-02-20 20:06:55,935 INFO L290 TraceCheckUtils]: 11: Hoare triple {99#true} [221] L686-->L686-1: Formula: (= v_~p~0_1 0) InVars {} OutVars{~p~0=v_~p~0_1} AuxVars[] AssignedVars[~p~0] {99#true} is VALID [2022-02-20 20:06:55,935 INFO L290 TraceCheckUtils]: 12: Hoare triple {99#true} [169] L686-1-->L703: Formula: (= v_~q~0_1 0) InVars {} OutVars{~q~0=v_~q~0_1} AuxVars[] AssignedVars[~q~0] {99#true} is VALID [2022-02-20 20:06:55,936 INFO L290 TraceCheckUtils]: 13: Hoare triple {99#true} [145] L703-->L703-1: Formula: (= v_~cur~0_1 1) InVars {} OutVars{~cur~0=v_~cur~0_1} AuxVars[] AssignedVars[~cur~0] {99#true} is VALID [2022-02-20 20:06:55,936 INFO L290 TraceCheckUtils]: 14: Hoare triple {99#true} [197] L703-1-->L703-2: Formula: (= v_~prev~0_1 0) InVars {} OutVars{~prev~0=v_~prev~0_1} AuxVars[] AssignedVars[~prev~0] {99#true} is VALID [2022-02-20 20:06:55,936 INFO L290 TraceCheckUtils]: 15: Hoare triple {99#true} [170] L703-2-->L704: Formula: (= v_~next~0_1 0) InVars {} OutVars{~next~0=v_~next~0_1} AuxVars[] AssignedVars[~next~0] {99#true} is VALID [2022-02-20 20:06:55,936 INFO L290 TraceCheckUtils]: 16: Hoare triple {99#true} [205] L704-->L-1-3: Formula: (= v_~x~0_1 0) InVars {} OutVars{~x~0=v_~x~0_1} AuxVars[] AssignedVars[~x~0] {99#true} is VALID [2022-02-20 20:06:55,936 INFO L290 TraceCheckUtils]: 17: Hoare triple {99#true} [212] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {99#true} is VALID [2022-02-20 20:06:55,937 INFO L290 TraceCheckUtils]: 18: Hoare triple {99#true} [193] L-1-4-->L-1-5: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {99#true} is VALID [2022-02-20 20:06:55,937 INFO L290 TraceCheckUtils]: 19: Hoare triple {99#true} [157] 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] {99#true} is VALID [2022-02-20 20:06:55,937 INFO L290 TraceCheckUtils]: 20: Hoare triple {99#true} [192] 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] {99#true} is VALID [2022-02-20 20:06:55,937 INFO L290 TraceCheckUtils]: 21: Hoare triple {99#true} [153] L-1-7-->L713: Formula: true InVars {} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_1|, ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_1|, ULTIMATE.start_main_~#id2~0#1.offset=|v_ULTIMATE.start_main_~#id2~0#1.offset_1|, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_1|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_1|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_1|, ULTIMATE.start_main_~#id1~0#1.offset=|v_ULTIMATE.start_main_~#id1~0#1.offset_1|, ULTIMATE.start_main_~#id1~0#1.base=|v_ULTIMATE.start_main_~#id1~0#1.base_1|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_1|, ULTIMATE.start_main_#t~nondet5#1=|v_ULTIMATE.start_main_#t~nondet5#1_1|, ULTIMATE.start_main_#t~nondet7#1=|v_ULTIMATE.start_main_#t~nondet7#1_1|, ULTIMATE.start_main_~correct~0#1=|v_ULTIMATE.start_main_~correct~0#1_1|, ULTIMATE.start_main_~#id2~0#1.base=|v_ULTIMATE.start_main_~#id2~0#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#t~ret8#1, ULTIMATE.start_main_~#id2~0#1.offset, ULTIMATE.start_main_#t~pre6#1, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_#t~pre4#1, ULTIMATE.start_main_~#id1~0#1.offset, ULTIMATE.start_main_~#id1~0#1.base, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_#t~nondet5#1, ULTIMATE.start_main_#t~nondet7#1, ULTIMATE.start_main_~correct~0#1, ULTIMATE.start_main_~#id2~0#1.base] {99#true} is VALID [2022-02-20 20:06:55,938 INFO L290 TraceCheckUtils]: 22: Hoare triple {99#true} [181] L713-->L713-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] {99#true} is VALID [2022-02-20 20:06:55,938 INFO L290 TraceCheckUtils]: 23: Hoare triple {99#true} [154] L713-1-->L714: 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] {99#true} is VALID [2022-02-20 20:06:55,938 INFO L290 TraceCheckUtils]: 24: Hoare triple {99#true} [139] L714-->L714-1: Formula: (and (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#id1~0#1.base_2|) (not (= 0 |v_ULTIMATE.start_main_~#id1~0#1.base_2|)) (= |v_#valid_4| (store |v_#valid_5| |v_ULTIMATE.start_main_~#id1~0#1.base_2| 1)) (= |v_#length_3| (store |v_#length_4| |v_ULTIMATE.start_main_~#id1~0#1.base_2| 4)) (= (select |v_#valid_5| |v_ULTIMATE.start_main_~#id1~0#1.base_2|) 0) (= |v_ULTIMATE.start_main_~#id1~0#1.offset_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_~#id1~0#1.offset=|v_ULTIMATE.start_main_~#id1~0#1.offset_2|, #valid=|v_#valid_4|, ULTIMATE.start_main_~#id1~0#1.base=|v_ULTIMATE.start_main_~#id1~0#1.base_2|} AuxVars[] AssignedVars[#valid, #length, ULTIMATE.start_main_~#id1~0#1.offset, ULTIMATE.start_main_~#id1~0#1.base] {99#true} is VALID [2022-02-20 20:06:55,939 INFO L290 TraceCheckUtils]: 25: Hoare triple {99#true} [167] L714-1-->L714-2: Formula: (and (= (select |v_#valid_7| |v_ULTIMATE.start_main_~#id2~0#1.base_2|) 0) (< |v_#StackHeapBarrier_3| |v_ULTIMATE.start_main_~#id2~0#1.base_2|) (not (= 0 |v_ULTIMATE.start_main_~#id2~0#1.base_2|)) (= (store |v_#length_6| |v_ULTIMATE.start_main_~#id2~0#1.base_2| 4) |v_#length_5|) (= |v_#valid_6| (store |v_#valid_7| |v_ULTIMATE.start_main_~#id2~0#1.base_2| 1)) (= |v_ULTIMATE.start_main_~#id2~0#1.offset_2| 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_3|, #length=|v_#length_6|, #valid=|v_#valid_7|} OutVars{ULTIMATE.start_main_~#id2~0#1.offset=|v_ULTIMATE.start_main_~#id2~0#1.offset_2|, #StackHeapBarrier=|v_#StackHeapBarrier_3|, #length=|v_#length_5|, ULTIMATE.start_main_~#id2~0#1.base=|v_ULTIMATE.start_main_~#id2~0#1.base_2|, #valid=|v_#valid_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#id2~0#1.offset, #valid, #length, ULTIMATE.start_main_~#id2~0#1.base] {99#true} is VALID [2022-02-20 20:06:55,939 INFO L290 TraceCheckUtils]: 26: Hoare triple {99#true} [161] L714-2-->L717: Formula: (= v_~i~0_2 1) InVars {} OutVars{~i~0=v_~i~0_2} AuxVars[] AssignedVars[~i~0] {99#true} is VALID [2022-02-20 20:06:55,939 INFO L290 TraceCheckUtils]: 27: Hoare triple {99#true} [163] L717-->L720: Formula: (= v_~j~0_2 1) InVars {} OutVars{~j~0=v_~j~0_2} AuxVars[] AssignedVars[~j~0] {99#true} is VALID [2022-02-20 20:06:55,939 INFO L290 TraceCheckUtils]: 28: Hoare triple {99#true} [174] L720-->L721: Formula: (= |v_ULTIMATE.start_main_#t~pre4#1_2| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre4#1] {99#true} is VALID [2022-02-20 20:06:55,940 INFO L290 TraceCheckUtils]: 29: Hoare triple {99#true} [158] L721-->L721-1: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] {99#true} is VALID [2022-02-20 20:06:55,940 INFO L290 TraceCheckUtils]: 30: Hoare triple {99#true} [202] L721-1-->L721-2: Formula: (= (store |v_#memory_int_5| |v_ULTIMATE.start_main_~#id1~0#1.base_3| (store (select |v_#memory_int_5| |v_ULTIMATE.start_main_~#id1~0#1.base_3|) |v_ULTIMATE.start_main_~#id1~0#1.offset_3| |v_ULTIMATE.start_main_#t~pre4#1_3|)) |v_#memory_int_4|) InVars {#memory_int=|v_#memory_int_5|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_3|, ULTIMATE.start_main_~#id1~0#1.offset=|v_ULTIMATE.start_main_~#id1~0#1.offset_3|, ULTIMATE.start_main_~#id1~0#1.base=|v_ULTIMATE.start_main_~#id1~0#1.base_3|} OutVars{#memory_int=|v_#memory_int_4|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_3|, ULTIMATE.start_main_~#id1~0#1.offset=|v_ULTIMATE.start_main_~#id1~0#1.offset_3|, ULTIMATE.start_main_~#id1~0#1.base=|v_ULTIMATE.start_main_~#id1~0#1.base_3|} AuxVars[] AssignedVars[#memory_int] {99#true} is VALID [2022-02-20 20:06:55,940 INFO L290 TraceCheckUtils]: 31: Hoare triple {99#true} [246] L721-2-->t1ENTRY: Formula: (and (= |v_ULTIMATE.start_main_#t~pre4#1_6| v_t1Thread1of1ForFork0_thidvar0_2) (= v_t1Thread1of1ForFork0_thidvar1_2 0) (= |v_t1Thread1of1ForFork0_#in~arg.base_4| 0) (= |v_t1Thread1of1ForFork0_#in~arg.offset_4| 0)) InVars {ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_6|} OutVars{t1Thread1of1ForFork0_#t~post1=|v_t1Thread1of1ForFork0_#t~post1_8|, t1Thread1of1ForFork0_thidvar1=v_t1Thread1of1ForFork0_thidvar1_2, t1Thread1of1ForFork0_thidvar0=v_t1Thread1of1ForFork0_thidvar0_2, t1Thread1of1ForFork0_~arg.base=v_t1Thread1of1ForFork0_~arg.base_4, t1Thread1of1ForFork0_#in~arg.base=|v_t1Thread1of1ForFork0_#in~arg.base_4|, t1Thread1of1ForFork0_~arg.offset=v_t1Thread1of1ForFork0_~arg.offset_4, t1Thread1of1ForFork0_#res.base=|v_t1Thread1of1ForFork0_#res.base_4|, t1Thread1of1ForFork0_#res.offset=|v_t1Thread1of1ForFork0_#res.offset_4|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_6|, t1Thread1of1ForFork0_#in~arg.offset=|v_t1Thread1of1ForFork0_#in~arg.offset_4|} AuxVars[] AssignedVars[t1Thread1of1ForFork0_#t~post1, t1Thread1of1ForFork0_thidvar1, t1Thread1of1ForFork0_thidvar0, t1Thread1of1ForFork0_~arg.base, t1Thread1of1ForFork0_#in~arg.base, t1Thread1of1ForFork0_~arg.offset, t1Thread1of1ForFork0_#res.base, t1Thread1of1ForFork0_#res.offset, t1Thread1of1ForFork0_#in~arg.offset] {99#true} is VALID [2022-02-20 20:06:55,940 INFO L290 TraceCheckUtils]: 32: Hoare triple {99#true} [201] L721-3-->L721-4: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre4#1] {99#true} is VALID [2022-02-20 20:06:55,941 INFO L290 TraceCheckUtils]: 33: Hoare triple {99#true} [216] L721-4-->L722: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet5#1=|v_ULTIMATE.start_main_#t~nondet5#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet5#1] {99#true} is VALID [2022-02-20 20:06:55,941 INFO L290 TraceCheckUtils]: 34: Hoare triple {99#true} [213] L722-->L722-1: Formula: (= |v_ULTIMATE.start_main_#t~pre6#1_2| |v_#pthreadsForks_4|) InVars {#pthreadsForks=|v_#pthreadsForks_4|} OutVars{#pthreadsForks=|v_#pthreadsForks_4|, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre6#1] {99#true} is VALID [2022-02-20 20:06:55,941 INFO L290 TraceCheckUtils]: 35: Hoare triple {99#true} [187] L722-1-->L722-2: Formula: (= (+ 1 |v_#pthreadsForks_6|) |v_#pthreadsForks_5|) InVars {#pthreadsForks=|v_#pthreadsForks_6|} OutVars{#pthreadsForks=|v_#pthreadsForks_5|} AuxVars[] AssignedVars[#pthreadsForks] {99#true} is VALID [2022-02-20 20:06:55,941 INFO L290 TraceCheckUtils]: 36: Hoare triple {99#true} [219] L722-2-->L722-3: Formula: (= (store |v_#memory_int_7| |v_ULTIMATE.start_main_~#id2~0#1.base_3| (store (select |v_#memory_int_7| |v_ULTIMATE.start_main_~#id2~0#1.base_3|) |v_ULTIMATE.start_main_~#id2~0#1.offset_3| |v_ULTIMATE.start_main_#t~pre6#1_3|)) |v_#memory_int_6|) InVars {#memory_int=|v_#memory_int_7|, ULTIMATE.start_main_~#id2~0#1.offset=|v_ULTIMATE.start_main_~#id2~0#1.offset_3|, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_3|, ULTIMATE.start_main_~#id2~0#1.base=|v_ULTIMATE.start_main_~#id2~0#1.base_3|} OutVars{#memory_int=|v_#memory_int_6|, ULTIMATE.start_main_~#id2~0#1.offset=|v_ULTIMATE.start_main_~#id2~0#1.offset_3|, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_3|, ULTIMATE.start_main_~#id2~0#1.base=|v_ULTIMATE.start_main_~#id2~0#1.base_3|} AuxVars[] AssignedVars[#memory_int] {99#true} is VALID [2022-02-20 20:06:55,942 INFO L290 TraceCheckUtils]: 37: Hoare triple {99#true} [248] L722-3-->t2ENTRY: Formula: (and (= |v_t2Thread1of1ForFork1_#in~arg.base_4| 0) (= |v_ULTIMATE.start_main_#t~pre6#1_6| v_t2Thread1of1ForFork1_thidvar0_2) (= |v_t2Thread1of1ForFork1_#in~arg.offset_4| 0) (= v_t2Thread1of1ForFork1_thidvar1_2 0) (= v_t2Thread1of1ForFork1_thidvar2_2 0)) InVars {ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_6|} OutVars{t2Thread1of1ForFork1_#in~arg.base=|v_t2Thread1of1ForFork1_#in~arg.base_4|, t2Thread1of1ForFork1_thidvar1=v_t2Thread1of1ForFork1_thidvar1_2, t2Thread1of1ForFork1_~arg.base=v_t2Thread1of1ForFork1_~arg.base_4, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_6|, t2Thread1of1ForFork1_thidvar0=v_t2Thread1of1ForFork1_thidvar0_2, t2Thread1of1ForFork1_~arg.offset=v_t2Thread1of1ForFork1_~arg.offset_4, t2Thread1of1ForFork1_#res.base=|v_t2Thread1of1ForFork1_#res.base_4|, t2Thread1of1ForFork1_#in~arg.offset=|v_t2Thread1of1ForFork1_#in~arg.offset_4|, t2Thread1of1ForFork1_#t~post2=|v_t2Thread1of1ForFork1_#t~post2_8|, t2Thread1of1ForFork1_#res.offset=|v_t2Thread1of1ForFork1_#res.offset_4|, t2Thread1of1ForFork1_thidvar2=v_t2Thread1of1ForFork1_thidvar2_2} AuxVars[] AssignedVars[t2Thread1of1ForFork1_#in~arg.base, t2Thread1of1ForFork1_thidvar1, t2Thread1of1ForFork1_~arg.base, t2Thread1of1ForFork1_thidvar0, t2Thread1of1ForFork1_~arg.offset, t2Thread1of1ForFork1_#res.base, t2Thread1of1ForFork1_#in~arg.offset, t2Thread1of1ForFork1_#t~post2, t2Thread1of1ForFork1_#res.offset, t2Thread1of1ForFork1_thidvar2] {99#true} is VALID [2022-02-20 20:06:55,942 INFO L290 TraceCheckUtils]: 38: Hoare triple {99#true} [210] L722-4-->L722-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre6#1] {99#true} is VALID [2022-02-20 20:06:55,942 INFO L290 TraceCheckUtils]: 39: Hoare triple {99#true} [204] L722-5-->L723: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet7#1=|v_ULTIMATE.start_main_#t~nondet7#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet7#1] {99#true} is VALID [2022-02-20 20:06:55,942 INFO L290 TraceCheckUtils]: 40: Hoare triple {99#true} [217] L723-->L723-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {99#true} is VALID [2022-02-20 20:06:55,943 INFO L290 TraceCheckUtils]: 41: Hoare triple {99#true} [199] L723-1-->L723-2: Formula: true InVars {} OutVars{ULTIMATE.start_fib_#res#1=|v_ULTIMATE.start_fib_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_fib_#res#1] {99#true} is VALID [2022-02-20 20:06:55,943 INFO L290 TraceCheckUtils]: 42: Hoare triple {99#true} [194] L723-2-->L706: Formula: true InVars {} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_fib_#t~post3#1] {99#true} is VALID [2022-02-20 20:06:55,943 INFO L290 TraceCheckUtils]: 43: Hoare triple {99#true} [191] L706-->L706-6: Formula: (= v_~x~0_2 0) InVars {} OutVars{~x~0=v_~x~0_2} AuxVars[] AssignedVars[~x~0] {99#true} is VALID [2022-02-20 20:06:55,951 INFO L290 TraceCheckUtils]: 44: Hoare triple {99#true} [130] L706-6-->L706-7: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {100#false} is VALID [2022-02-20 20:06:55,951 INFO L290 TraceCheckUtils]: 45: Hoare triple {100#false} [171] L706-7-->L711: Formula: (= |v_ULTIMATE.start_fib_#res#1_2| v_~prev~0_4) InVars {~prev~0=v_~prev~0_4} OutVars{ULTIMATE.start_fib_#res#1=|v_ULTIMATE.start_fib_#res#1_2|, ~prev~0=v_~prev~0_4} AuxVars[] AssignedVars[ULTIMATE.start_fib_#res#1] {100#false} is VALID [2022-02-20 20:06:55,952 INFO L290 TraceCheckUtils]: 46: Hoare triple {100#false} [190] L711-->L723-3: Formula: (= |v_ULTIMATE.start_fib_#res#1_3| |v_ULTIMATE.start_main_#t~ret8#1_2|) InVars {ULTIMATE.start_fib_#res#1=|v_ULTIMATE.start_fib_#res#1_3|} OutVars{ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_2|, ULTIMATE.start_fib_#res#1=|v_ULTIMATE.start_fib_#res#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~ret8#1] {100#false} is VALID [2022-02-20 20:06:55,952 INFO L290 TraceCheckUtils]: 47: Hoare triple {100#false} [159] L723-3-->L723-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {100#false} is VALID [2022-02-20 20:06:55,952 INFO L290 TraceCheckUtils]: 48: Hoare triple {100#false} [185] L723-4-->L723-5: Formula: (and (<= |v_ULTIMATE.start_main_#t~ret8#1_3| 2147483647) (<= 0 (+ |v_ULTIMATE.start_main_#t~ret8#1_3| 2147483648))) InVars {ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_3|} OutVars{ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_3|} AuxVars[] AssignedVars[] {100#false} is VALID [2022-02-20 20:06:55,952 INFO L290 TraceCheckUtils]: 49: Hoare triple {100#false} [168] L723-5-->L723-6: Formula: (= |v_ULTIMATE.start_main_~correct~0#1_2| |v_ULTIMATE.start_main_#t~ret8#1_4|) InVars {ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_4|} OutVars{ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_4|, ULTIMATE.start_main_~correct~0#1=|v_ULTIMATE.start_main_~correct~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~correct~0#1] {100#false} is VALID [2022-02-20 20:06:55,953 INFO L290 TraceCheckUtils]: 50: Hoare triple {100#false} [134] L723-6-->L725: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~ret8#1] {100#false} is VALID [2022-02-20 20:06:55,953 INFO L290 TraceCheckUtils]: 51: Hoare triple {100#false} [141] L725-->L726: Formula: (or (not (< v_~i~0_4 |v_ULTIMATE.start_main_~correct~0#1_4|)) (not (< v_~j~0_4 |v_ULTIMATE.start_main_~correct~0#1_4|))) InVars {~j~0=v_~j~0_4, ULTIMATE.start_main_~correct~0#1=|v_ULTIMATE.start_main_~correct~0#1_4|, ~i~0=v_~i~0_4} OutVars{~j~0=v_~j~0_4, ULTIMATE.start_main_~correct~0#1=|v_ULTIMATE.start_main_~correct~0#1_4|, ~i~0=v_~i~0_4} AuxVars[] AssignedVars[] {100#false} is VALID [2022-02-20 20:06:55,953 INFO L290 TraceCheckUtils]: 52: Hoare triple {100#false} [165] L726-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {100#false} is VALID [2022-02-20 20:06:55,955 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:06:55,955 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 20:06:55,955 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [137279923] [2022-02-20 20:06:55,956 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [137279923] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 20:06:55,956 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 20:06:55,956 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 20:06:55,957 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1773844192] [2022-02-20 20:06:55,958 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 20:06:55,974 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 26.5) internal successors, (53), 2 states have internal predecessors, (53), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 53 [2022-02-20 20:06:55,975 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 20:06:55,978 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 2 states, 2 states have (on average 26.5) internal successors, (53), 2 states have internal predecessors, (53), 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:06:56,036 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:06:56,037 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-02-20 20:06:56,037 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 20:06:56,063 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-02-20 20:06:56,064 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 20:06:56,067 INFO L499 CegarLoopForPetriNet]: Number of universal loopers: 89 out of 96 [2022-02-20 20:06:56,071 INFO L92 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 94 places, 94 transitions, 194 flow. Second operand has 2 states, 2 states have (on average 90.5) internal successors, (181), 2 states have internal predecessors, (181), 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:06:56,071 INFO L101 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-02-20 20:06:56,071 INFO L102 encePairwiseOnDemand]: Number of universal subtrahend loopers: 89 of 96 [2022-02-20 20:06:56,072 INFO L74 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-02-20 20:06:56,120 INFO L129 PetriNetUnfolder]: 3/89 cut-off events. [2022-02-20 20:06:56,126 INFO L130 PetriNetUnfolder]: For 2/2 co-relation queries the response was YES. [2022-02-20 20:06:56,127 INFO L84 FinitePrefix]: Finished finitePrefix Result has 99 conditions, 89 events. 3/89 cut-off events. For 2/2 co-relation queries the response was YES. Maximal size of possible extension queue 3. Compared 62 event pairs, 0 based on Foata normal form. 5/90 useless extension candidates. Maximal degree in co-relation 60. Up to 3 conditions per place. [2022-02-20 20:06:56,129 INFO L132 encePairwiseOnDemand]: 92/96 looper letters, 2 selfloop transitions, 0 changer transitions 0/89 dead transitions. [2022-02-20 20:06:56,129 INFO L138 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 94 places, 89 transitions, 188 flow [2022-02-20 20:06:56,129 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-02-20 20:06:56,131 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2022-02-20 20:06:56,151 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 184 transitions. [2022-02-20 20:06:56,152 INFO L544 CegarLoopForPetriNet]: DFA transition density 0.9583333333333334 [2022-02-20 20:06:56,153 INFO L72 ComplementDD]: Start complementDD. Operand 2 states and 184 transitions. [2022-02-20 20:06:56,153 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2 states and 184 transitions. [2022-02-20 20:06:56,154 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-02-20 20:06:56,156 INFO L117 ReachableStatesCopy]: Start reachableStatesCopy. Operand 2 states and 184 transitions. [2022-02-20 20:06:56,162 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends has 3 states, 2 states have (on average 92.0) internal successors, (184), 2 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:06:56,167 INFO L131 ReachableStatesCopy]: Finished reachableStatesCopy Result has 3 states, 3 states have (on average 96.0) internal successors, (288), 3 states have internal predecessors, (288), 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:06:56,168 INFO L81 ComplementDD]: Finished complementDD. Result has 3 states, 3 states have (on average 96.0) internal successors, (288), 3 states have internal predecessors, (288), 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:06:56,169 INFO L186 Difference]: Start difference. First operand has 94 places, 94 transitions, 194 flow. Second operand 2 states and 184 transitions. [2022-02-20 20:06:56,170 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 94 places, 89 transitions, 188 flow [2022-02-20 20:06:56,176 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 92 places, 89 transitions, 186 flow, removed 0 selfloop flow, removed 2 redundant places. [2022-02-20 20:06:56,179 INFO L242 Difference]: Finished difference. Result has 92 places, 89 transitions, 182 flow [2022-02-20 20:06:56,181 INFO L317 CegarLoopForPetriNet]: {PETRI_ALPHABET=96, PETRI_DIFFERENCE_MINUEND_FLOW=182, PETRI_DIFFERENCE_MINUEND_PLACES=91, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=89, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=0, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=89, PETRI_DIFFERENCE_SUBTRAHEND_STATES=2, PETRI_FLOW=182, PETRI_PLACES=92, PETRI_TRANSITIONS=89} [2022-02-20 20:06:56,185 INFO L334 CegarLoopForPetriNet]: 94 programPoint places, -2 predicate places. [2022-02-20 20:06:56,186 INFO L111 iNet2FiniteAutomaton]: Start petriNet2FiniteAutomaton. Operand has 92 places, 89 transitions, 182 flow [2022-02-20 20:06:56,298 INFO L133 iNet2FiniteAutomaton]: Finished petriNet2FiniteAutomaton. Result has 3192 states, 3190 states have (on average 2.9630094043887145) internal successors, (9452), 3191 states have internal predecessors, (9452), 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:06:56,314 INFO L78 Accepts]: Start accepts. Automaton has has 3192 states, 3190 states have (on average 2.9630094043887145) internal successors, (9452), 3191 states have internal predecessors, (9452), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 53 [2022-02-20 20:06:56,315 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 20:06:56,315 INFO L470 AbstractCegarLoop]: Abstraction has has 92 places, 89 transitions, 182 flow [2022-02-20 20:06:56,316 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 90.5) internal successors, (181), 2 states have internal predecessors, (181), 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:06:56,316 INFO L246 CegarLoopForPetriNet]: Found error trace [2022-02-20 20:06:56,316 INFO L254 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 20:06:56,316 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-20 20:06:56,317 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATION, ULTIMATE.startErr1INUSE_VIOLATION] === [2022-02-20 20:06:56,320 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:06:56,320 INFO L85 PathProgramCache]: Analyzing trace with hash 560415153, now seen corresponding path program 1 times [2022-02-20 20:06:56,320 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:06:56,321 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [927448271] [2022-02-20 20:06:56,321 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:06:56,321 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:06:56,391 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:06:56,435 INFO L290 TraceCheckUtils]: 0: Hoare triple {3295#true} [200] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3295#true} is VALID [2022-02-20 20:06:56,436 INFO L290 TraceCheckUtils]: 1: Hoare triple {3295#true} [189] 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] {3295#true} is VALID [2022-02-20 20:06:56,436 INFO L290 TraceCheckUtils]: 2: Hoare triple {3295#true} [207] 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[] {3295#true} is VALID [2022-02-20 20:06:56,436 INFO L290 TraceCheckUtils]: 3: Hoare triple {3295#true} [208] L-1-2-->L19: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {3295#true} is VALID [2022-02-20 20:06:56,437 INFO L290 TraceCheckUtils]: 4: Hoare triple {3295#true} [176] L19-->L19-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[] {3295#true} is VALID [2022-02-20 20:06:56,437 INFO L290 TraceCheckUtils]: 5: Hoare triple {3295#true} [164] L19-1-->L19-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[] {3295#true} is VALID [2022-02-20 20:06:56,437 INFO L290 TraceCheckUtils]: 6: Hoare triple {3295#true} [186] L19-2-->L19-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[] {3295#true} is VALID [2022-02-20 20:06:56,437 INFO L290 TraceCheckUtils]: 7: Hoare triple {3295#true} [184] L19-3-->L19-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[] {3295#true} is VALID [2022-02-20 20:06:56,438 INFO L290 TraceCheckUtils]: 8: Hoare triple {3295#true} [143] L19-4-->L19-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[] {3295#true} is VALID [2022-02-20 20:06:56,438 INFO L290 TraceCheckUtils]: 9: Hoare triple {3295#true} [211] L19-5-->L683: Formula: (= v_~i~0_1 0) InVars {} OutVars{~i~0=v_~i~0_1} AuxVars[] AssignedVars[~i~0] {3295#true} is VALID [2022-02-20 20:06:56,438 INFO L290 TraceCheckUtils]: 10: Hoare triple {3295#true} [148] L683-->L686: Formula: (= v_~j~0_1 0) InVars {} OutVars{~j~0=v_~j~0_1} AuxVars[] AssignedVars[~j~0] {3295#true} is VALID [2022-02-20 20:06:56,438 INFO L290 TraceCheckUtils]: 11: Hoare triple {3295#true} [221] L686-->L686-1: Formula: (= v_~p~0_1 0) InVars {} OutVars{~p~0=v_~p~0_1} AuxVars[] AssignedVars[~p~0] {3295#true} is VALID [2022-02-20 20:06:56,438 INFO L290 TraceCheckUtils]: 12: Hoare triple {3295#true} [169] L686-1-->L703: Formula: (= v_~q~0_1 0) InVars {} OutVars{~q~0=v_~q~0_1} AuxVars[] AssignedVars[~q~0] {3295#true} is VALID [2022-02-20 20:06:56,439 INFO L290 TraceCheckUtils]: 13: Hoare triple {3295#true} [145] L703-->L703-1: Formula: (= v_~cur~0_1 1) InVars {} OutVars{~cur~0=v_~cur~0_1} AuxVars[] AssignedVars[~cur~0] {3295#true} is VALID [2022-02-20 20:06:56,439 INFO L290 TraceCheckUtils]: 14: Hoare triple {3295#true} [197] L703-1-->L703-2: Formula: (= v_~prev~0_1 0) InVars {} OutVars{~prev~0=v_~prev~0_1} AuxVars[] AssignedVars[~prev~0] {3295#true} is VALID [2022-02-20 20:06:56,439 INFO L290 TraceCheckUtils]: 15: Hoare triple {3295#true} [170] L703-2-->L704: Formula: (= v_~next~0_1 0) InVars {} OutVars{~next~0=v_~next~0_1} AuxVars[] AssignedVars[~next~0] {3295#true} is VALID [2022-02-20 20:06:56,439 INFO L290 TraceCheckUtils]: 16: Hoare triple {3295#true} [205] L704-->L-1-3: Formula: (= v_~x~0_1 0) InVars {} OutVars{~x~0=v_~x~0_1} AuxVars[] AssignedVars[~x~0] {3295#true} is VALID [2022-02-20 20:06:56,440 INFO L290 TraceCheckUtils]: 17: Hoare triple {3295#true} [212] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3295#true} is VALID [2022-02-20 20:06:56,440 INFO L290 TraceCheckUtils]: 18: Hoare triple {3295#true} [193] L-1-4-->L-1-5: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3295#true} is VALID [2022-02-20 20:06:56,440 INFO L290 TraceCheckUtils]: 19: Hoare triple {3295#true} [157] 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] {3295#true} is VALID [2022-02-20 20:06:56,440 INFO L290 TraceCheckUtils]: 20: Hoare triple {3295#true} [192] 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] {3295#true} is VALID [2022-02-20 20:06:56,441 INFO L290 TraceCheckUtils]: 21: Hoare triple {3295#true} [153] L-1-7-->L713: Formula: true InVars {} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_1|, ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_1|, ULTIMATE.start_main_~#id2~0#1.offset=|v_ULTIMATE.start_main_~#id2~0#1.offset_1|, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_1|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_1|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_1|, ULTIMATE.start_main_~#id1~0#1.offset=|v_ULTIMATE.start_main_~#id1~0#1.offset_1|, ULTIMATE.start_main_~#id1~0#1.base=|v_ULTIMATE.start_main_~#id1~0#1.base_1|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_1|, ULTIMATE.start_main_#t~nondet5#1=|v_ULTIMATE.start_main_#t~nondet5#1_1|, ULTIMATE.start_main_#t~nondet7#1=|v_ULTIMATE.start_main_#t~nondet7#1_1|, ULTIMATE.start_main_~correct~0#1=|v_ULTIMATE.start_main_~correct~0#1_1|, ULTIMATE.start_main_~#id2~0#1.base=|v_ULTIMATE.start_main_~#id2~0#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#t~ret8#1, ULTIMATE.start_main_~#id2~0#1.offset, ULTIMATE.start_main_#t~pre6#1, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_#t~pre4#1, ULTIMATE.start_main_~#id1~0#1.offset, ULTIMATE.start_main_~#id1~0#1.base, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_#t~nondet5#1, ULTIMATE.start_main_#t~nondet7#1, ULTIMATE.start_main_~correct~0#1, ULTIMATE.start_main_~#id2~0#1.base] {3295#true} is VALID [2022-02-20 20:06:56,441 INFO L290 TraceCheckUtils]: 22: Hoare triple {3295#true} [181] L713-->L713-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] {3295#true} is VALID [2022-02-20 20:06:56,441 INFO L290 TraceCheckUtils]: 23: Hoare triple {3295#true} [154] L713-1-->L714: 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] {3295#true} is VALID [2022-02-20 20:06:56,441 INFO L290 TraceCheckUtils]: 24: Hoare triple {3295#true} [139] L714-->L714-1: Formula: (and (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#id1~0#1.base_2|) (not (= 0 |v_ULTIMATE.start_main_~#id1~0#1.base_2|)) (= |v_#valid_4| (store |v_#valid_5| |v_ULTIMATE.start_main_~#id1~0#1.base_2| 1)) (= |v_#length_3| (store |v_#length_4| |v_ULTIMATE.start_main_~#id1~0#1.base_2| 4)) (= (select |v_#valid_5| |v_ULTIMATE.start_main_~#id1~0#1.base_2|) 0) (= |v_ULTIMATE.start_main_~#id1~0#1.offset_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_~#id1~0#1.offset=|v_ULTIMATE.start_main_~#id1~0#1.offset_2|, #valid=|v_#valid_4|, ULTIMATE.start_main_~#id1~0#1.base=|v_ULTIMATE.start_main_~#id1~0#1.base_2|} AuxVars[] AssignedVars[#valid, #length, ULTIMATE.start_main_~#id1~0#1.offset, ULTIMATE.start_main_~#id1~0#1.base] {3295#true} is VALID [2022-02-20 20:06:56,442 INFO L290 TraceCheckUtils]: 25: Hoare triple {3295#true} [167] L714-1-->L714-2: Formula: (and (= (select |v_#valid_7| |v_ULTIMATE.start_main_~#id2~0#1.base_2|) 0) (< |v_#StackHeapBarrier_3| |v_ULTIMATE.start_main_~#id2~0#1.base_2|) (not (= 0 |v_ULTIMATE.start_main_~#id2~0#1.base_2|)) (= (store |v_#length_6| |v_ULTIMATE.start_main_~#id2~0#1.base_2| 4) |v_#length_5|) (= |v_#valid_6| (store |v_#valid_7| |v_ULTIMATE.start_main_~#id2~0#1.base_2| 1)) (= |v_ULTIMATE.start_main_~#id2~0#1.offset_2| 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_3|, #length=|v_#length_6|, #valid=|v_#valid_7|} OutVars{ULTIMATE.start_main_~#id2~0#1.offset=|v_ULTIMATE.start_main_~#id2~0#1.offset_2|, #StackHeapBarrier=|v_#StackHeapBarrier_3|, #length=|v_#length_5|, ULTIMATE.start_main_~#id2~0#1.base=|v_ULTIMATE.start_main_~#id2~0#1.base_2|, #valid=|v_#valid_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#id2~0#1.offset, #valid, #length, ULTIMATE.start_main_~#id2~0#1.base] {3295#true} is VALID [2022-02-20 20:06:56,442 INFO L290 TraceCheckUtils]: 26: Hoare triple {3295#true} [161] L714-2-->L717: Formula: (= v_~i~0_2 1) InVars {} OutVars{~i~0=v_~i~0_2} AuxVars[] AssignedVars[~i~0] {3295#true} is VALID [2022-02-20 20:06:56,442 INFO L290 TraceCheckUtils]: 27: Hoare triple {3295#true} [163] L717-->L720: Formula: (= v_~j~0_2 1) InVars {} OutVars{~j~0=v_~j~0_2} AuxVars[] AssignedVars[~j~0] {3295#true} is VALID [2022-02-20 20:06:56,442 INFO L290 TraceCheckUtils]: 28: Hoare triple {3295#true} [174] L720-->L721: Formula: (= |v_ULTIMATE.start_main_#t~pre4#1_2| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre4#1] {3295#true} is VALID [2022-02-20 20:06:56,443 INFO L290 TraceCheckUtils]: 29: Hoare triple {3295#true} [158] L721-->L721-1: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] {3295#true} is VALID [2022-02-20 20:06:56,443 INFO L290 TraceCheckUtils]: 30: Hoare triple {3295#true} [202] L721-1-->L721-2: Formula: (= (store |v_#memory_int_5| |v_ULTIMATE.start_main_~#id1~0#1.base_3| (store (select |v_#memory_int_5| |v_ULTIMATE.start_main_~#id1~0#1.base_3|) |v_ULTIMATE.start_main_~#id1~0#1.offset_3| |v_ULTIMATE.start_main_#t~pre4#1_3|)) |v_#memory_int_4|) InVars {#memory_int=|v_#memory_int_5|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_3|, ULTIMATE.start_main_~#id1~0#1.offset=|v_ULTIMATE.start_main_~#id1~0#1.offset_3|, ULTIMATE.start_main_~#id1~0#1.base=|v_ULTIMATE.start_main_~#id1~0#1.base_3|} OutVars{#memory_int=|v_#memory_int_4|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_3|, ULTIMATE.start_main_~#id1~0#1.offset=|v_ULTIMATE.start_main_~#id1~0#1.offset_3|, ULTIMATE.start_main_~#id1~0#1.base=|v_ULTIMATE.start_main_~#id1~0#1.base_3|} AuxVars[] AssignedVars[#memory_int] {3295#true} is VALID [2022-02-20 20:06:56,443 INFO L290 TraceCheckUtils]: 31: Hoare triple {3295#true} [246] L721-2-->t1ENTRY: Formula: (and (= |v_ULTIMATE.start_main_#t~pre4#1_6| v_t1Thread1of1ForFork0_thidvar0_2) (= v_t1Thread1of1ForFork0_thidvar1_2 0) (= |v_t1Thread1of1ForFork0_#in~arg.base_4| 0) (= |v_t1Thread1of1ForFork0_#in~arg.offset_4| 0)) InVars {ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_6|} OutVars{t1Thread1of1ForFork0_#t~post1=|v_t1Thread1of1ForFork0_#t~post1_8|, t1Thread1of1ForFork0_thidvar1=v_t1Thread1of1ForFork0_thidvar1_2, t1Thread1of1ForFork0_thidvar0=v_t1Thread1of1ForFork0_thidvar0_2, t1Thread1of1ForFork0_~arg.base=v_t1Thread1of1ForFork0_~arg.base_4, t1Thread1of1ForFork0_#in~arg.base=|v_t1Thread1of1ForFork0_#in~arg.base_4|, t1Thread1of1ForFork0_~arg.offset=v_t1Thread1of1ForFork0_~arg.offset_4, t1Thread1of1ForFork0_#res.base=|v_t1Thread1of1ForFork0_#res.base_4|, t1Thread1of1ForFork0_#res.offset=|v_t1Thread1of1ForFork0_#res.offset_4|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_6|, t1Thread1of1ForFork0_#in~arg.offset=|v_t1Thread1of1ForFork0_#in~arg.offset_4|} AuxVars[] AssignedVars[t1Thread1of1ForFork0_#t~post1, t1Thread1of1ForFork0_thidvar1, t1Thread1of1ForFork0_thidvar0, t1Thread1of1ForFork0_~arg.base, t1Thread1of1ForFork0_#in~arg.base, t1Thread1of1ForFork0_~arg.offset, t1Thread1of1ForFork0_#res.base, t1Thread1of1ForFork0_#res.offset, t1Thread1of1ForFork0_#in~arg.offset] {3295#true} is VALID [2022-02-20 20:06:56,443 INFO L290 TraceCheckUtils]: 32: Hoare triple {3295#true} [201] L721-3-->L721-4: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre4#1] {3295#true} is VALID [2022-02-20 20:06:56,444 INFO L290 TraceCheckUtils]: 33: Hoare triple {3295#true} [216] L721-4-->L722: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet5#1=|v_ULTIMATE.start_main_#t~nondet5#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet5#1] {3295#true} is VALID [2022-02-20 20:06:56,444 INFO L290 TraceCheckUtils]: 34: Hoare triple {3295#true} [213] L722-->L722-1: Formula: (= |v_ULTIMATE.start_main_#t~pre6#1_2| |v_#pthreadsForks_4|) InVars {#pthreadsForks=|v_#pthreadsForks_4|} OutVars{#pthreadsForks=|v_#pthreadsForks_4|, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre6#1] {3295#true} is VALID [2022-02-20 20:06:56,444 INFO L290 TraceCheckUtils]: 35: Hoare triple {3295#true} [187] L722-1-->L722-2: Formula: (= (+ 1 |v_#pthreadsForks_6|) |v_#pthreadsForks_5|) InVars {#pthreadsForks=|v_#pthreadsForks_6|} OutVars{#pthreadsForks=|v_#pthreadsForks_5|} AuxVars[] AssignedVars[#pthreadsForks] {3295#true} is VALID [2022-02-20 20:06:56,444 INFO L290 TraceCheckUtils]: 36: Hoare triple {3295#true} [219] L722-2-->L722-3: Formula: (= (store |v_#memory_int_7| |v_ULTIMATE.start_main_~#id2~0#1.base_3| (store (select |v_#memory_int_7| |v_ULTIMATE.start_main_~#id2~0#1.base_3|) |v_ULTIMATE.start_main_~#id2~0#1.offset_3| |v_ULTIMATE.start_main_#t~pre6#1_3|)) |v_#memory_int_6|) InVars {#memory_int=|v_#memory_int_7|, ULTIMATE.start_main_~#id2~0#1.offset=|v_ULTIMATE.start_main_~#id2~0#1.offset_3|, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_3|, ULTIMATE.start_main_~#id2~0#1.base=|v_ULTIMATE.start_main_~#id2~0#1.base_3|} OutVars{#memory_int=|v_#memory_int_6|, ULTIMATE.start_main_~#id2~0#1.offset=|v_ULTIMATE.start_main_~#id2~0#1.offset_3|, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_3|, ULTIMATE.start_main_~#id2~0#1.base=|v_ULTIMATE.start_main_~#id2~0#1.base_3|} AuxVars[] AssignedVars[#memory_int] {3295#true} is VALID [2022-02-20 20:06:56,445 INFO L290 TraceCheckUtils]: 37: Hoare triple {3295#true} [248] L722-3-->t2ENTRY: Formula: (and (= |v_t2Thread1of1ForFork1_#in~arg.base_4| 0) (= |v_ULTIMATE.start_main_#t~pre6#1_6| v_t2Thread1of1ForFork1_thidvar0_2) (= |v_t2Thread1of1ForFork1_#in~arg.offset_4| 0) (= v_t2Thread1of1ForFork1_thidvar1_2 0) (= v_t2Thread1of1ForFork1_thidvar2_2 0)) InVars {ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_6|} OutVars{t2Thread1of1ForFork1_#in~arg.base=|v_t2Thread1of1ForFork1_#in~arg.base_4|, t2Thread1of1ForFork1_thidvar1=v_t2Thread1of1ForFork1_thidvar1_2, t2Thread1of1ForFork1_~arg.base=v_t2Thread1of1ForFork1_~arg.base_4, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_6|, t2Thread1of1ForFork1_thidvar0=v_t2Thread1of1ForFork1_thidvar0_2, t2Thread1of1ForFork1_~arg.offset=v_t2Thread1of1ForFork1_~arg.offset_4, t2Thread1of1ForFork1_#res.base=|v_t2Thread1of1ForFork1_#res.base_4|, t2Thread1of1ForFork1_#in~arg.offset=|v_t2Thread1of1ForFork1_#in~arg.offset_4|, t2Thread1of1ForFork1_#t~post2=|v_t2Thread1of1ForFork1_#t~post2_8|, t2Thread1of1ForFork1_#res.offset=|v_t2Thread1of1ForFork1_#res.offset_4|, t2Thread1of1ForFork1_thidvar2=v_t2Thread1of1ForFork1_thidvar2_2} AuxVars[] AssignedVars[t2Thread1of1ForFork1_#in~arg.base, t2Thread1of1ForFork1_thidvar1, t2Thread1of1ForFork1_~arg.base, t2Thread1of1ForFork1_thidvar0, t2Thread1of1ForFork1_~arg.offset, t2Thread1of1ForFork1_#res.base, t2Thread1of1ForFork1_#in~arg.offset, t2Thread1of1ForFork1_#t~post2, t2Thread1of1ForFork1_#res.offset, t2Thread1of1ForFork1_thidvar2] {3295#true} is VALID [2022-02-20 20:06:56,445 INFO L290 TraceCheckUtils]: 38: Hoare triple {3295#true} [210] L722-4-->L722-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre6#1] {3295#true} is VALID [2022-02-20 20:06:56,445 INFO L290 TraceCheckUtils]: 39: Hoare triple {3295#true} [204] L722-5-->L723: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet7#1=|v_ULTIMATE.start_main_#t~nondet7#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet7#1] {3295#true} is VALID [2022-02-20 20:06:56,446 INFO L290 TraceCheckUtils]: 40: Hoare triple {3295#true} [217] L723-->L723-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3295#true} is VALID [2022-02-20 20:06:56,446 INFO L290 TraceCheckUtils]: 41: Hoare triple {3295#true} [199] L723-1-->L723-2: Formula: true InVars {} OutVars{ULTIMATE.start_fib_#res#1=|v_ULTIMATE.start_fib_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_fib_#res#1] {3295#true} is VALID [2022-02-20 20:06:56,446 INFO L290 TraceCheckUtils]: 42: Hoare triple {3295#true} [194] L723-2-->L706: Formula: true InVars {} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_fib_#t~post3#1] {3295#true} is VALID [2022-02-20 20:06:56,447 INFO L290 TraceCheckUtils]: 43: Hoare triple {3295#true} [191] L706-->L706-6: Formula: (= v_~x~0_2 0) InVars {} OutVars{~x~0=v_~x~0_2} AuxVars[] AssignedVars[~x~0] {3297#(= ~x~0 0)} is VALID [2022-02-20 20:06:56,447 INFO L290 TraceCheckUtils]: 44: Hoare triple {3297#(= ~x~0 0)} [131] L706-6-->L706-7: Formula: (not (< v_~x~0_3 22)) InVars {~x~0=v_~x~0_3} OutVars{~x~0=v_~x~0_3} AuxVars[] AssignedVars[] {3296#false} is VALID [2022-02-20 20:06:56,448 INFO L290 TraceCheckUtils]: 45: Hoare triple {3296#false} [171] L706-7-->L711: Formula: (= |v_ULTIMATE.start_fib_#res#1_2| v_~prev~0_4) InVars {~prev~0=v_~prev~0_4} OutVars{ULTIMATE.start_fib_#res#1=|v_ULTIMATE.start_fib_#res#1_2|, ~prev~0=v_~prev~0_4} AuxVars[] AssignedVars[ULTIMATE.start_fib_#res#1] {3296#false} is VALID [2022-02-20 20:06:56,448 INFO L290 TraceCheckUtils]: 46: Hoare triple {3296#false} [190] L711-->L723-3: Formula: (= |v_ULTIMATE.start_fib_#res#1_3| |v_ULTIMATE.start_main_#t~ret8#1_2|) InVars {ULTIMATE.start_fib_#res#1=|v_ULTIMATE.start_fib_#res#1_3|} OutVars{ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_2|, ULTIMATE.start_fib_#res#1=|v_ULTIMATE.start_fib_#res#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~ret8#1] {3296#false} is VALID [2022-02-20 20:06:56,448 INFO L290 TraceCheckUtils]: 47: Hoare triple {3296#false} [159] L723-3-->L723-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3296#false} is VALID [2022-02-20 20:06:56,448 INFO L290 TraceCheckUtils]: 48: Hoare triple {3296#false} [185] L723-4-->L723-5: Formula: (and (<= |v_ULTIMATE.start_main_#t~ret8#1_3| 2147483647) (<= 0 (+ |v_ULTIMATE.start_main_#t~ret8#1_3| 2147483648))) InVars {ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_3|} OutVars{ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_3|} AuxVars[] AssignedVars[] {3296#false} is VALID [2022-02-20 20:06:56,449 INFO L290 TraceCheckUtils]: 49: Hoare triple {3296#false} [168] L723-5-->L723-6: Formula: (= |v_ULTIMATE.start_main_~correct~0#1_2| |v_ULTIMATE.start_main_#t~ret8#1_4|) InVars {ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_4|} OutVars{ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_4|, ULTIMATE.start_main_~correct~0#1=|v_ULTIMATE.start_main_~correct~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~correct~0#1] {3296#false} is VALID [2022-02-20 20:06:56,449 INFO L290 TraceCheckUtils]: 50: Hoare triple {3296#false} [134] L723-6-->L725: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~ret8#1] {3296#false} is VALID [2022-02-20 20:06:56,449 INFO L290 TraceCheckUtils]: 51: Hoare triple {3296#false} [141] L725-->L726: Formula: (or (not (< v_~i~0_4 |v_ULTIMATE.start_main_~correct~0#1_4|)) (not (< v_~j~0_4 |v_ULTIMATE.start_main_~correct~0#1_4|))) InVars {~j~0=v_~j~0_4, ULTIMATE.start_main_~correct~0#1=|v_ULTIMATE.start_main_~correct~0#1_4|, ~i~0=v_~i~0_4} OutVars{~j~0=v_~j~0_4, ULTIMATE.start_main_~correct~0#1=|v_ULTIMATE.start_main_~correct~0#1_4|, ~i~0=v_~i~0_4} AuxVars[] AssignedVars[] {3296#false} is VALID [2022-02-20 20:06:56,449 INFO L290 TraceCheckUtils]: 52: Hoare triple {3296#false} [165] L726-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3296#false} is VALID [2022-02-20 20:06:56,450 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:06:56,450 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 20:06:56,450 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [927448271] [2022-02-20 20:06:56,451 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [927448271] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 20:06:56,451 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 20:06:56,451 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 20:06:56,451 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2097340757] [2022-02-20 20:06:56,451 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 20:06:56,452 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 17.666666666666668) internal successors, (53), 3 states have internal predecessors, (53), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 53 [2022-02-20 20:06:56,453 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 20:06:56,453 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 17.666666666666668) internal successors, (53), 3 states have internal predecessors, (53), 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:06:56,492 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:06:56,492 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 20:06:56,492 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 20:06:56,493 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 20:06:56,493 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 20:06:56,494 INFO L499 CegarLoopForPetriNet]: Number of universal loopers: 83 out of 96 [2022-02-20 20:06:56,495 INFO L92 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 92 places, 89 transitions, 182 flow. Second operand has 3 states, 3 states have (on average 84.66666666666667) internal successors, (254), 3 states have internal predecessors, (254), 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:06:56,495 INFO L101 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-02-20 20:06:56,495 INFO L102 encePairwiseOnDemand]: Number of universal subtrahend loopers: 83 of 96 [2022-02-20 20:06:56,495 INFO L74 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-02-20 20:06:56,528 INFO L129 PetriNetUnfolder]: 3/95 cut-off events. [2022-02-20 20:06:56,528 INFO L130 PetriNetUnfolder]: For 0/0 co-relation queries the response was YES. [2022-02-20 20:06:56,529 INFO L84 FinitePrefix]: Finished finitePrefix Result has 113 conditions, 95 events. 3/95 cut-off events. For 0/0 co-relation queries the response was YES. Maximal size of possible extension queue 3. Compared 60 event pairs, 0 based on Foata normal form. 0/91 useless extension candidates. Maximal degree in co-relation 110. Up to 6 conditions per place. [2022-02-20 20:06:56,530 INFO L132 encePairwiseOnDemand]: 93/96 looper letters, 9 selfloop transitions, 2 changer transitions 0/92 dead transitions. [2022-02-20 20:06:56,530 INFO L138 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 94 places, 92 transitions, 210 flow [2022-02-20 20:06:56,530 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 20:06:56,530 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2022-02-20 20:06:56,534 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 261 transitions. [2022-02-20 20:06:56,534 INFO L544 CegarLoopForPetriNet]: DFA transition density 0.90625 [2022-02-20 20:06:56,535 INFO L72 ComplementDD]: Start complementDD. Operand 3 states and 261 transitions. [2022-02-20 20:06:56,535 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3 states and 261 transitions. [2022-02-20 20:06:56,535 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-02-20 20:06:56,535 INFO L117 ReachableStatesCopy]: Start reachableStatesCopy. Operand 3 states and 261 transitions. [2022-02-20 20:06:56,536 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends has 4 states, 3 states have (on average 87.0) internal successors, (261), 3 states have internal predecessors, (261), 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:06:56,537 INFO L131 ReachableStatesCopy]: Finished reachableStatesCopy Result has 4 states, 4 states have (on average 96.0) internal successors, (384), 4 states have internal predecessors, (384), 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:06:56,537 INFO L81 ComplementDD]: Finished complementDD. Result has 4 states, 4 states have (on average 96.0) internal successors, (384), 4 states have internal predecessors, (384), 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:06:56,538 INFO L186 Difference]: Start difference. First operand has 92 places, 89 transitions, 182 flow. Second operand 3 states and 261 transitions. [2022-02-20 20:06:56,538 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 94 places, 92 transitions, 210 flow [2022-02-20 20:06:56,539 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 94 places, 92 transitions, 210 flow, removed 0 selfloop flow, removed 0 redundant places. [2022-02-20 20:06:56,540 INFO L242 Difference]: Finished difference. Result has 95 places, 90 transitions, 194 flow [2022-02-20 20:06:56,541 INFO L317 CegarLoopForPetriNet]: {PETRI_ALPHABET=96, PETRI_DIFFERENCE_MINUEND_FLOW=182, PETRI_DIFFERENCE_MINUEND_PLACES=92, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=89, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=87, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=194, PETRI_PLACES=95, PETRI_TRANSITIONS=90} [2022-02-20 20:06:56,541 INFO L334 CegarLoopForPetriNet]: 94 programPoint places, 1 predicate places. [2022-02-20 20:06:56,542 INFO L111 iNet2FiniteAutomaton]: Start petriNet2FiniteAutomaton. Operand has 95 places, 90 transitions, 194 flow [2022-02-20 20:06:56,649 INFO L133 iNet2FiniteAutomaton]: Finished petriNet2FiniteAutomaton. Result has 3792 states, 3790 states have (on average 2.9688654353562005) internal successors, (11252), 3791 states have internal predecessors, (11252), 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:06:56,663 INFO L78 Accepts]: Start accepts. Automaton has has 3792 states, 3790 states have (on average 2.9688654353562005) internal successors, (11252), 3791 states have internal predecessors, (11252), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 53 [2022-02-20 20:06:56,663 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 20:06:56,664 INFO L470 AbstractCegarLoop]: Abstraction has has 95 places, 90 transitions, 194 flow [2022-02-20 20:06:56,664 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 84.66666666666667) internal successors, (254), 3 states have internal predecessors, (254), 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:06:56,664 INFO L246 CegarLoopForPetriNet]: Found error trace [2022-02-20 20:06:56,664 INFO L254 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 20:06:56,665 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-02-20 20:06:56,665 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATION, ULTIMATE.startErr1INUSE_VIOLATION] === [2022-02-20 20:06:56,665 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:06:56,666 INFO L85 PathProgramCache]: Analyzing trace with hash -951035470, now seen corresponding path program 1 times [2022-02-20 20:06:56,666 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:06:56,666 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [932821813] [2022-02-20 20:06:56,666 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:06:56,667 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:06:56,691 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:06:56,741 INFO L290 TraceCheckUtils]: 0: Hoare triple {7093#true} [200] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7093#true} is VALID [2022-02-20 20:06:56,741 INFO L290 TraceCheckUtils]: 1: Hoare triple {7093#true} [189] 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] {7093#true} is VALID [2022-02-20 20:06:56,741 INFO L290 TraceCheckUtils]: 2: Hoare triple {7093#true} [207] 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[] {7093#true} is VALID [2022-02-20 20:06:56,741 INFO L290 TraceCheckUtils]: 3: Hoare triple {7093#true} [208] L-1-2-->L19: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {7093#true} is VALID [2022-02-20 20:06:56,742 INFO L290 TraceCheckUtils]: 4: Hoare triple {7093#true} [176] L19-->L19-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[] {7093#true} is VALID [2022-02-20 20:06:56,742 INFO L290 TraceCheckUtils]: 5: Hoare triple {7093#true} [164] L19-1-->L19-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[] {7093#true} is VALID [2022-02-20 20:06:56,742 INFO L290 TraceCheckUtils]: 6: Hoare triple {7093#true} [186] L19-2-->L19-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[] {7093#true} is VALID [2022-02-20 20:06:56,742 INFO L290 TraceCheckUtils]: 7: Hoare triple {7093#true} [184] L19-3-->L19-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[] {7093#true} is VALID [2022-02-20 20:06:56,742 INFO L290 TraceCheckUtils]: 8: Hoare triple {7093#true} [143] L19-4-->L19-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[] {7093#true} is VALID [2022-02-20 20:06:56,743 INFO L290 TraceCheckUtils]: 9: Hoare triple {7093#true} [211] L19-5-->L683: Formula: (= v_~i~0_1 0) InVars {} OutVars{~i~0=v_~i~0_1} AuxVars[] AssignedVars[~i~0] {7093#true} is VALID [2022-02-20 20:06:56,743 INFO L290 TraceCheckUtils]: 10: Hoare triple {7093#true} [148] L683-->L686: Formula: (= v_~j~0_1 0) InVars {} OutVars{~j~0=v_~j~0_1} AuxVars[] AssignedVars[~j~0] {7093#true} is VALID [2022-02-20 20:06:56,743 INFO L290 TraceCheckUtils]: 11: Hoare triple {7093#true} [221] L686-->L686-1: Formula: (= v_~p~0_1 0) InVars {} OutVars{~p~0=v_~p~0_1} AuxVars[] AssignedVars[~p~0] {7093#true} is VALID [2022-02-20 20:06:56,743 INFO L290 TraceCheckUtils]: 12: Hoare triple {7093#true} [169] L686-1-->L703: Formula: (= v_~q~0_1 0) InVars {} OutVars{~q~0=v_~q~0_1} AuxVars[] AssignedVars[~q~0] {7093#true} is VALID [2022-02-20 20:06:56,743 INFO L290 TraceCheckUtils]: 13: Hoare triple {7093#true} [145] L703-->L703-1: Formula: (= v_~cur~0_1 1) InVars {} OutVars{~cur~0=v_~cur~0_1} AuxVars[] AssignedVars[~cur~0] {7093#true} is VALID [2022-02-20 20:06:56,744 INFO L290 TraceCheckUtils]: 14: Hoare triple {7093#true} [197] L703-1-->L703-2: Formula: (= v_~prev~0_1 0) InVars {} OutVars{~prev~0=v_~prev~0_1} AuxVars[] AssignedVars[~prev~0] {7093#true} is VALID [2022-02-20 20:06:56,744 INFO L290 TraceCheckUtils]: 15: Hoare triple {7093#true} [170] L703-2-->L704: Formula: (= v_~next~0_1 0) InVars {} OutVars{~next~0=v_~next~0_1} AuxVars[] AssignedVars[~next~0] {7093#true} is VALID [2022-02-20 20:06:56,744 INFO L290 TraceCheckUtils]: 16: Hoare triple {7093#true} [205] L704-->L-1-3: Formula: (= v_~x~0_1 0) InVars {} OutVars{~x~0=v_~x~0_1} AuxVars[] AssignedVars[~x~0] {7093#true} is VALID [2022-02-20 20:06:56,744 INFO L290 TraceCheckUtils]: 17: Hoare triple {7093#true} [212] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7093#true} is VALID [2022-02-20 20:06:56,744 INFO L290 TraceCheckUtils]: 18: Hoare triple {7093#true} [193] L-1-4-->L-1-5: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7093#true} is VALID [2022-02-20 20:06:56,745 INFO L290 TraceCheckUtils]: 19: Hoare triple {7093#true} [157] 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] {7093#true} is VALID [2022-02-20 20:06:56,745 INFO L290 TraceCheckUtils]: 20: Hoare triple {7093#true} [192] 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] {7093#true} is VALID [2022-02-20 20:06:56,745 INFO L290 TraceCheckUtils]: 21: Hoare triple {7093#true} [153] L-1-7-->L713: Formula: true InVars {} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_1|, ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_1|, ULTIMATE.start_main_~#id2~0#1.offset=|v_ULTIMATE.start_main_~#id2~0#1.offset_1|, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_1|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_1|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_1|, ULTIMATE.start_main_~#id1~0#1.offset=|v_ULTIMATE.start_main_~#id1~0#1.offset_1|, ULTIMATE.start_main_~#id1~0#1.base=|v_ULTIMATE.start_main_~#id1~0#1.base_1|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_1|, ULTIMATE.start_main_#t~nondet5#1=|v_ULTIMATE.start_main_#t~nondet5#1_1|, ULTIMATE.start_main_#t~nondet7#1=|v_ULTIMATE.start_main_#t~nondet7#1_1|, ULTIMATE.start_main_~correct~0#1=|v_ULTIMATE.start_main_~correct~0#1_1|, ULTIMATE.start_main_~#id2~0#1.base=|v_ULTIMATE.start_main_~#id2~0#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#t~ret8#1, ULTIMATE.start_main_~#id2~0#1.offset, ULTIMATE.start_main_#t~pre6#1, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_#t~pre4#1, ULTIMATE.start_main_~#id1~0#1.offset, ULTIMATE.start_main_~#id1~0#1.base, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_#t~nondet5#1, ULTIMATE.start_main_#t~nondet7#1, ULTIMATE.start_main_~correct~0#1, ULTIMATE.start_main_~#id2~0#1.base] {7093#true} is VALID [2022-02-20 20:06:56,745 INFO L290 TraceCheckUtils]: 22: Hoare triple {7093#true} [181] L713-->L713-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] {7093#true} is VALID [2022-02-20 20:06:56,745 INFO L290 TraceCheckUtils]: 23: Hoare triple {7093#true} [154] L713-1-->L714: 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] {7093#true} is VALID [2022-02-20 20:06:56,746 INFO L290 TraceCheckUtils]: 24: Hoare triple {7093#true} [139] L714-->L714-1: Formula: (and (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#id1~0#1.base_2|) (not (= 0 |v_ULTIMATE.start_main_~#id1~0#1.base_2|)) (= |v_#valid_4| (store |v_#valid_5| |v_ULTIMATE.start_main_~#id1~0#1.base_2| 1)) (= |v_#length_3| (store |v_#length_4| |v_ULTIMATE.start_main_~#id1~0#1.base_2| 4)) (= (select |v_#valid_5| |v_ULTIMATE.start_main_~#id1~0#1.base_2|) 0) (= |v_ULTIMATE.start_main_~#id1~0#1.offset_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_~#id1~0#1.offset=|v_ULTIMATE.start_main_~#id1~0#1.offset_2|, #valid=|v_#valid_4|, ULTIMATE.start_main_~#id1~0#1.base=|v_ULTIMATE.start_main_~#id1~0#1.base_2|} AuxVars[] AssignedVars[#valid, #length, ULTIMATE.start_main_~#id1~0#1.offset, ULTIMATE.start_main_~#id1~0#1.base] {7093#true} is VALID [2022-02-20 20:06:56,746 INFO L290 TraceCheckUtils]: 25: Hoare triple {7093#true} [167] L714-1-->L714-2: Formula: (and (= (select |v_#valid_7| |v_ULTIMATE.start_main_~#id2~0#1.base_2|) 0) (< |v_#StackHeapBarrier_3| |v_ULTIMATE.start_main_~#id2~0#1.base_2|) (not (= 0 |v_ULTIMATE.start_main_~#id2~0#1.base_2|)) (= (store |v_#length_6| |v_ULTIMATE.start_main_~#id2~0#1.base_2| 4) |v_#length_5|) (= |v_#valid_6| (store |v_#valid_7| |v_ULTIMATE.start_main_~#id2~0#1.base_2| 1)) (= |v_ULTIMATE.start_main_~#id2~0#1.offset_2| 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_3|, #length=|v_#length_6|, #valid=|v_#valid_7|} OutVars{ULTIMATE.start_main_~#id2~0#1.offset=|v_ULTIMATE.start_main_~#id2~0#1.offset_2|, #StackHeapBarrier=|v_#StackHeapBarrier_3|, #length=|v_#length_5|, ULTIMATE.start_main_~#id2~0#1.base=|v_ULTIMATE.start_main_~#id2~0#1.base_2|, #valid=|v_#valid_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#id2~0#1.offset, #valid, #length, ULTIMATE.start_main_~#id2~0#1.base] {7093#true} is VALID [2022-02-20 20:06:56,746 INFO L290 TraceCheckUtils]: 26: Hoare triple {7093#true} [161] L714-2-->L717: Formula: (= v_~i~0_2 1) InVars {} OutVars{~i~0=v_~i~0_2} AuxVars[] AssignedVars[~i~0] {7093#true} is VALID [2022-02-20 20:06:56,746 INFO L290 TraceCheckUtils]: 27: Hoare triple {7093#true} [163] L717-->L720: Formula: (= v_~j~0_2 1) InVars {} OutVars{~j~0=v_~j~0_2} AuxVars[] AssignedVars[~j~0] {7093#true} is VALID [2022-02-20 20:06:56,746 INFO L290 TraceCheckUtils]: 28: Hoare triple {7093#true} [174] L720-->L721: Formula: (= |v_ULTIMATE.start_main_#t~pre4#1_2| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre4#1] {7093#true} is VALID [2022-02-20 20:06:56,747 INFO L290 TraceCheckUtils]: 29: Hoare triple {7093#true} [158] L721-->L721-1: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] {7093#true} is VALID [2022-02-20 20:06:56,747 INFO L290 TraceCheckUtils]: 30: Hoare triple {7093#true} [202] L721-1-->L721-2: Formula: (= (store |v_#memory_int_5| |v_ULTIMATE.start_main_~#id1~0#1.base_3| (store (select |v_#memory_int_5| |v_ULTIMATE.start_main_~#id1~0#1.base_3|) |v_ULTIMATE.start_main_~#id1~0#1.offset_3| |v_ULTIMATE.start_main_#t~pre4#1_3|)) |v_#memory_int_4|) InVars {#memory_int=|v_#memory_int_5|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_3|, ULTIMATE.start_main_~#id1~0#1.offset=|v_ULTIMATE.start_main_~#id1~0#1.offset_3|, ULTIMATE.start_main_~#id1~0#1.base=|v_ULTIMATE.start_main_~#id1~0#1.base_3|} OutVars{#memory_int=|v_#memory_int_4|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_3|, ULTIMATE.start_main_~#id1~0#1.offset=|v_ULTIMATE.start_main_~#id1~0#1.offset_3|, ULTIMATE.start_main_~#id1~0#1.base=|v_ULTIMATE.start_main_~#id1~0#1.base_3|} AuxVars[] AssignedVars[#memory_int] {7093#true} is VALID [2022-02-20 20:06:56,747 INFO L290 TraceCheckUtils]: 31: Hoare triple {7093#true} [246] L721-2-->t1ENTRY: Formula: (and (= |v_ULTIMATE.start_main_#t~pre4#1_6| v_t1Thread1of1ForFork0_thidvar0_2) (= v_t1Thread1of1ForFork0_thidvar1_2 0) (= |v_t1Thread1of1ForFork0_#in~arg.base_4| 0) (= |v_t1Thread1of1ForFork0_#in~arg.offset_4| 0)) InVars {ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_6|} OutVars{t1Thread1of1ForFork0_#t~post1=|v_t1Thread1of1ForFork0_#t~post1_8|, t1Thread1of1ForFork0_thidvar1=v_t1Thread1of1ForFork0_thidvar1_2, t1Thread1of1ForFork0_thidvar0=v_t1Thread1of1ForFork0_thidvar0_2, t1Thread1of1ForFork0_~arg.base=v_t1Thread1of1ForFork0_~arg.base_4, t1Thread1of1ForFork0_#in~arg.base=|v_t1Thread1of1ForFork0_#in~arg.base_4|, t1Thread1of1ForFork0_~arg.offset=v_t1Thread1of1ForFork0_~arg.offset_4, t1Thread1of1ForFork0_#res.base=|v_t1Thread1of1ForFork0_#res.base_4|, t1Thread1of1ForFork0_#res.offset=|v_t1Thread1of1ForFork0_#res.offset_4|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_6|, t1Thread1of1ForFork0_#in~arg.offset=|v_t1Thread1of1ForFork0_#in~arg.offset_4|} AuxVars[] AssignedVars[t1Thread1of1ForFork0_#t~post1, t1Thread1of1ForFork0_thidvar1, t1Thread1of1ForFork0_thidvar0, t1Thread1of1ForFork0_~arg.base, t1Thread1of1ForFork0_#in~arg.base, t1Thread1of1ForFork0_~arg.offset, t1Thread1of1ForFork0_#res.base, t1Thread1of1ForFork0_#res.offset, t1Thread1of1ForFork0_#in~arg.offset] {7093#true} is VALID [2022-02-20 20:06:56,747 INFO L290 TraceCheckUtils]: 32: Hoare triple {7093#true} [201] L721-3-->L721-4: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre4#1] {7093#true} is VALID [2022-02-20 20:06:56,748 INFO L290 TraceCheckUtils]: 33: Hoare triple {7093#true} [216] L721-4-->L722: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet5#1=|v_ULTIMATE.start_main_#t~nondet5#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet5#1] {7093#true} is VALID [2022-02-20 20:06:56,748 INFO L290 TraceCheckUtils]: 34: Hoare triple {7093#true} [213] L722-->L722-1: Formula: (= |v_ULTIMATE.start_main_#t~pre6#1_2| |v_#pthreadsForks_4|) InVars {#pthreadsForks=|v_#pthreadsForks_4|} OutVars{#pthreadsForks=|v_#pthreadsForks_4|, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre6#1] {7093#true} is VALID [2022-02-20 20:06:56,748 INFO L290 TraceCheckUtils]: 35: Hoare triple {7093#true} [187] L722-1-->L722-2: Formula: (= (+ 1 |v_#pthreadsForks_6|) |v_#pthreadsForks_5|) InVars {#pthreadsForks=|v_#pthreadsForks_6|} OutVars{#pthreadsForks=|v_#pthreadsForks_5|} AuxVars[] AssignedVars[#pthreadsForks] {7093#true} is VALID [2022-02-20 20:06:56,748 INFO L290 TraceCheckUtils]: 36: Hoare triple {7093#true} [219] L722-2-->L722-3: Formula: (= (store |v_#memory_int_7| |v_ULTIMATE.start_main_~#id2~0#1.base_3| (store (select |v_#memory_int_7| |v_ULTIMATE.start_main_~#id2~0#1.base_3|) |v_ULTIMATE.start_main_~#id2~0#1.offset_3| |v_ULTIMATE.start_main_#t~pre6#1_3|)) |v_#memory_int_6|) InVars {#memory_int=|v_#memory_int_7|, ULTIMATE.start_main_~#id2~0#1.offset=|v_ULTIMATE.start_main_~#id2~0#1.offset_3|, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_3|, ULTIMATE.start_main_~#id2~0#1.base=|v_ULTIMATE.start_main_~#id2~0#1.base_3|} OutVars{#memory_int=|v_#memory_int_6|, ULTIMATE.start_main_~#id2~0#1.offset=|v_ULTIMATE.start_main_~#id2~0#1.offset_3|, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_3|, ULTIMATE.start_main_~#id2~0#1.base=|v_ULTIMATE.start_main_~#id2~0#1.base_3|} AuxVars[] AssignedVars[#memory_int] {7093#true} is VALID [2022-02-20 20:06:56,748 INFO L290 TraceCheckUtils]: 37: Hoare triple {7093#true} [248] L722-3-->t2ENTRY: Formula: (and (= |v_t2Thread1of1ForFork1_#in~arg.base_4| 0) (= |v_ULTIMATE.start_main_#t~pre6#1_6| v_t2Thread1of1ForFork1_thidvar0_2) (= |v_t2Thread1of1ForFork1_#in~arg.offset_4| 0) (= v_t2Thread1of1ForFork1_thidvar1_2 0) (= v_t2Thread1of1ForFork1_thidvar2_2 0)) InVars {ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_6|} OutVars{t2Thread1of1ForFork1_#in~arg.base=|v_t2Thread1of1ForFork1_#in~arg.base_4|, t2Thread1of1ForFork1_thidvar1=v_t2Thread1of1ForFork1_thidvar1_2, t2Thread1of1ForFork1_~arg.base=v_t2Thread1of1ForFork1_~arg.base_4, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_6|, t2Thread1of1ForFork1_thidvar0=v_t2Thread1of1ForFork1_thidvar0_2, t2Thread1of1ForFork1_~arg.offset=v_t2Thread1of1ForFork1_~arg.offset_4, t2Thread1of1ForFork1_#res.base=|v_t2Thread1of1ForFork1_#res.base_4|, t2Thread1of1ForFork1_#in~arg.offset=|v_t2Thread1of1ForFork1_#in~arg.offset_4|, t2Thread1of1ForFork1_#t~post2=|v_t2Thread1of1ForFork1_#t~post2_8|, t2Thread1of1ForFork1_#res.offset=|v_t2Thread1of1ForFork1_#res.offset_4|, t2Thread1of1ForFork1_thidvar2=v_t2Thread1of1ForFork1_thidvar2_2} AuxVars[] AssignedVars[t2Thread1of1ForFork1_#in~arg.base, t2Thread1of1ForFork1_thidvar1, t2Thread1of1ForFork1_~arg.base, t2Thread1of1ForFork1_thidvar0, t2Thread1of1ForFork1_~arg.offset, t2Thread1of1ForFork1_#res.base, t2Thread1of1ForFork1_#in~arg.offset, t2Thread1of1ForFork1_#t~post2, t2Thread1of1ForFork1_#res.offset, t2Thread1of1ForFork1_thidvar2] {7093#true} is VALID [2022-02-20 20:06:56,748 INFO L290 TraceCheckUtils]: 38: Hoare triple {7093#true} [210] L722-4-->L722-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre6#1] {7093#true} is VALID [2022-02-20 20:06:56,749 INFO L290 TraceCheckUtils]: 39: Hoare triple {7093#true} [204] L722-5-->L723: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet7#1=|v_ULTIMATE.start_main_#t~nondet7#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet7#1] {7093#true} is VALID [2022-02-20 20:06:56,749 INFO L290 TraceCheckUtils]: 40: Hoare triple {7093#true} [217] L723-->L723-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7093#true} is VALID [2022-02-20 20:06:56,749 INFO L290 TraceCheckUtils]: 41: Hoare triple {7093#true} [199] L723-1-->L723-2: Formula: true InVars {} OutVars{ULTIMATE.start_fib_#res#1=|v_ULTIMATE.start_fib_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_fib_#res#1] {7093#true} is VALID [2022-02-20 20:06:56,749 INFO L290 TraceCheckUtils]: 42: Hoare triple {7093#true} [194] L723-2-->L706: Formula: true InVars {} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_fib_#t~post3#1] {7093#true} is VALID [2022-02-20 20:06:56,756 INFO L290 TraceCheckUtils]: 43: Hoare triple {7093#true} [191] L706-->L706-6: Formula: (= v_~x~0_2 0) InVars {} OutVars{~x~0=v_~x~0_2} AuxVars[] AssignedVars[~x~0] {7095#(= ~x~0 0)} is VALID [2022-02-20 20:06:56,756 INFO L290 TraceCheckUtils]: 44: Hoare triple {7095#(= ~x~0 0)} [132] L706-6-->L707: Formula: (< v_~x~0_4 22) InVars {~x~0=v_~x~0_4} OutVars{~x~0=v_~x~0_4} AuxVars[] AssignedVars[] {7095#(= ~x~0 0)} is VALID [2022-02-20 20:06:56,759 INFO L290 TraceCheckUtils]: 45: Hoare triple {7095#(= ~x~0 0)} [142] L707-->L708: Formula: (= v_~next~0_2 (+ v_~prev~0_2 v_~cur~0_2)) InVars {~cur~0=v_~cur~0_2, ~prev~0=v_~prev~0_2} OutVars{~next~0=v_~next~0_2, ~cur~0=v_~cur~0_2, ~prev~0=v_~prev~0_2} AuxVars[] AssignedVars[~next~0] {7095#(= ~x~0 0)} is VALID [2022-02-20 20:06:56,760 INFO L290 TraceCheckUtils]: 46: Hoare triple {7095#(= ~x~0 0)} [147] L708-->L709: Formula: (= v_~prev~0_3 v_~cur~0_3) InVars {~cur~0=v_~cur~0_3} OutVars{~cur~0=v_~cur~0_3, ~prev~0=v_~prev~0_3} AuxVars[] AssignedVars[~prev~0] {7095#(= ~x~0 0)} is VALID [2022-02-20 20:06:56,760 INFO L290 TraceCheckUtils]: 47: Hoare triple {7095#(= ~x~0 0)} [195] L709-->L706-3: Formula: (= v_~next~0_3 v_~cur~0_4) InVars {~next~0=v_~next~0_3} OutVars{~next~0=v_~next~0_3, ~cur~0=v_~cur~0_4} AuxVars[] AssignedVars[~cur~0] {7095#(= ~x~0 0)} is VALID [2022-02-20 20:06:56,760 INFO L290 TraceCheckUtils]: 48: Hoare triple {7095#(= ~x~0 0)} [196] L706-3-->L706-4: Formula: (= |v_ULTIMATE.start_fib_#t~post3#1_2| v_~x~0_5) InVars {~x~0=v_~x~0_5} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_2|, ~x~0=v_~x~0_5} AuxVars[] AssignedVars[ULTIMATE.start_fib_#t~post3#1] {7096#(= |ULTIMATE.start_fib_#t~post3#1| 0)} is VALID [2022-02-20 20:06:56,761 INFO L290 TraceCheckUtils]: 49: Hoare triple {7096#(= |ULTIMATE.start_fib_#t~post3#1| 0)} [136] L706-4-->L706-5: Formula: (= (+ |v_ULTIMATE.start_fib_#t~post3#1_3| 1) v_~x~0_6) InVars {ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_3|} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_3|, ~x~0=v_~x~0_6} AuxVars[] AssignedVars[~x~0] {7097#(<= ~x~0 1)} is VALID [2022-02-20 20:06:56,762 INFO L290 TraceCheckUtils]: 50: Hoare triple {7097#(<= ~x~0 1)} [135] L706-5-->L706-6: Formula: true InVars {} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_fib_#t~post3#1] {7097#(<= ~x~0 1)} is VALID [2022-02-20 20:06:56,762 INFO L290 TraceCheckUtils]: 51: Hoare triple {7097#(<= ~x~0 1)} [131] L706-6-->L706-7: Formula: (not (< v_~x~0_3 22)) InVars {~x~0=v_~x~0_3} OutVars{~x~0=v_~x~0_3} AuxVars[] AssignedVars[] {7094#false} is VALID [2022-02-20 20:06:56,763 INFO L290 TraceCheckUtils]: 52: Hoare triple {7094#false} [171] L706-7-->L711: Formula: (= |v_ULTIMATE.start_fib_#res#1_2| v_~prev~0_4) InVars {~prev~0=v_~prev~0_4} OutVars{ULTIMATE.start_fib_#res#1=|v_ULTIMATE.start_fib_#res#1_2|, ~prev~0=v_~prev~0_4} AuxVars[] AssignedVars[ULTIMATE.start_fib_#res#1] {7094#false} is VALID [2022-02-20 20:06:56,763 INFO L290 TraceCheckUtils]: 53: Hoare triple {7094#false} [190] L711-->L723-3: Formula: (= |v_ULTIMATE.start_fib_#res#1_3| |v_ULTIMATE.start_main_#t~ret8#1_2|) InVars {ULTIMATE.start_fib_#res#1=|v_ULTIMATE.start_fib_#res#1_3|} OutVars{ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_2|, ULTIMATE.start_fib_#res#1=|v_ULTIMATE.start_fib_#res#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~ret8#1] {7094#false} is VALID [2022-02-20 20:06:56,763 INFO L290 TraceCheckUtils]: 54: Hoare triple {7094#false} [159] L723-3-->L723-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7094#false} is VALID [2022-02-20 20:06:56,763 INFO L290 TraceCheckUtils]: 55: Hoare triple {7094#false} [185] L723-4-->L723-5: Formula: (and (<= |v_ULTIMATE.start_main_#t~ret8#1_3| 2147483647) (<= 0 (+ |v_ULTIMATE.start_main_#t~ret8#1_3| 2147483648))) InVars {ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_3|} OutVars{ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_3|} AuxVars[] AssignedVars[] {7094#false} is VALID [2022-02-20 20:06:56,763 INFO L290 TraceCheckUtils]: 56: Hoare triple {7094#false} [168] L723-5-->L723-6: Formula: (= |v_ULTIMATE.start_main_~correct~0#1_2| |v_ULTIMATE.start_main_#t~ret8#1_4|) InVars {ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_4|} OutVars{ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_4|, ULTIMATE.start_main_~correct~0#1=|v_ULTIMATE.start_main_~correct~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~correct~0#1] {7094#false} is VALID [2022-02-20 20:06:56,764 INFO L290 TraceCheckUtils]: 57: Hoare triple {7094#false} [134] L723-6-->L725: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~ret8#1] {7094#false} is VALID [2022-02-20 20:06:56,764 INFO L290 TraceCheckUtils]: 58: Hoare triple {7094#false} [141] L725-->L726: Formula: (or (not (< v_~i~0_4 |v_ULTIMATE.start_main_~correct~0#1_4|)) (not (< v_~j~0_4 |v_ULTIMATE.start_main_~correct~0#1_4|))) InVars {~j~0=v_~j~0_4, ULTIMATE.start_main_~correct~0#1=|v_ULTIMATE.start_main_~correct~0#1_4|, ~i~0=v_~i~0_4} OutVars{~j~0=v_~j~0_4, ULTIMATE.start_main_~correct~0#1=|v_ULTIMATE.start_main_~correct~0#1_4|, ~i~0=v_~i~0_4} AuxVars[] AssignedVars[] {7094#false} is VALID [2022-02-20 20:06:56,764 INFO L290 TraceCheckUtils]: 59: Hoare triple {7094#false} [165] L726-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7094#false} is VALID [2022-02-20 20:06:56,765 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:06:56,765 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 20:06:56,765 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [932821813] [2022-02-20 20:06:56,765 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [932821813] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 20:06:56,765 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2009136614] [2022-02-20 20:06:56,765 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:06:56,766 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 20:06:56,766 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 20:06:56,775 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:06:56,800 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:06:56,857 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:06:56,859 INFO L263 TraceCheckSpWp]: Trace formula consists of 152 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-20 20:06:56,876 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:06:56,880 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 20:06:57,079 INFO L290 TraceCheckUtils]: 0: Hoare triple {7093#true} [200] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7093#true} is VALID [2022-02-20 20:06:57,079 INFO L290 TraceCheckUtils]: 1: Hoare triple {7093#true} [189] 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] {7093#true} is VALID [2022-02-20 20:06:57,079 INFO L290 TraceCheckUtils]: 2: Hoare triple {7093#true} [207] 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[] {7093#true} is VALID [2022-02-20 20:06:57,080 INFO L290 TraceCheckUtils]: 3: Hoare triple {7093#true} [208] L-1-2-->L19: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {7093#true} is VALID [2022-02-20 20:06:57,080 INFO L290 TraceCheckUtils]: 4: Hoare triple {7093#true} [176] L19-->L19-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[] {7093#true} is VALID [2022-02-20 20:06:57,080 INFO L290 TraceCheckUtils]: 5: Hoare triple {7093#true} [164] L19-1-->L19-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[] {7093#true} is VALID [2022-02-20 20:06:57,080 INFO L290 TraceCheckUtils]: 6: Hoare triple {7093#true} [186] L19-2-->L19-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[] {7093#true} is VALID [2022-02-20 20:06:57,081 INFO L290 TraceCheckUtils]: 7: Hoare triple {7093#true} [184] L19-3-->L19-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[] {7093#true} is VALID [2022-02-20 20:06:57,081 INFO L290 TraceCheckUtils]: 8: Hoare triple {7093#true} [143] L19-4-->L19-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[] {7093#true} is VALID [2022-02-20 20:06:57,081 INFO L290 TraceCheckUtils]: 9: Hoare triple {7093#true} [211] L19-5-->L683: Formula: (= v_~i~0_1 0) InVars {} OutVars{~i~0=v_~i~0_1} AuxVars[] AssignedVars[~i~0] {7093#true} is VALID [2022-02-20 20:06:57,081 INFO L290 TraceCheckUtils]: 10: Hoare triple {7093#true} [148] L683-->L686: Formula: (= v_~j~0_1 0) InVars {} OutVars{~j~0=v_~j~0_1} AuxVars[] AssignedVars[~j~0] {7093#true} is VALID [2022-02-20 20:06:57,082 INFO L290 TraceCheckUtils]: 11: Hoare triple {7093#true} [221] L686-->L686-1: Formula: (= v_~p~0_1 0) InVars {} OutVars{~p~0=v_~p~0_1} AuxVars[] AssignedVars[~p~0] {7093#true} is VALID [2022-02-20 20:06:57,082 INFO L290 TraceCheckUtils]: 12: Hoare triple {7093#true} [169] L686-1-->L703: Formula: (= v_~q~0_1 0) InVars {} OutVars{~q~0=v_~q~0_1} AuxVars[] AssignedVars[~q~0] {7093#true} is VALID [2022-02-20 20:06:57,082 INFO L290 TraceCheckUtils]: 13: Hoare triple {7093#true} [145] L703-->L703-1: Formula: (= v_~cur~0_1 1) InVars {} OutVars{~cur~0=v_~cur~0_1} AuxVars[] AssignedVars[~cur~0] {7093#true} is VALID [2022-02-20 20:06:57,082 INFO L290 TraceCheckUtils]: 14: Hoare triple {7093#true} [197] L703-1-->L703-2: Formula: (= v_~prev~0_1 0) InVars {} OutVars{~prev~0=v_~prev~0_1} AuxVars[] AssignedVars[~prev~0] {7093#true} is VALID [2022-02-20 20:06:57,082 INFO L290 TraceCheckUtils]: 15: Hoare triple {7093#true} [170] L703-2-->L704: Formula: (= v_~next~0_1 0) InVars {} OutVars{~next~0=v_~next~0_1} AuxVars[] AssignedVars[~next~0] {7093#true} is VALID [2022-02-20 20:06:57,083 INFO L290 TraceCheckUtils]: 16: Hoare triple {7093#true} [205] L704-->L-1-3: Formula: (= v_~x~0_1 0) InVars {} OutVars{~x~0=v_~x~0_1} AuxVars[] AssignedVars[~x~0] {7093#true} is VALID [2022-02-20 20:06:57,083 INFO L290 TraceCheckUtils]: 17: Hoare triple {7093#true} [212] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7093#true} is VALID [2022-02-20 20:06:57,083 INFO L290 TraceCheckUtils]: 18: Hoare triple {7093#true} [193] L-1-4-->L-1-5: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7093#true} is VALID [2022-02-20 20:06:57,083 INFO L290 TraceCheckUtils]: 19: Hoare triple {7093#true} [157] 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] {7093#true} is VALID [2022-02-20 20:06:57,084 INFO L290 TraceCheckUtils]: 20: Hoare triple {7093#true} [192] 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] {7093#true} is VALID [2022-02-20 20:06:57,084 INFO L290 TraceCheckUtils]: 21: Hoare triple {7093#true} [153] L-1-7-->L713: Formula: true InVars {} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_1|, ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_1|, ULTIMATE.start_main_~#id2~0#1.offset=|v_ULTIMATE.start_main_~#id2~0#1.offset_1|, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_1|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_1|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_1|, ULTIMATE.start_main_~#id1~0#1.offset=|v_ULTIMATE.start_main_~#id1~0#1.offset_1|, ULTIMATE.start_main_~#id1~0#1.base=|v_ULTIMATE.start_main_~#id1~0#1.base_1|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_1|, ULTIMATE.start_main_#t~nondet5#1=|v_ULTIMATE.start_main_#t~nondet5#1_1|, ULTIMATE.start_main_#t~nondet7#1=|v_ULTIMATE.start_main_#t~nondet7#1_1|, ULTIMATE.start_main_~correct~0#1=|v_ULTIMATE.start_main_~correct~0#1_1|, ULTIMATE.start_main_~#id2~0#1.base=|v_ULTIMATE.start_main_~#id2~0#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#t~ret8#1, ULTIMATE.start_main_~#id2~0#1.offset, ULTIMATE.start_main_#t~pre6#1, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_#t~pre4#1, ULTIMATE.start_main_~#id1~0#1.offset, ULTIMATE.start_main_~#id1~0#1.base, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_#t~nondet5#1, ULTIMATE.start_main_#t~nondet7#1, ULTIMATE.start_main_~correct~0#1, ULTIMATE.start_main_~#id2~0#1.base] {7093#true} is VALID [2022-02-20 20:06:57,084 INFO L290 TraceCheckUtils]: 22: Hoare triple {7093#true} [181] L713-->L713-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] {7093#true} is VALID [2022-02-20 20:06:57,084 INFO L290 TraceCheckUtils]: 23: Hoare triple {7093#true} [154] L713-1-->L714: 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] {7093#true} is VALID [2022-02-20 20:06:57,085 INFO L290 TraceCheckUtils]: 24: Hoare triple {7093#true} [139] L714-->L714-1: Formula: (and (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#id1~0#1.base_2|) (not (= 0 |v_ULTIMATE.start_main_~#id1~0#1.base_2|)) (= |v_#valid_4| (store |v_#valid_5| |v_ULTIMATE.start_main_~#id1~0#1.base_2| 1)) (= |v_#length_3| (store |v_#length_4| |v_ULTIMATE.start_main_~#id1~0#1.base_2| 4)) (= (select |v_#valid_5| |v_ULTIMATE.start_main_~#id1~0#1.base_2|) 0) (= |v_ULTIMATE.start_main_~#id1~0#1.offset_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_~#id1~0#1.offset=|v_ULTIMATE.start_main_~#id1~0#1.offset_2|, #valid=|v_#valid_4|, ULTIMATE.start_main_~#id1~0#1.base=|v_ULTIMATE.start_main_~#id1~0#1.base_2|} AuxVars[] AssignedVars[#valid, #length, ULTIMATE.start_main_~#id1~0#1.offset, ULTIMATE.start_main_~#id1~0#1.base] {7093#true} is VALID [2022-02-20 20:06:57,085 INFO L290 TraceCheckUtils]: 25: Hoare triple {7093#true} [167] L714-1-->L714-2: Formula: (and (= (select |v_#valid_7| |v_ULTIMATE.start_main_~#id2~0#1.base_2|) 0) (< |v_#StackHeapBarrier_3| |v_ULTIMATE.start_main_~#id2~0#1.base_2|) (not (= 0 |v_ULTIMATE.start_main_~#id2~0#1.base_2|)) (= (store |v_#length_6| |v_ULTIMATE.start_main_~#id2~0#1.base_2| 4) |v_#length_5|) (= |v_#valid_6| (store |v_#valid_7| |v_ULTIMATE.start_main_~#id2~0#1.base_2| 1)) (= |v_ULTIMATE.start_main_~#id2~0#1.offset_2| 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_3|, #length=|v_#length_6|, #valid=|v_#valid_7|} OutVars{ULTIMATE.start_main_~#id2~0#1.offset=|v_ULTIMATE.start_main_~#id2~0#1.offset_2|, #StackHeapBarrier=|v_#StackHeapBarrier_3|, #length=|v_#length_5|, ULTIMATE.start_main_~#id2~0#1.base=|v_ULTIMATE.start_main_~#id2~0#1.base_2|, #valid=|v_#valid_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#id2~0#1.offset, #valid, #length, ULTIMATE.start_main_~#id2~0#1.base] {7093#true} is VALID [2022-02-20 20:06:57,085 INFO L290 TraceCheckUtils]: 26: Hoare triple {7093#true} [161] L714-2-->L717: Formula: (= v_~i~0_2 1) InVars {} OutVars{~i~0=v_~i~0_2} AuxVars[] AssignedVars[~i~0] {7093#true} is VALID [2022-02-20 20:06:57,085 INFO L290 TraceCheckUtils]: 27: Hoare triple {7093#true} [163] L717-->L720: Formula: (= v_~j~0_2 1) InVars {} OutVars{~j~0=v_~j~0_2} AuxVars[] AssignedVars[~j~0] {7093#true} is VALID [2022-02-20 20:06:57,085 INFO L290 TraceCheckUtils]: 28: Hoare triple {7093#true} [174] L720-->L721: Formula: (= |v_ULTIMATE.start_main_#t~pre4#1_2| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre4#1] {7093#true} is VALID [2022-02-20 20:06:57,086 INFO L290 TraceCheckUtils]: 29: Hoare triple {7093#true} [158] L721-->L721-1: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] {7093#true} is VALID [2022-02-20 20:06:57,086 INFO L290 TraceCheckUtils]: 30: Hoare triple {7093#true} [202] L721-1-->L721-2: Formula: (= (store |v_#memory_int_5| |v_ULTIMATE.start_main_~#id1~0#1.base_3| (store (select |v_#memory_int_5| |v_ULTIMATE.start_main_~#id1~0#1.base_3|) |v_ULTIMATE.start_main_~#id1~0#1.offset_3| |v_ULTIMATE.start_main_#t~pre4#1_3|)) |v_#memory_int_4|) InVars {#memory_int=|v_#memory_int_5|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_3|, ULTIMATE.start_main_~#id1~0#1.offset=|v_ULTIMATE.start_main_~#id1~0#1.offset_3|, ULTIMATE.start_main_~#id1~0#1.base=|v_ULTIMATE.start_main_~#id1~0#1.base_3|} OutVars{#memory_int=|v_#memory_int_4|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_3|, ULTIMATE.start_main_~#id1~0#1.offset=|v_ULTIMATE.start_main_~#id1~0#1.offset_3|, ULTIMATE.start_main_~#id1~0#1.base=|v_ULTIMATE.start_main_~#id1~0#1.base_3|} AuxVars[] AssignedVars[#memory_int] {7093#true} is VALID [2022-02-20 20:06:57,086 INFO L290 TraceCheckUtils]: 31: Hoare triple {7093#true} [246] L721-2-->t1ENTRY: Formula: (and (= |v_ULTIMATE.start_main_#t~pre4#1_6| v_t1Thread1of1ForFork0_thidvar0_2) (= v_t1Thread1of1ForFork0_thidvar1_2 0) (= |v_t1Thread1of1ForFork0_#in~arg.base_4| 0) (= |v_t1Thread1of1ForFork0_#in~arg.offset_4| 0)) InVars {ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_6|} OutVars{t1Thread1of1ForFork0_#t~post1=|v_t1Thread1of1ForFork0_#t~post1_8|, t1Thread1of1ForFork0_thidvar1=v_t1Thread1of1ForFork0_thidvar1_2, t1Thread1of1ForFork0_thidvar0=v_t1Thread1of1ForFork0_thidvar0_2, t1Thread1of1ForFork0_~arg.base=v_t1Thread1of1ForFork0_~arg.base_4, t1Thread1of1ForFork0_#in~arg.base=|v_t1Thread1of1ForFork0_#in~arg.base_4|, t1Thread1of1ForFork0_~arg.offset=v_t1Thread1of1ForFork0_~arg.offset_4, t1Thread1of1ForFork0_#res.base=|v_t1Thread1of1ForFork0_#res.base_4|, t1Thread1of1ForFork0_#res.offset=|v_t1Thread1of1ForFork0_#res.offset_4|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_6|, t1Thread1of1ForFork0_#in~arg.offset=|v_t1Thread1of1ForFork0_#in~arg.offset_4|} AuxVars[] AssignedVars[t1Thread1of1ForFork0_#t~post1, t1Thread1of1ForFork0_thidvar1, t1Thread1of1ForFork0_thidvar0, t1Thread1of1ForFork0_~arg.base, t1Thread1of1ForFork0_#in~arg.base, t1Thread1of1ForFork0_~arg.offset, t1Thread1of1ForFork0_#res.base, t1Thread1of1ForFork0_#res.offset, t1Thread1of1ForFork0_#in~arg.offset] {7093#true} is VALID [2022-02-20 20:06:57,086 INFO L290 TraceCheckUtils]: 32: Hoare triple {7093#true} [201] L721-3-->L721-4: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre4#1] {7093#true} is VALID [2022-02-20 20:06:57,087 INFO L290 TraceCheckUtils]: 33: Hoare triple {7093#true} [216] L721-4-->L722: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet5#1=|v_ULTIMATE.start_main_#t~nondet5#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet5#1] {7093#true} is VALID [2022-02-20 20:06:57,087 INFO L290 TraceCheckUtils]: 34: Hoare triple {7093#true} [213] L722-->L722-1: Formula: (= |v_ULTIMATE.start_main_#t~pre6#1_2| |v_#pthreadsForks_4|) InVars {#pthreadsForks=|v_#pthreadsForks_4|} OutVars{#pthreadsForks=|v_#pthreadsForks_4|, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre6#1] {7093#true} is VALID [2022-02-20 20:06:57,087 INFO L290 TraceCheckUtils]: 35: Hoare triple {7093#true} [187] L722-1-->L722-2: Formula: (= (+ 1 |v_#pthreadsForks_6|) |v_#pthreadsForks_5|) InVars {#pthreadsForks=|v_#pthreadsForks_6|} OutVars{#pthreadsForks=|v_#pthreadsForks_5|} AuxVars[] AssignedVars[#pthreadsForks] {7093#true} is VALID [2022-02-20 20:06:57,087 INFO L290 TraceCheckUtils]: 36: Hoare triple {7093#true} [219] L722-2-->L722-3: Formula: (= (store |v_#memory_int_7| |v_ULTIMATE.start_main_~#id2~0#1.base_3| (store (select |v_#memory_int_7| |v_ULTIMATE.start_main_~#id2~0#1.base_3|) |v_ULTIMATE.start_main_~#id2~0#1.offset_3| |v_ULTIMATE.start_main_#t~pre6#1_3|)) |v_#memory_int_6|) InVars {#memory_int=|v_#memory_int_7|, ULTIMATE.start_main_~#id2~0#1.offset=|v_ULTIMATE.start_main_~#id2~0#1.offset_3|, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_3|, ULTIMATE.start_main_~#id2~0#1.base=|v_ULTIMATE.start_main_~#id2~0#1.base_3|} OutVars{#memory_int=|v_#memory_int_6|, ULTIMATE.start_main_~#id2~0#1.offset=|v_ULTIMATE.start_main_~#id2~0#1.offset_3|, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_3|, ULTIMATE.start_main_~#id2~0#1.base=|v_ULTIMATE.start_main_~#id2~0#1.base_3|} AuxVars[] AssignedVars[#memory_int] {7093#true} is VALID [2022-02-20 20:06:57,088 INFO L290 TraceCheckUtils]: 37: Hoare triple {7093#true} [248] L722-3-->t2ENTRY: Formula: (and (= |v_t2Thread1of1ForFork1_#in~arg.base_4| 0) (= |v_ULTIMATE.start_main_#t~pre6#1_6| v_t2Thread1of1ForFork1_thidvar0_2) (= |v_t2Thread1of1ForFork1_#in~arg.offset_4| 0) (= v_t2Thread1of1ForFork1_thidvar1_2 0) (= v_t2Thread1of1ForFork1_thidvar2_2 0)) InVars {ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_6|} OutVars{t2Thread1of1ForFork1_#in~arg.base=|v_t2Thread1of1ForFork1_#in~arg.base_4|, t2Thread1of1ForFork1_thidvar1=v_t2Thread1of1ForFork1_thidvar1_2, t2Thread1of1ForFork1_~arg.base=v_t2Thread1of1ForFork1_~arg.base_4, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_6|, t2Thread1of1ForFork1_thidvar0=v_t2Thread1of1ForFork1_thidvar0_2, t2Thread1of1ForFork1_~arg.offset=v_t2Thread1of1ForFork1_~arg.offset_4, t2Thread1of1ForFork1_#res.base=|v_t2Thread1of1ForFork1_#res.base_4|, t2Thread1of1ForFork1_#in~arg.offset=|v_t2Thread1of1ForFork1_#in~arg.offset_4|, t2Thread1of1ForFork1_#t~post2=|v_t2Thread1of1ForFork1_#t~post2_8|, t2Thread1of1ForFork1_#res.offset=|v_t2Thread1of1ForFork1_#res.offset_4|, t2Thread1of1ForFork1_thidvar2=v_t2Thread1of1ForFork1_thidvar2_2} AuxVars[] AssignedVars[t2Thread1of1ForFork1_#in~arg.base, t2Thread1of1ForFork1_thidvar1, t2Thread1of1ForFork1_~arg.base, t2Thread1of1ForFork1_thidvar0, t2Thread1of1ForFork1_~arg.offset, t2Thread1of1ForFork1_#res.base, t2Thread1of1ForFork1_#in~arg.offset, t2Thread1of1ForFork1_#t~post2, t2Thread1of1ForFork1_#res.offset, t2Thread1of1ForFork1_thidvar2] {7093#true} is VALID [2022-02-20 20:06:57,088 INFO L290 TraceCheckUtils]: 38: Hoare triple {7093#true} [210] L722-4-->L722-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre6#1] {7093#true} is VALID [2022-02-20 20:06:57,088 INFO L290 TraceCheckUtils]: 39: Hoare triple {7093#true} [204] L722-5-->L723: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet7#1=|v_ULTIMATE.start_main_#t~nondet7#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet7#1] {7093#true} is VALID [2022-02-20 20:06:57,088 INFO L290 TraceCheckUtils]: 40: Hoare triple {7093#true} [217] L723-->L723-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7093#true} is VALID [2022-02-20 20:06:57,088 INFO L290 TraceCheckUtils]: 41: Hoare triple {7093#true} [199] L723-1-->L723-2: Formula: true InVars {} OutVars{ULTIMATE.start_fib_#res#1=|v_ULTIMATE.start_fib_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_fib_#res#1] {7093#true} is VALID [2022-02-20 20:06:57,089 INFO L290 TraceCheckUtils]: 42: Hoare triple {7093#true} [194] L723-2-->L706: Formula: true InVars {} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_fib_#t~post3#1] {7093#true} is VALID [2022-02-20 20:06:57,089 INFO L290 TraceCheckUtils]: 43: Hoare triple {7093#true} [191] L706-->L706-6: Formula: (= v_~x~0_2 0) InVars {} OutVars{~x~0=v_~x~0_2} AuxVars[] AssignedVars[~x~0] {7230#(<= ~x~0 0)} is VALID [2022-02-20 20:06:57,090 INFO L290 TraceCheckUtils]: 44: Hoare triple {7230#(<= ~x~0 0)} [132] L706-6-->L707: Formula: (< v_~x~0_4 22) InVars {~x~0=v_~x~0_4} OutVars{~x~0=v_~x~0_4} AuxVars[] AssignedVars[] {7230#(<= ~x~0 0)} is VALID [2022-02-20 20:06:57,090 INFO L290 TraceCheckUtils]: 45: Hoare triple {7230#(<= ~x~0 0)} [142] L707-->L708: Formula: (= v_~next~0_2 (+ v_~prev~0_2 v_~cur~0_2)) InVars {~cur~0=v_~cur~0_2, ~prev~0=v_~prev~0_2} OutVars{~next~0=v_~next~0_2, ~cur~0=v_~cur~0_2, ~prev~0=v_~prev~0_2} AuxVars[] AssignedVars[~next~0] {7230#(<= ~x~0 0)} is VALID [2022-02-20 20:06:57,091 INFO L290 TraceCheckUtils]: 46: Hoare triple {7230#(<= ~x~0 0)} [147] L708-->L709: Formula: (= v_~prev~0_3 v_~cur~0_3) InVars {~cur~0=v_~cur~0_3} OutVars{~cur~0=v_~cur~0_3, ~prev~0=v_~prev~0_3} AuxVars[] AssignedVars[~prev~0] {7230#(<= ~x~0 0)} is VALID [2022-02-20 20:06:57,091 INFO L290 TraceCheckUtils]: 47: Hoare triple {7230#(<= ~x~0 0)} [195] L709-->L706-3: Formula: (= v_~next~0_3 v_~cur~0_4) InVars {~next~0=v_~next~0_3} OutVars{~next~0=v_~next~0_3, ~cur~0=v_~cur~0_4} AuxVars[] AssignedVars[~cur~0] {7230#(<= ~x~0 0)} is VALID [2022-02-20 20:06:57,092 INFO L290 TraceCheckUtils]: 48: Hoare triple {7230#(<= ~x~0 0)} [196] L706-3-->L706-4: Formula: (= |v_ULTIMATE.start_fib_#t~post3#1_2| v_~x~0_5) InVars {~x~0=v_~x~0_5} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_2|, ~x~0=v_~x~0_5} AuxVars[] AssignedVars[ULTIMATE.start_fib_#t~post3#1] {7246#(<= |ULTIMATE.start_fib_#t~post3#1| 0)} is VALID [2022-02-20 20:06:57,092 INFO L290 TraceCheckUtils]: 49: Hoare triple {7246#(<= |ULTIMATE.start_fib_#t~post3#1| 0)} [136] L706-4-->L706-5: Formula: (= (+ |v_ULTIMATE.start_fib_#t~post3#1_3| 1) v_~x~0_6) InVars {ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_3|} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_3|, ~x~0=v_~x~0_6} AuxVars[] AssignedVars[~x~0] {7097#(<= ~x~0 1)} is VALID [2022-02-20 20:06:57,093 INFO L290 TraceCheckUtils]: 50: Hoare triple {7097#(<= ~x~0 1)} [135] L706-5-->L706-6: Formula: true InVars {} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_fib_#t~post3#1] {7097#(<= ~x~0 1)} is VALID [2022-02-20 20:06:57,093 INFO L290 TraceCheckUtils]: 51: Hoare triple {7097#(<= ~x~0 1)} [131] L706-6-->L706-7: Formula: (not (< v_~x~0_3 22)) InVars {~x~0=v_~x~0_3} OutVars{~x~0=v_~x~0_3} AuxVars[] AssignedVars[] {7094#false} is VALID [2022-02-20 20:06:57,094 INFO L290 TraceCheckUtils]: 52: Hoare triple {7094#false} [171] L706-7-->L711: Formula: (= |v_ULTIMATE.start_fib_#res#1_2| v_~prev~0_4) InVars {~prev~0=v_~prev~0_4} OutVars{ULTIMATE.start_fib_#res#1=|v_ULTIMATE.start_fib_#res#1_2|, ~prev~0=v_~prev~0_4} AuxVars[] AssignedVars[ULTIMATE.start_fib_#res#1] {7094#false} is VALID [2022-02-20 20:06:57,094 INFO L290 TraceCheckUtils]: 53: Hoare triple {7094#false} [190] L711-->L723-3: Formula: (= |v_ULTIMATE.start_fib_#res#1_3| |v_ULTIMATE.start_main_#t~ret8#1_2|) InVars {ULTIMATE.start_fib_#res#1=|v_ULTIMATE.start_fib_#res#1_3|} OutVars{ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_2|, ULTIMATE.start_fib_#res#1=|v_ULTIMATE.start_fib_#res#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~ret8#1] {7094#false} is VALID [2022-02-20 20:06:57,094 INFO L290 TraceCheckUtils]: 54: Hoare triple {7094#false} [159] L723-3-->L723-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7094#false} is VALID [2022-02-20 20:06:57,094 INFO L290 TraceCheckUtils]: 55: Hoare triple {7094#false} [185] L723-4-->L723-5: Formula: (and (<= |v_ULTIMATE.start_main_#t~ret8#1_3| 2147483647) (<= 0 (+ |v_ULTIMATE.start_main_#t~ret8#1_3| 2147483648))) InVars {ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_3|} OutVars{ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_3|} AuxVars[] AssignedVars[] {7094#false} is VALID [2022-02-20 20:06:57,094 INFO L290 TraceCheckUtils]: 56: Hoare triple {7094#false} [168] L723-5-->L723-6: Formula: (= |v_ULTIMATE.start_main_~correct~0#1_2| |v_ULTIMATE.start_main_#t~ret8#1_4|) InVars {ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_4|} OutVars{ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_4|, ULTIMATE.start_main_~correct~0#1=|v_ULTIMATE.start_main_~correct~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~correct~0#1] {7094#false} is VALID [2022-02-20 20:06:57,095 INFO L290 TraceCheckUtils]: 57: Hoare triple {7094#false} [134] L723-6-->L725: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~ret8#1] {7094#false} is VALID [2022-02-20 20:06:57,095 INFO L290 TraceCheckUtils]: 58: Hoare triple {7094#false} [141] L725-->L726: Formula: (or (not (< v_~i~0_4 |v_ULTIMATE.start_main_~correct~0#1_4|)) (not (< v_~j~0_4 |v_ULTIMATE.start_main_~correct~0#1_4|))) InVars {~j~0=v_~j~0_4, ULTIMATE.start_main_~correct~0#1=|v_ULTIMATE.start_main_~correct~0#1_4|, ~i~0=v_~i~0_4} OutVars{~j~0=v_~j~0_4, ULTIMATE.start_main_~correct~0#1=|v_ULTIMATE.start_main_~correct~0#1_4|, ~i~0=v_~i~0_4} AuxVars[] AssignedVars[] {7094#false} is VALID [2022-02-20 20:06:57,095 INFO L290 TraceCheckUtils]: 59: Hoare triple {7094#false} [165] L726-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7094#false} is VALID [2022-02-20 20:06:57,096 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:06:57,096 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 20:06:57,304 INFO L290 TraceCheckUtils]: 59: Hoare triple {7094#false} [165] L726-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7094#false} is VALID [2022-02-20 20:06:57,304 INFO L290 TraceCheckUtils]: 58: Hoare triple {7094#false} [141] L725-->L726: Formula: (or (not (< v_~i~0_4 |v_ULTIMATE.start_main_~correct~0#1_4|)) (not (< v_~j~0_4 |v_ULTIMATE.start_main_~correct~0#1_4|))) InVars {~j~0=v_~j~0_4, ULTIMATE.start_main_~correct~0#1=|v_ULTIMATE.start_main_~correct~0#1_4|, ~i~0=v_~i~0_4} OutVars{~j~0=v_~j~0_4, ULTIMATE.start_main_~correct~0#1=|v_ULTIMATE.start_main_~correct~0#1_4|, ~i~0=v_~i~0_4} AuxVars[] AssignedVars[] {7094#false} is VALID [2022-02-20 20:06:57,305 INFO L290 TraceCheckUtils]: 57: Hoare triple {7094#false} [134] L723-6-->L725: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~ret8#1] {7094#false} is VALID [2022-02-20 20:06:57,305 INFO L290 TraceCheckUtils]: 56: Hoare triple {7094#false} [168] L723-5-->L723-6: Formula: (= |v_ULTIMATE.start_main_~correct~0#1_2| |v_ULTIMATE.start_main_#t~ret8#1_4|) InVars {ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_4|} OutVars{ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_4|, ULTIMATE.start_main_~correct~0#1=|v_ULTIMATE.start_main_~correct~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~correct~0#1] {7094#false} is VALID [2022-02-20 20:06:57,305 INFO L290 TraceCheckUtils]: 55: Hoare triple {7094#false} [185] L723-4-->L723-5: Formula: (and (<= |v_ULTIMATE.start_main_#t~ret8#1_3| 2147483647) (<= 0 (+ |v_ULTIMATE.start_main_#t~ret8#1_3| 2147483648))) InVars {ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_3|} OutVars{ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_3|} AuxVars[] AssignedVars[] {7094#false} is VALID [2022-02-20 20:06:57,305 INFO L290 TraceCheckUtils]: 54: Hoare triple {7094#false} [159] L723-3-->L723-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7094#false} is VALID [2022-02-20 20:06:57,305 INFO L290 TraceCheckUtils]: 53: Hoare triple {7094#false} [190] L711-->L723-3: Formula: (= |v_ULTIMATE.start_fib_#res#1_3| |v_ULTIMATE.start_main_#t~ret8#1_2|) InVars {ULTIMATE.start_fib_#res#1=|v_ULTIMATE.start_fib_#res#1_3|} OutVars{ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_2|, ULTIMATE.start_fib_#res#1=|v_ULTIMATE.start_fib_#res#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~ret8#1] {7094#false} is VALID [2022-02-20 20:06:57,306 INFO L290 TraceCheckUtils]: 52: Hoare triple {7094#false} [171] L706-7-->L711: Formula: (= |v_ULTIMATE.start_fib_#res#1_2| v_~prev~0_4) InVars {~prev~0=v_~prev~0_4} OutVars{ULTIMATE.start_fib_#res#1=|v_ULTIMATE.start_fib_#res#1_2|, ~prev~0=v_~prev~0_4} AuxVars[] AssignedVars[ULTIMATE.start_fib_#res#1] {7094#false} is VALID [2022-02-20 20:06:57,306 INFO L290 TraceCheckUtils]: 51: Hoare triple {7304#(< ~x~0 22)} [131] L706-6-->L706-7: Formula: (not (< v_~x~0_3 22)) InVars {~x~0=v_~x~0_3} OutVars{~x~0=v_~x~0_3} AuxVars[] AssignedVars[] {7094#false} is VALID [2022-02-20 20:06:57,306 INFO L290 TraceCheckUtils]: 50: Hoare triple {7304#(< ~x~0 22)} [135] L706-5-->L706-6: Formula: true InVars {} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_fib_#t~post3#1] {7304#(< ~x~0 22)} is VALID [2022-02-20 20:06:57,307 INFO L290 TraceCheckUtils]: 49: Hoare triple {7311#(< |ULTIMATE.start_fib_#t~post3#1| 21)} [136] L706-4-->L706-5: Formula: (= (+ |v_ULTIMATE.start_fib_#t~post3#1_3| 1) v_~x~0_6) InVars {ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_3|} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_3|, ~x~0=v_~x~0_6} AuxVars[] AssignedVars[~x~0] {7304#(< ~x~0 22)} is VALID [2022-02-20 20:06:57,308 INFO L290 TraceCheckUtils]: 48: Hoare triple {7315#(< ~x~0 21)} [196] L706-3-->L706-4: Formula: (= |v_ULTIMATE.start_fib_#t~post3#1_2| v_~x~0_5) InVars {~x~0=v_~x~0_5} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_2|, ~x~0=v_~x~0_5} AuxVars[] AssignedVars[ULTIMATE.start_fib_#t~post3#1] {7311#(< |ULTIMATE.start_fib_#t~post3#1| 21)} is VALID [2022-02-20 20:06:57,308 INFO L290 TraceCheckUtils]: 47: Hoare triple {7315#(< ~x~0 21)} [195] L709-->L706-3: Formula: (= v_~next~0_3 v_~cur~0_4) InVars {~next~0=v_~next~0_3} OutVars{~next~0=v_~next~0_3, ~cur~0=v_~cur~0_4} AuxVars[] AssignedVars[~cur~0] {7315#(< ~x~0 21)} is VALID [2022-02-20 20:06:57,313 INFO L290 TraceCheckUtils]: 46: Hoare triple {7315#(< ~x~0 21)} [147] L708-->L709: Formula: (= v_~prev~0_3 v_~cur~0_3) InVars {~cur~0=v_~cur~0_3} OutVars{~cur~0=v_~cur~0_3, ~prev~0=v_~prev~0_3} AuxVars[] AssignedVars[~prev~0] {7315#(< ~x~0 21)} is VALID [2022-02-20 20:06:57,314 INFO L290 TraceCheckUtils]: 45: Hoare triple {7315#(< ~x~0 21)} [142] L707-->L708: Formula: (= v_~next~0_2 (+ v_~prev~0_2 v_~cur~0_2)) InVars {~cur~0=v_~cur~0_2, ~prev~0=v_~prev~0_2} OutVars{~next~0=v_~next~0_2, ~cur~0=v_~cur~0_2, ~prev~0=v_~prev~0_2} AuxVars[] AssignedVars[~next~0] {7315#(< ~x~0 21)} is VALID [2022-02-20 20:06:57,315 INFO L290 TraceCheckUtils]: 44: Hoare triple {7315#(< ~x~0 21)} [132] L706-6-->L707: Formula: (< v_~x~0_4 22) InVars {~x~0=v_~x~0_4} OutVars{~x~0=v_~x~0_4} AuxVars[] AssignedVars[] {7315#(< ~x~0 21)} is VALID [2022-02-20 20:06:57,317 INFO L290 TraceCheckUtils]: 43: Hoare triple {7093#true} [191] L706-->L706-6: Formula: (= v_~x~0_2 0) InVars {} OutVars{~x~0=v_~x~0_2} AuxVars[] AssignedVars[~x~0] {7315#(< ~x~0 21)} is VALID [2022-02-20 20:06:57,319 INFO L290 TraceCheckUtils]: 42: Hoare triple {7093#true} [194] L723-2-->L706: Formula: true InVars {} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_fib_#t~post3#1] {7093#true} is VALID [2022-02-20 20:06:57,320 INFO L290 TraceCheckUtils]: 41: Hoare triple {7093#true} [199] L723-1-->L723-2: Formula: true InVars {} OutVars{ULTIMATE.start_fib_#res#1=|v_ULTIMATE.start_fib_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_fib_#res#1] {7093#true} is VALID [2022-02-20 20:06:57,322 INFO L290 TraceCheckUtils]: 40: Hoare triple {7093#true} [217] L723-->L723-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7093#true} is VALID [2022-02-20 20:06:57,322 INFO L290 TraceCheckUtils]: 39: Hoare triple {7093#true} [204] L722-5-->L723: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet7#1=|v_ULTIMATE.start_main_#t~nondet7#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet7#1] {7093#true} is VALID [2022-02-20 20:06:57,322 INFO L290 TraceCheckUtils]: 38: Hoare triple {7093#true} [210] L722-4-->L722-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre6#1] {7093#true} is VALID [2022-02-20 20:06:57,323 INFO L290 TraceCheckUtils]: 37: Hoare triple {7093#true} [248] L722-3-->t2ENTRY: Formula: (and (= |v_t2Thread1of1ForFork1_#in~arg.base_4| 0) (= |v_ULTIMATE.start_main_#t~pre6#1_6| v_t2Thread1of1ForFork1_thidvar0_2) (= |v_t2Thread1of1ForFork1_#in~arg.offset_4| 0) (= v_t2Thread1of1ForFork1_thidvar1_2 0) (= v_t2Thread1of1ForFork1_thidvar2_2 0)) InVars {ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_6|} OutVars{t2Thread1of1ForFork1_#in~arg.base=|v_t2Thread1of1ForFork1_#in~arg.base_4|, t2Thread1of1ForFork1_thidvar1=v_t2Thread1of1ForFork1_thidvar1_2, t2Thread1of1ForFork1_~arg.base=v_t2Thread1of1ForFork1_~arg.base_4, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_6|, t2Thread1of1ForFork1_thidvar0=v_t2Thread1of1ForFork1_thidvar0_2, t2Thread1of1ForFork1_~arg.offset=v_t2Thread1of1ForFork1_~arg.offset_4, t2Thread1of1ForFork1_#res.base=|v_t2Thread1of1ForFork1_#res.base_4|, t2Thread1of1ForFork1_#in~arg.offset=|v_t2Thread1of1ForFork1_#in~arg.offset_4|, t2Thread1of1ForFork1_#t~post2=|v_t2Thread1of1ForFork1_#t~post2_8|, t2Thread1of1ForFork1_#res.offset=|v_t2Thread1of1ForFork1_#res.offset_4|, t2Thread1of1ForFork1_thidvar2=v_t2Thread1of1ForFork1_thidvar2_2} AuxVars[] AssignedVars[t2Thread1of1ForFork1_#in~arg.base, t2Thread1of1ForFork1_thidvar1, t2Thread1of1ForFork1_~arg.base, t2Thread1of1ForFork1_thidvar0, t2Thread1of1ForFork1_~arg.offset, t2Thread1of1ForFork1_#res.base, t2Thread1of1ForFork1_#in~arg.offset, t2Thread1of1ForFork1_#t~post2, t2Thread1of1ForFork1_#res.offset, t2Thread1of1ForFork1_thidvar2] {7093#true} is VALID [2022-02-20 20:06:57,323 INFO L290 TraceCheckUtils]: 36: Hoare triple {7093#true} [219] L722-2-->L722-3: Formula: (= (store |v_#memory_int_7| |v_ULTIMATE.start_main_~#id2~0#1.base_3| (store (select |v_#memory_int_7| |v_ULTIMATE.start_main_~#id2~0#1.base_3|) |v_ULTIMATE.start_main_~#id2~0#1.offset_3| |v_ULTIMATE.start_main_#t~pre6#1_3|)) |v_#memory_int_6|) InVars {#memory_int=|v_#memory_int_7|, ULTIMATE.start_main_~#id2~0#1.offset=|v_ULTIMATE.start_main_~#id2~0#1.offset_3|, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_3|, ULTIMATE.start_main_~#id2~0#1.base=|v_ULTIMATE.start_main_~#id2~0#1.base_3|} OutVars{#memory_int=|v_#memory_int_6|, ULTIMATE.start_main_~#id2~0#1.offset=|v_ULTIMATE.start_main_~#id2~0#1.offset_3|, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_3|, ULTIMATE.start_main_~#id2~0#1.base=|v_ULTIMATE.start_main_~#id2~0#1.base_3|} AuxVars[] AssignedVars[#memory_int] {7093#true} is VALID [2022-02-20 20:06:57,323 INFO L290 TraceCheckUtils]: 35: Hoare triple {7093#true} [187] L722-1-->L722-2: Formula: (= (+ 1 |v_#pthreadsForks_6|) |v_#pthreadsForks_5|) InVars {#pthreadsForks=|v_#pthreadsForks_6|} OutVars{#pthreadsForks=|v_#pthreadsForks_5|} AuxVars[] AssignedVars[#pthreadsForks] {7093#true} is VALID [2022-02-20 20:06:57,323 INFO L290 TraceCheckUtils]: 34: Hoare triple {7093#true} [213] L722-->L722-1: Formula: (= |v_ULTIMATE.start_main_#t~pre6#1_2| |v_#pthreadsForks_4|) InVars {#pthreadsForks=|v_#pthreadsForks_4|} OutVars{#pthreadsForks=|v_#pthreadsForks_4|, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre6#1] {7093#true} is VALID [2022-02-20 20:06:57,323 INFO L290 TraceCheckUtils]: 33: Hoare triple {7093#true} [216] L721-4-->L722: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet5#1=|v_ULTIMATE.start_main_#t~nondet5#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet5#1] {7093#true} is VALID [2022-02-20 20:06:57,324 INFO L290 TraceCheckUtils]: 32: Hoare triple {7093#true} [201] L721-3-->L721-4: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre4#1] {7093#true} is VALID [2022-02-20 20:06:57,324 INFO L290 TraceCheckUtils]: 31: Hoare triple {7093#true} [246] L721-2-->t1ENTRY: Formula: (and (= |v_ULTIMATE.start_main_#t~pre4#1_6| v_t1Thread1of1ForFork0_thidvar0_2) (= v_t1Thread1of1ForFork0_thidvar1_2 0) (= |v_t1Thread1of1ForFork0_#in~arg.base_4| 0) (= |v_t1Thread1of1ForFork0_#in~arg.offset_4| 0)) InVars {ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_6|} OutVars{t1Thread1of1ForFork0_#t~post1=|v_t1Thread1of1ForFork0_#t~post1_8|, t1Thread1of1ForFork0_thidvar1=v_t1Thread1of1ForFork0_thidvar1_2, t1Thread1of1ForFork0_thidvar0=v_t1Thread1of1ForFork0_thidvar0_2, t1Thread1of1ForFork0_~arg.base=v_t1Thread1of1ForFork0_~arg.base_4, t1Thread1of1ForFork0_#in~arg.base=|v_t1Thread1of1ForFork0_#in~arg.base_4|, t1Thread1of1ForFork0_~arg.offset=v_t1Thread1of1ForFork0_~arg.offset_4, t1Thread1of1ForFork0_#res.base=|v_t1Thread1of1ForFork0_#res.base_4|, t1Thread1of1ForFork0_#res.offset=|v_t1Thread1of1ForFork0_#res.offset_4|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_6|, t1Thread1of1ForFork0_#in~arg.offset=|v_t1Thread1of1ForFork0_#in~arg.offset_4|} AuxVars[] AssignedVars[t1Thread1of1ForFork0_#t~post1, t1Thread1of1ForFork0_thidvar1, t1Thread1of1ForFork0_thidvar0, t1Thread1of1ForFork0_~arg.base, t1Thread1of1ForFork0_#in~arg.base, t1Thread1of1ForFork0_~arg.offset, t1Thread1of1ForFork0_#res.base, t1Thread1of1ForFork0_#res.offset, t1Thread1of1ForFork0_#in~arg.offset] {7093#true} is VALID [2022-02-20 20:06:57,324 INFO L290 TraceCheckUtils]: 30: Hoare triple {7093#true} [202] L721-1-->L721-2: Formula: (= (store |v_#memory_int_5| |v_ULTIMATE.start_main_~#id1~0#1.base_3| (store (select |v_#memory_int_5| |v_ULTIMATE.start_main_~#id1~0#1.base_3|) |v_ULTIMATE.start_main_~#id1~0#1.offset_3| |v_ULTIMATE.start_main_#t~pre4#1_3|)) |v_#memory_int_4|) InVars {#memory_int=|v_#memory_int_5|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_3|, ULTIMATE.start_main_~#id1~0#1.offset=|v_ULTIMATE.start_main_~#id1~0#1.offset_3|, ULTIMATE.start_main_~#id1~0#1.base=|v_ULTIMATE.start_main_~#id1~0#1.base_3|} OutVars{#memory_int=|v_#memory_int_4|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_3|, ULTIMATE.start_main_~#id1~0#1.offset=|v_ULTIMATE.start_main_~#id1~0#1.offset_3|, ULTIMATE.start_main_~#id1~0#1.base=|v_ULTIMATE.start_main_~#id1~0#1.base_3|} AuxVars[] AssignedVars[#memory_int] {7093#true} is VALID [2022-02-20 20:06:57,324 INFO L290 TraceCheckUtils]: 29: Hoare triple {7093#true} [158] L721-->L721-1: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] {7093#true} is VALID [2022-02-20 20:06:57,324 INFO L290 TraceCheckUtils]: 28: Hoare triple {7093#true} [174] L720-->L721: Formula: (= |v_ULTIMATE.start_main_#t~pre4#1_2| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre4#1] {7093#true} is VALID [2022-02-20 20:06:57,325 INFO L290 TraceCheckUtils]: 27: Hoare triple {7093#true} [163] L717-->L720: Formula: (= v_~j~0_2 1) InVars {} OutVars{~j~0=v_~j~0_2} AuxVars[] AssignedVars[~j~0] {7093#true} is VALID [2022-02-20 20:06:57,325 INFO L290 TraceCheckUtils]: 26: Hoare triple {7093#true} [161] L714-2-->L717: Formula: (= v_~i~0_2 1) InVars {} OutVars{~i~0=v_~i~0_2} AuxVars[] AssignedVars[~i~0] {7093#true} is VALID [2022-02-20 20:06:57,325 INFO L290 TraceCheckUtils]: 25: Hoare triple {7093#true} [167] L714-1-->L714-2: Formula: (and (= (select |v_#valid_7| |v_ULTIMATE.start_main_~#id2~0#1.base_2|) 0) (< |v_#StackHeapBarrier_3| |v_ULTIMATE.start_main_~#id2~0#1.base_2|) (not (= 0 |v_ULTIMATE.start_main_~#id2~0#1.base_2|)) (= (store |v_#length_6| |v_ULTIMATE.start_main_~#id2~0#1.base_2| 4) |v_#length_5|) (= |v_#valid_6| (store |v_#valid_7| |v_ULTIMATE.start_main_~#id2~0#1.base_2| 1)) (= |v_ULTIMATE.start_main_~#id2~0#1.offset_2| 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_3|, #length=|v_#length_6|, #valid=|v_#valid_7|} OutVars{ULTIMATE.start_main_~#id2~0#1.offset=|v_ULTIMATE.start_main_~#id2~0#1.offset_2|, #StackHeapBarrier=|v_#StackHeapBarrier_3|, #length=|v_#length_5|, ULTIMATE.start_main_~#id2~0#1.base=|v_ULTIMATE.start_main_~#id2~0#1.base_2|, #valid=|v_#valid_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#id2~0#1.offset, #valid, #length, ULTIMATE.start_main_~#id2~0#1.base] {7093#true} is VALID [2022-02-20 20:06:57,325 INFO L290 TraceCheckUtils]: 24: Hoare triple {7093#true} [139] L714-->L714-1: Formula: (and (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#id1~0#1.base_2|) (not (= 0 |v_ULTIMATE.start_main_~#id1~0#1.base_2|)) (= |v_#valid_4| (store |v_#valid_5| |v_ULTIMATE.start_main_~#id1~0#1.base_2| 1)) (= |v_#length_3| (store |v_#length_4| |v_ULTIMATE.start_main_~#id1~0#1.base_2| 4)) (= (select |v_#valid_5| |v_ULTIMATE.start_main_~#id1~0#1.base_2|) 0) (= |v_ULTIMATE.start_main_~#id1~0#1.offset_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_~#id1~0#1.offset=|v_ULTIMATE.start_main_~#id1~0#1.offset_2|, #valid=|v_#valid_4|, ULTIMATE.start_main_~#id1~0#1.base=|v_ULTIMATE.start_main_~#id1~0#1.base_2|} AuxVars[] AssignedVars[#valid, #length, ULTIMATE.start_main_~#id1~0#1.offset, ULTIMATE.start_main_~#id1~0#1.base] {7093#true} is VALID [2022-02-20 20:06:57,325 INFO L290 TraceCheckUtils]: 23: Hoare triple {7093#true} [154] L713-1-->L714: 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] {7093#true} is VALID [2022-02-20 20:06:57,326 INFO L290 TraceCheckUtils]: 22: Hoare triple {7093#true} [181] L713-->L713-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] {7093#true} is VALID [2022-02-20 20:06:57,326 INFO L290 TraceCheckUtils]: 21: Hoare triple {7093#true} [153] L-1-7-->L713: Formula: true InVars {} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_1|, ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_1|, ULTIMATE.start_main_~#id2~0#1.offset=|v_ULTIMATE.start_main_~#id2~0#1.offset_1|, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_1|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_1|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_1|, ULTIMATE.start_main_~#id1~0#1.offset=|v_ULTIMATE.start_main_~#id1~0#1.offset_1|, ULTIMATE.start_main_~#id1~0#1.base=|v_ULTIMATE.start_main_~#id1~0#1.base_1|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_1|, ULTIMATE.start_main_#t~nondet5#1=|v_ULTIMATE.start_main_#t~nondet5#1_1|, ULTIMATE.start_main_#t~nondet7#1=|v_ULTIMATE.start_main_#t~nondet7#1_1|, ULTIMATE.start_main_~correct~0#1=|v_ULTIMATE.start_main_~correct~0#1_1|, ULTIMATE.start_main_~#id2~0#1.base=|v_ULTIMATE.start_main_~#id2~0#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#t~ret8#1, ULTIMATE.start_main_~#id2~0#1.offset, ULTIMATE.start_main_#t~pre6#1, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_#t~pre4#1, ULTIMATE.start_main_~#id1~0#1.offset, ULTIMATE.start_main_~#id1~0#1.base, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_#t~nondet5#1, ULTIMATE.start_main_#t~nondet7#1, ULTIMATE.start_main_~correct~0#1, ULTIMATE.start_main_~#id2~0#1.base] {7093#true} is VALID [2022-02-20 20:06:57,326 INFO L290 TraceCheckUtils]: 20: Hoare triple {7093#true} [192] 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] {7093#true} is VALID [2022-02-20 20:06:57,326 INFO L290 TraceCheckUtils]: 19: Hoare triple {7093#true} [157] 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] {7093#true} is VALID [2022-02-20 20:06:57,326 INFO L290 TraceCheckUtils]: 18: Hoare triple {7093#true} [193] L-1-4-->L-1-5: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7093#true} is VALID [2022-02-20 20:06:57,327 INFO L290 TraceCheckUtils]: 17: Hoare triple {7093#true} [212] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7093#true} is VALID [2022-02-20 20:06:57,327 INFO L290 TraceCheckUtils]: 16: Hoare triple {7093#true} [205] L704-->L-1-3: Formula: (= v_~x~0_1 0) InVars {} OutVars{~x~0=v_~x~0_1} AuxVars[] AssignedVars[~x~0] {7093#true} is VALID [2022-02-20 20:06:57,327 INFO L290 TraceCheckUtils]: 15: Hoare triple {7093#true} [170] L703-2-->L704: Formula: (= v_~next~0_1 0) InVars {} OutVars{~next~0=v_~next~0_1} AuxVars[] AssignedVars[~next~0] {7093#true} is VALID [2022-02-20 20:06:57,327 INFO L290 TraceCheckUtils]: 14: Hoare triple {7093#true} [197] L703-1-->L703-2: Formula: (= v_~prev~0_1 0) InVars {} OutVars{~prev~0=v_~prev~0_1} AuxVars[] AssignedVars[~prev~0] {7093#true} is VALID [2022-02-20 20:06:57,327 INFO L290 TraceCheckUtils]: 13: Hoare triple {7093#true} [145] L703-->L703-1: Formula: (= v_~cur~0_1 1) InVars {} OutVars{~cur~0=v_~cur~0_1} AuxVars[] AssignedVars[~cur~0] {7093#true} is VALID [2022-02-20 20:06:57,327 INFO L290 TraceCheckUtils]: 12: Hoare triple {7093#true} [169] L686-1-->L703: Formula: (= v_~q~0_1 0) InVars {} OutVars{~q~0=v_~q~0_1} AuxVars[] AssignedVars[~q~0] {7093#true} is VALID [2022-02-20 20:06:57,328 INFO L290 TraceCheckUtils]: 11: Hoare triple {7093#true} [221] L686-->L686-1: Formula: (= v_~p~0_1 0) InVars {} OutVars{~p~0=v_~p~0_1} AuxVars[] AssignedVars[~p~0] {7093#true} is VALID [2022-02-20 20:06:57,328 INFO L290 TraceCheckUtils]: 10: Hoare triple {7093#true} [148] L683-->L686: Formula: (= v_~j~0_1 0) InVars {} OutVars{~j~0=v_~j~0_1} AuxVars[] AssignedVars[~j~0] {7093#true} is VALID [2022-02-20 20:06:57,328 INFO L290 TraceCheckUtils]: 9: Hoare triple {7093#true} [211] L19-5-->L683: Formula: (= v_~i~0_1 0) InVars {} OutVars{~i~0=v_~i~0_1} AuxVars[] AssignedVars[~i~0] {7093#true} is VALID [2022-02-20 20:06:57,328 INFO L290 TraceCheckUtils]: 8: Hoare triple {7093#true} [143] L19-4-->L19-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[] {7093#true} is VALID [2022-02-20 20:06:57,328 INFO L290 TraceCheckUtils]: 7: Hoare triple {7093#true} [184] L19-3-->L19-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[] {7093#true} is VALID [2022-02-20 20:06:57,329 INFO L290 TraceCheckUtils]: 6: Hoare triple {7093#true} [186] L19-2-->L19-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[] {7093#true} is VALID [2022-02-20 20:06:57,329 INFO L290 TraceCheckUtils]: 5: Hoare triple {7093#true} [164] L19-1-->L19-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[] {7093#true} is VALID [2022-02-20 20:06:57,329 INFO L290 TraceCheckUtils]: 4: Hoare triple {7093#true} [176] L19-->L19-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[] {7093#true} is VALID [2022-02-20 20:06:57,329 INFO L290 TraceCheckUtils]: 3: Hoare triple {7093#true} [208] L-1-2-->L19: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {7093#true} is VALID [2022-02-20 20:06:57,329 INFO L290 TraceCheckUtils]: 2: Hoare triple {7093#true} [207] 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[] {7093#true} is VALID [2022-02-20 20:06:57,329 INFO L290 TraceCheckUtils]: 1: Hoare triple {7093#true} [189] 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] {7093#true} is VALID [2022-02-20 20:06:57,330 INFO L290 TraceCheckUtils]: 0: Hoare triple {7093#true} [200] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7093#true} is VALID [2022-02-20 20:06:57,330 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:06:57,330 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2009136614] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 20:06:57,330 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 20:06:57,331 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5, 5] total 10 [2022-02-20 20:06:57,331 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [986122551] [2022-02-20 20:06:57,331 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 20:06:57,332 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 7.6) internal successors, (76), 10 states have internal predecessors, (76), 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 60 [2022-02-20 20:06:57,332 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 20:06:57,332 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 7.6) internal successors, (76), 10 states have internal predecessors, (76), 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:06:57,386 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 76 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:06:57,387 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-02-20 20:06:57,387 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 20:06:57,388 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-02-20 20:06:57,388 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=30, Invalid=60, Unknown=0, NotChecked=0, Total=90 [2022-02-20 20:06:57,391 INFO L499 CegarLoopForPetriNet]: Number of universal loopers: 81 out of 96 [2022-02-20 20:06:57,392 INFO L92 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 95 places, 90 transitions, 194 flow. Second operand has 10 states, 10 states have (on average 83.0) internal successors, (830), 10 states have internal predecessors, (830), 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:06:57,392 INFO L101 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-02-20 20:06:57,392 INFO L102 encePairwiseOnDemand]: Number of universal subtrahend loopers: 81 of 96 [2022-02-20 20:06:57,393 INFO L74 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-02-20 20:06:57,506 INFO L129 PetriNetUnfolder]: 3/104 cut-off events. [2022-02-20 20:06:57,506 INFO L130 PetriNetUnfolder]: For 3/3 co-relation queries the response was YES. [2022-02-20 20:06:57,507 INFO L84 FinitePrefix]: Finished finitePrefix Result has 138 conditions, 104 events. 3/104 cut-off events. For 3/3 co-relation queries the response was YES. Maximal size of possible extension queue 3. Compared 51 event pairs, 0 based on Foata normal form. 2/103 useless extension candidates. Maximal degree in co-relation 133. Up to 6 conditions per place. [2022-02-20 20:06:57,507 INFO L132 encePairwiseOnDemand]: 90/96 looper letters, 10 selfloop transitions, 9 changer transitions 0/98 dead transitions. [2022-02-20 20:06:57,507 INFO L138 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 103 places, 98 transitions, 250 flow [2022-02-20 20:06:57,507 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 20:06:57,508 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 9 states. [2022-02-20 20:06:57,516 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 750 transitions. [2022-02-20 20:06:57,517 INFO L544 CegarLoopForPetriNet]: DFA transition density 0.8680555555555556 [2022-02-20 20:06:57,517 INFO L72 ComplementDD]: Start complementDD. Operand 9 states and 750 transitions. [2022-02-20 20:06:57,517 INFO L73 IsDeterministic]: Start isDeterministic. Operand 9 states and 750 transitions. [2022-02-20 20:06:57,517 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-02-20 20:06:57,517 INFO L117 ReachableStatesCopy]: Start reachableStatesCopy. Operand 9 states and 750 transitions. [2022-02-20 20:06:57,519 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends has 10 states, 9 states have (on average 83.33333333333333) internal successors, (750), 9 states have internal predecessors, (750), 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:06:57,521 INFO L131 ReachableStatesCopy]: Finished reachableStatesCopy Result has 10 states, 10 states have (on average 96.0) internal successors, (960), 10 states have internal predecessors, (960), 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:06:57,522 INFO L81 ComplementDD]: Finished complementDD. Result has 10 states, 10 states have (on average 96.0) internal successors, (960), 10 states have internal predecessors, (960), 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:06:57,522 INFO L186 Difference]: Start difference. First operand has 95 places, 90 transitions, 194 flow. Second operand 9 states and 750 transitions. [2022-02-20 20:06:57,522 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 103 places, 98 transitions, 250 flow [2022-02-20 20:06:57,523 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 102 places, 98 transitions, 248 flow, removed 0 selfloop flow, removed 1 redundant places. [2022-02-20 20:06:57,525 INFO L242 Difference]: Finished difference. Result has 105 places, 96 transitions, 242 flow [2022-02-20 20:06:57,525 INFO L317 CegarLoopForPetriNet]: {PETRI_ALPHABET=96, PETRI_DIFFERENCE_MINUEND_FLOW=192, PETRI_DIFFERENCE_MINUEND_PLACES=94, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=90, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=5, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=84, PETRI_DIFFERENCE_SUBTRAHEND_STATES=9, PETRI_FLOW=242, PETRI_PLACES=105, PETRI_TRANSITIONS=96} [2022-02-20 20:06:57,525 INFO L334 CegarLoopForPetriNet]: 94 programPoint places, 11 predicate places. [2022-02-20 20:06:57,525 INFO L111 iNet2FiniteAutomaton]: Start petriNet2FiniteAutomaton. Operand has 105 places, 96 transitions, 242 flow [2022-02-20 20:06:57,646 INFO L133 iNet2FiniteAutomaton]: Finished petriNet2FiniteAutomaton. Result has 4692 states, 4690 states have (on average 2.9748400852878465) internal successors, (13952), 4691 states have internal predecessors, (13952), 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:06:57,661 INFO L78 Accepts]: Start accepts. Automaton has has 4692 states, 4690 states have (on average 2.9748400852878465) internal successors, (13952), 4691 states have internal predecessors, (13952), 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 60 [2022-02-20 20:06:57,662 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 20:06:57,662 INFO L470 AbstractCegarLoop]: Abstraction has has 105 places, 96 transitions, 242 flow [2022-02-20 20:06:57,662 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 83.0) internal successors, (830), 10 states have internal predecessors, (830), 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:06:57,663 INFO L246 CegarLoopForPetriNet]: Found error trace [2022-02-20 20:06:57,663 INFO L254 CegarLoopForPetriNet]: trace histogram [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, 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:06:57,691 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:06:57,879 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 20:06:57,879 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATION, ULTIMATE.startErr1INUSE_VIOLATION] === [2022-02-20 20:06:57,880 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:06:57,880 INFO L85 PathProgramCache]: Analyzing trace with hash 1666707666, now seen corresponding path program 2 times [2022-02-20 20:06:57,880 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:06:57,880 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2002059061] [2022-02-20 20:06:57,880 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:06:57,881 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:06:57,924 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:06:58,015 INFO L290 TraceCheckUtils]: 0: Hoare triple {12162#true} [200] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12162#true} is VALID [2022-02-20 20:06:58,015 INFO L290 TraceCheckUtils]: 1: Hoare triple {12162#true} [189] 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] {12162#true} is VALID [2022-02-20 20:06:58,015 INFO L290 TraceCheckUtils]: 2: Hoare triple {12162#true} [207] 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[] {12162#true} is VALID [2022-02-20 20:06:58,016 INFO L290 TraceCheckUtils]: 3: Hoare triple {12162#true} [208] L-1-2-->L19: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {12162#true} is VALID [2022-02-20 20:06:58,016 INFO L290 TraceCheckUtils]: 4: Hoare triple {12162#true} [176] L19-->L19-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[] {12162#true} is VALID [2022-02-20 20:06:58,016 INFO L290 TraceCheckUtils]: 5: Hoare triple {12162#true} [164] L19-1-->L19-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[] {12162#true} is VALID [2022-02-20 20:06:58,016 INFO L290 TraceCheckUtils]: 6: Hoare triple {12162#true} [186] L19-2-->L19-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[] {12162#true} is VALID [2022-02-20 20:06:58,016 INFO L290 TraceCheckUtils]: 7: Hoare triple {12162#true} [184] L19-3-->L19-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[] {12162#true} is VALID [2022-02-20 20:06:58,016 INFO L290 TraceCheckUtils]: 8: Hoare triple {12162#true} [143] L19-4-->L19-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[] {12162#true} is VALID [2022-02-20 20:06:58,017 INFO L290 TraceCheckUtils]: 9: Hoare triple {12162#true} [211] L19-5-->L683: Formula: (= v_~i~0_1 0) InVars {} OutVars{~i~0=v_~i~0_1} AuxVars[] AssignedVars[~i~0] {12162#true} is VALID [2022-02-20 20:06:58,017 INFO L290 TraceCheckUtils]: 10: Hoare triple {12162#true} [148] L683-->L686: Formula: (= v_~j~0_1 0) InVars {} OutVars{~j~0=v_~j~0_1} AuxVars[] AssignedVars[~j~0] {12162#true} is VALID [2022-02-20 20:06:58,017 INFO L290 TraceCheckUtils]: 11: Hoare triple {12162#true} [221] L686-->L686-1: Formula: (= v_~p~0_1 0) InVars {} OutVars{~p~0=v_~p~0_1} AuxVars[] AssignedVars[~p~0] {12162#true} is VALID [2022-02-20 20:06:58,017 INFO L290 TraceCheckUtils]: 12: Hoare triple {12162#true} [169] L686-1-->L703: Formula: (= v_~q~0_1 0) InVars {} OutVars{~q~0=v_~q~0_1} AuxVars[] AssignedVars[~q~0] {12162#true} is VALID [2022-02-20 20:06:58,017 INFO L290 TraceCheckUtils]: 13: Hoare triple {12162#true} [145] L703-->L703-1: Formula: (= v_~cur~0_1 1) InVars {} OutVars{~cur~0=v_~cur~0_1} AuxVars[] AssignedVars[~cur~0] {12162#true} is VALID [2022-02-20 20:06:58,017 INFO L290 TraceCheckUtils]: 14: Hoare triple {12162#true} [197] L703-1-->L703-2: Formula: (= v_~prev~0_1 0) InVars {} OutVars{~prev~0=v_~prev~0_1} AuxVars[] AssignedVars[~prev~0] {12162#true} is VALID [2022-02-20 20:06:58,017 INFO L290 TraceCheckUtils]: 15: Hoare triple {12162#true} [170] L703-2-->L704: Formula: (= v_~next~0_1 0) InVars {} OutVars{~next~0=v_~next~0_1} AuxVars[] AssignedVars[~next~0] {12162#true} is VALID [2022-02-20 20:06:58,018 INFO L290 TraceCheckUtils]: 16: Hoare triple {12162#true} [205] L704-->L-1-3: Formula: (= v_~x~0_1 0) InVars {} OutVars{~x~0=v_~x~0_1} AuxVars[] AssignedVars[~x~0] {12162#true} is VALID [2022-02-20 20:06:58,018 INFO L290 TraceCheckUtils]: 17: Hoare triple {12162#true} [212] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12162#true} is VALID [2022-02-20 20:06:58,018 INFO L290 TraceCheckUtils]: 18: Hoare triple {12162#true} [193] L-1-4-->L-1-5: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12162#true} is VALID [2022-02-20 20:06:58,018 INFO L290 TraceCheckUtils]: 19: Hoare triple {12162#true} [157] 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] {12162#true} is VALID [2022-02-20 20:06:58,018 INFO L290 TraceCheckUtils]: 20: Hoare triple {12162#true} [192] 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] {12162#true} is VALID [2022-02-20 20:06:58,018 INFO L290 TraceCheckUtils]: 21: Hoare triple {12162#true} [153] L-1-7-->L713: Formula: true InVars {} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_1|, ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_1|, ULTIMATE.start_main_~#id2~0#1.offset=|v_ULTIMATE.start_main_~#id2~0#1.offset_1|, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_1|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_1|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_1|, ULTIMATE.start_main_~#id1~0#1.offset=|v_ULTIMATE.start_main_~#id1~0#1.offset_1|, ULTIMATE.start_main_~#id1~0#1.base=|v_ULTIMATE.start_main_~#id1~0#1.base_1|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_1|, ULTIMATE.start_main_#t~nondet5#1=|v_ULTIMATE.start_main_#t~nondet5#1_1|, ULTIMATE.start_main_#t~nondet7#1=|v_ULTIMATE.start_main_#t~nondet7#1_1|, ULTIMATE.start_main_~correct~0#1=|v_ULTIMATE.start_main_~correct~0#1_1|, ULTIMATE.start_main_~#id2~0#1.base=|v_ULTIMATE.start_main_~#id2~0#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#t~ret8#1, ULTIMATE.start_main_~#id2~0#1.offset, ULTIMATE.start_main_#t~pre6#1, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_#t~pre4#1, ULTIMATE.start_main_~#id1~0#1.offset, ULTIMATE.start_main_~#id1~0#1.base, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_#t~nondet5#1, ULTIMATE.start_main_#t~nondet7#1, ULTIMATE.start_main_~correct~0#1, ULTIMATE.start_main_~#id2~0#1.base] {12162#true} is VALID [2022-02-20 20:06:58,018 INFO L290 TraceCheckUtils]: 22: Hoare triple {12162#true} [181] L713-->L713-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] {12162#true} is VALID [2022-02-20 20:06:58,019 INFO L290 TraceCheckUtils]: 23: Hoare triple {12162#true} [154] L713-1-->L714: 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] {12162#true} is VALID [2022-02-20 20:06:58,019 INFO L290 TraceCheckUtils]: 24: Hoare triple {12162#true} [139] L714-->L714-1: Formula: (and (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#id1~0#1.base_2|) (not (= 0 |v_ULTIMATE.start_main_~#id1~0#1.base_2|)) (= |v_#valid_4| (store |v_#valid_5| |v_ULTIMATE.start_main_~#id1~0#1.base_2| 1)) (= |v_#length_3| (store |v_#length_4| |v_ULTIMATE.start_main_~#id1~0#1.base_2| 4)) (= (select |v_#valid_5| |v_ULTIMATE.start_main_~#id1~0#1.base_2|) 0) (= |v_ULTIMATE.start_main_~#id1~0#1.offset_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_~#id1~0#1.offset=|v_ULTIMATE.start_main_~#id1~0#1.offset_2|, #valid=|v_#valid_4|, ULTIMATE.start_main_~#id1~0#1.base=|v_ULTIMATE.start_main_~#id1~0#1.base_2|} AuxVars[] AssignedVars[#valid, #length, ULTIMATE.start_main_~#id1~0#1.offset, ULTIMATE.start_main_~#id1~0#1.base] {12162#true} is VALID [2022-02-20 20:06:58,019 INFO L290 TraceCheckUtils]: 25: Hoare triple {12162#true} [167] L714-1-->L714-2: Formula: (and (= (select |v_#valid_7| |v_ULTIMATE.start_main_~#id2~0#1.base_2|) 0) (< |v_#StackHeapBarrier_3| |v_ULTIMATE.start_main_~#id2~0#1.base_2|) (not (= 0 |v_ULTIMATE.start_main_~#id2~0#1.base_2|)) (= (store |v_#length_6| |v_ULTIMATE.start_main_~#id2~0#1.base_2| 4) |v_#length_5|) (= |v_#valid_6| (store |v_#valid_7| |v_ULTIMATE.start_main_~#id2~0#1.base_2| 1)) (= |v_ULTIMATE.start_main_~#id2~0#1.offset_2| 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_3|, #length=|v_#length_6|, #valid=|v_#valid_7|} OutVars{ULTIMATE.start_main_~#id2~0#1.offset=|v_ULTIMATE.start_main_~#id2~0#1.offset_2|, #StackHeapBarrier=|v_#StackHeapBarrier_3|, #length=|v_#length_5|, ULTIMATE.start_main_~#id2~0#1.base=|v_ULTIMATE.start_main_~#id2~0#1.base_2|, #valid=|v_#valid_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#id2~0#1.offset, #valid, #length, ULTIMATE.start_main_~#id2~0#1.base] {12162#true} is VALID [2022-02-20 20:06:58,019 INFO L290 TraceCheckUtils]: 26: Hoare triple {12162#true} [161] L714-2-->L717: Formula: (= v_~i~0_2 1) InVars {} OutVars{~i~0=v_~i~0_2} AuxVars[] AssignedVars[~i~0] {12162#true} is VALID [2022-02-20 20:06:58,019 INFO L290 TraceCheckUtils]: 27: Hoare triple {12162#true} [163] L717-->L720: Formula: (= v_~j~0_2 1) InVars {} OutVars{~j~0=v_~j~0_2} AuxVars[] AssignedVars[~j~0] {12162#true} is VALID [2022-02-20 20:06:58,019 INFO L290 TraceCheckUtils]: 28: Hoare triple {12162#true} [174] L720-->L721: Formula: (= |v_ULTIMATE.start_main_#t~pre4#1_2| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre4#1] {12162#true} is VALID [2022-02-20 20:06:58,020 INFO L290 TraceCheckUtils]: 29: Hoare triple {12162#true} [158] L721-->L721-1: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] {12162#true} is VALID [2022-02-20 20:06:58,020 INFO L290 TraceCheckUtils]: 30: Hoare triple {12162#true} [202] L721-1-->L721-2: Formula: (= (store |v_#memory_int_5| |v_ULTIMATE.start_main_~#id1~0#1.base_3| (store (select |v_#memory_int_5| |v_ULTIMATE.start_main_~#id1~0#1.base_3|) |v_ULTIMATE.start_main_~#id1~0#1.offset_3| |v_ULTIMATE.start_main_#t~pre4#1_3|)) |v_#memory_int_4|) InVars {#memory_int=|v_#memory_int_5|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_3|, ULTIMATE.start_main_~#id1~0#1.offset=|v_ULTIMATE.start_main_~#id1~0#1.offset_3|, ULTIMATE.start_main_~#id1~0#1.base=|v_ULTIMATE.start_main_~#id1~0#1.base_3|} OutVars{#memory_int=|v_#memory_int_4|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_3|, ULTIMATE.start_main_~#id1~0#1.offset=|v_ULTIMATE.start_main_~#id1~0#1.offset_3|, ULTIMATE.start_main_~#id1~0#1.base=|v_ULTIMATE.start_main_~#id1~0#1.base_3|} AuxVars[] AssignedVars[#memory_int] {12162#true} is VALID [2022-02-20 20:06:58,020 INFO L290 TraceCheckUtils]: 31: Hoare triple {12162#true} [246] L721-2-->t1ENTRY: Formula: (and (= |v_ULTIMATE.start_main_#t~pre4#1_6| v_t1Thread1of1ForFork0_thidvar0_2) (= v_t1Thread1of1ForFork0_thidvar1_2 0) (= |v_t1Thread1of1ForFork0_#in~arg.base_4| 0) (= |v_t1Thread1of1ForFork0_#in~arg.offset_4| 0)) InVars {ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_6|} OutVars{t1Thread1of1ForFork0_#t~post1=|v_t1Thread1of1ForFork0_#t~post1_8|, t1Thread1of1ForFork0_thidvar1=v_t1Thread1of1ForFork0_thidvar1_2, t1Thread1of1ForFork0_thidvar0=v_t1Thread1of1ForFork0_thidvar0_2, t1Thread1of1ForFork0_~arg.base=v_t1Thread1of1ForFork0_~arg.base_4, t1Thread1of1ForFork0_#in~arg.base=|v_t1Thread1of1ForFork0_#in~arg.base_4|, t1Thread1of1ForFork0_~arg.offset=v_t1Thread1of1ForFork0_~arg.offset_4, t1Thread1of1ForFork0_#res.base=|v_t1Thread1of1ForFork0_#res.base_4|, t1Thread1of1ForFork0_#res.offset=|v_t1Thread1of1ForFork0_#res.offset_4|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_6|, t1Thread1of1ForFork0_#in~arg.offset=|v_t1Thread1of1ForFork0_#in~arg.offset_4|} AuxVars[] AssignedVars[t1Thread1of1ForFork0_#t~post1, t1Thread1of1ForFork0_thidvar1, t1Thread1of1ForFork0_thidvar0, t1Thread1of1ForFork0_~arg.base, t1Thread1of1ForFork0_#in~arg.base, t1Thread1of1ForFork0_~arg.offset, t1Thread1of1ForFork0_#res.base, t1Thread1of1ForFork0_#res.offset, t1Thread1of1ForFork0_#in~arg.offset] {12162#true} is VALID [2022-02-20 20:06:58,020 INFO L290 TraceCheckUtils]: 32: Hoare triple {12162#true} [201] L721-3-->L721-4: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre4#1] {12162#true} is VALID [2022-02-20 20:06:58,020 INFO L290 TraceCheckUtils]: 33: Hoare triple {12162#true} [216] L721-4-->L722: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet5#1=|v_ULTIMATE.start_main_#t~nondet5#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet5#1] {12162#true} is VALID [2022-02-20 20:06:58,020 INFO L290 TraceCheckUtils]: 34: Hoare triple {12162#true} [213] L722-->L722-1: Formula: (= |v_ULTIMATE.start_main_#t~pre6#1_2| |v_#pthreadsForks_4|) InVars {#pthreadsForks=|v_#pthreadsForks_4|} OutVars{#pthreadsForks=|v_#pthreadsForks_4|, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre6#1] {12162#true} is VALID [2022-02-20 20:06:58,020 INFO L290 TraceCheckUtils]: 35: Hoare triple {12162#true} [187] L722-1-->L722-2: Formula: (= (+ 1 |v_#pthreadsForks_6|) |v_#pthreadsForks_5|) InVars {#pthreadsForks=|v_#pthreadsForks_6|} OutVars{#pthreadsForks=|v_#pthreadsForks_5|} AuxVars[] AssignedVars[#pthreadsForks] {12162#true} is VALID [2022-02-20 20:06:58,021 INFO L290 TraceCheckUtils]: 36: Hoare triple {12162#true} [219] L722-2-->L722-3: Formula: (= (store |v_#memory_int_7| |v_ULTIMATE.start_main_~#id2~0#1.base_3| (store (select |v_#memory_int_7| |v_ULTIMATE.start_main_~#id2~0#1.base_3|) |v_ULTIMATE.start_main_~#id2~0#1.offset_3| |v_ULTIMATE.start_main_#t~pre6#1_3|)) |v_#memory_int_6|) InVars {#memory_int=|v_#memory_int_7|, ULTIMATE.start_main_~#id2~0#1.offset=|v_ULTIMATE.start_main_~#id2~0#1.offset_3|, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_3|, ULTIMATE.start_main_~#id2~0#1.base=|v_ULTIMATE.start_main_~#id2~0#1.base_3|} OutVars{#memory_int=|v_#memory_int_6|, ULTIMATE.start_main_~#id2~0#1.offset=|v_ULTIMATE.start_main_~#id2~0#1.offset_3|, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_3|, ULTIMATE.start_main_~#id2~0#1.base=|v_ULTIMATE.start_main_~#id2~0#1.base_3|} AuxVars[] AssignedVars[#memory_int] {12162#true} is VALID [2022-02-20 20:06:58,021 INFO L290 TraceCheckUtils]: 37: Hoare triple {12162#true} [248] L722-3-->t2ENTRY: Formula: (and (= |v_t2Thread1of1ForFork1_#in~arg.base_4| 0) (= |v_ULTIMATE.start_main_#t~pre6#1_6| v_t2Thread1of1ForFork1_thidvar0_2) (= |v_t2Thread1of1ForFork1_#in~arg.offset_4| 0) (= v_t2Thread1of1ForFork1_thidvar1_2 0) (= v_t2Thread1of1ForFork1_thidvar2_2 0)) InVars {ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_6|} OutVars{t2Thread1of1ForFork1_#in~arg.base=|v_t2Thread1of1ForFork1_#in~arg.base_4|, t2Thread1of1ForFork1_thidvar1=v_t2Thread1of1ForFork1_thidvar1_2, t2Thread1of1ForFork1_~arg.base=v_t2Thread1of1ForFork1_~arg.base_4, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_6|, t2Thread1of1ForFork1_thidvar0=v_t2Thread1of1ForFork1_thidvar0_2, t2Thread1of1ForFork1_~arg.offset=v_t2Thread1of1ForFork1_~arg.offset_4, t2Thread1of1ForFork1_#res.base=|v_t2Thread1of1ForFork1_#res.base_4|, t2Thread1of1ForFork1_#in~arg.offset=|v_t2Thread1of1ForFork1_#in~arg.offset_4|, t2Thread1of1ForFork1_#t~post2=|v_t2Thread1of1ForFork1_#t~post2_8|, t2Thread1of1ForFork1_#res.offset=|v_t2Thread1of1ForFork1_#res.offset_4|, t2Thread1of1ForFork1_thidvar2=v_t2Thread1of1ForFork1_thidvar2_2} AuxVars[] AssignedVars[t2Thread1of1ForFork1_#in~arg.base, t2Thread1of1ForFork1_thidvar1, t2Thread1of1ForFork1_~arg.base, t2Thread1of1ForFork1_thidvar0, t2Thread1of1ForFork1_~arg.offset, t2Thread1of1ForFork1_#res.base, t2Thread1of1ForFork1_#in~arg.offset, t2Thread1of1ForFork1_#t~post2, t2Thread1of1ForFork1_#res.offset, t2Thread1of1ForFork1_thidvar2] {12162#true} is VALID [2022-02-20 20:06:58,021 INFO L290 TraceCheckUtils]: 38: Hoare triple {12162#true} [210] L722-4-->L722-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre6#1] {12162#true} is VALID [2022-02-20 20:06:58,021 INFO L290 TraceCheckUtils]: 39: Hoare triple {12162#true} [204] L722-5-->L723: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet7#1=|v_ULTIMATE.start_main_#t~nondet7#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet7#1] {12162#true} is VALID [2022-02-20 20:06:58,021 INFO L290 TraceCheckUtils]: 40: Hoare triple {12162#true} [217] L723-->L723-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12162#true} is VALID [2022-02-20 20:06:58,021 INFO L290 TraceCheckUtils]: 41: Hoare triple {12162#true} [199] L723-1-->L723-2: Formula: true InVars {} OutVars{ULTIMATE.start_fib_#res#1=|v_ULTIMATE.start_fib_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_fib_#res#1] {12162#true} is VALID [2022-02-20 20:06:58,021 INFO L290 TraceCheckUtils]: 42: Hoare triple {12162#true} [194] L723-2-->L706: Formula: true InVars {} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_fib_#t~post3#1] {12162#true} is VALID [2022-02-20 20:06:58,022 INFO L290 TraceCheckUtils]: 43: Hoare triple {12162#true} [191] L706-->L706-6: Formula: (= v_~x~0_2 0) InVars {} OutVars{~x~0=v_~x~0_2} AuxVars[] AssignedVars[~x~0] {12164#(= ~x~0 0)} is VALID [2022-02-20 20:06:58,022 INFO L290 TraceCheckUtils]: 44: Hoare triple {12164#(= ~x~0 0)} [132] L706-6-->L707: Formula: (< v_~x~0_4 22) InVars {~x~0=v_~x~0_4} OutVars{~x~0=v_~x~0_4} AuxVars[] AssignedVars[] {12164#(= ~x~0 0)} is VALID [2022-02-20 20:06:58,023 INFO L290 TraceCheckUtils]: 45: Hoare triple {12164#(= ~x~0 0)} [142] L707-->L708: Formula: (= v_~next~0_2 (+ v_~prev~0_2 v_~cur~0_2)) InVars {~cur~0=v_~cur~0_2, ~prev~0=v_~prev~0_2} OutVars{~next~0=v_~next~0_2, ~cur~0=v_~cur~0_2, ~prev~0=v_~prev~0_2} AuxVars[] AssignedVars[~next~0] {12164#(= ~x~0 0)} is VALID [2022-02-20 20:06:58,023 INFO L290 TraceCheckUtils]: 46: Hoare triple {12164#(= ~x~0 0)} [147] L708-->L709: Formula: (= v_~prev~0_3 v_~cur~0_3) InVars {~cur~0=v_~cur~0_3} OutVars{~cur~0=v_~cur~0_3, ~prev~0=v_~prev~0_3} AuxVars[] AssignedVars[~prev~0] {12164#(= ~x~0 0)} is VALID [2022-02-20 20:06:58,023 INFO L290 TraceCheckUtils]: 47: Hoare triple {12164#(= ~x~0 0)} [195] L709-->L706-3: Formula: (= v_~next~0_3 v_~cur~0_4) InVars {~next~0=v_~next~0_3} OutVars{~next~0=v_~next~0_3, ~cur~0=v_~cur~0_4} AuxVars[] AssignedVars[~cur~0] {12164#(= ~x~0 0)} is VALID [2022-02-20 20:06:58,024 INFO L290 TraceCheckUtils]: 48: Hoare triple {12164#(= ~x~0 0)} [196] L706-3-->L706-4: Formula: (= |v_ULTIMATE.start_fib_#t~post3#1_2| v_~x~0_5) InVars {~x~0=v_~x~0_5} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_2|, ~x~0=v_~x~0_5} AuxVars[] AssignedVars[ULTIMATE.start_fib_#t~post3#1] {12165#(= |ULTIMATE.start_fib_#t~post3#1| 0)} is VALID [2022-02-20 20:06:58,024 INFO L290 TraceCheckUtils]: 49: Hoare triple {12165#(= |ULTIMATE.start_fib_#t~post3#1| 0)} [136] L706-4-->L706-5: Formula: (= (+ |v_ULTIMATE.start_fib_#t~post3#1_3| 1) v_~x~0_6) InVars {ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_3|} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_3|, ~x~0=v_~x~0_6} AuxVars[] AssignedVars[~x~0] {12166#(<= ~x~0 1)} is VALID [2022-02-20 20:06:58,025 INFO L290 TraceCheckUtils]: 50: Hoare triple {12166#(<= ~x~0 1)} [135] L706-5-->L706-6: Formula: true InVars {} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_fib_#t~post3#1] {12166#(<= ~x~0 1)} is VALID [2022-02-20 20:06:58,025 INFO L290 TraceCheckUtils]: 51: Hoare triple {12166#(<= ~x~0 1)} [132] L706-6-->L707: Formula: (< v_~x~0_4 22) InVars {~x~0=v_~x~0_4} OutVars{~x~0=v_~x~0_4} AuxVars[] AssignedVars[] {12166#(<= ~x~0 1)} is VALID [2022-02-20 20:06:58,025 INFO L290 TraceCheckUtils]: 52: Hoare triple {12166#(<= ~x~0 1)} [142] L707-->L708: Formula: (= v_~next~0_2 (+ v_~prev~0_2 v_~cur~0_2)) InVars {~cur~0=v_~cur~0_2, ~prev~0=v_~prev~0_2} OutVars{~next~0=v_~next~0_2, ~cur~0=v_~cur~0_2, ~prev~0=v_~prev~0_2} AuxVars[] AssignedVars[~next~0] {12166#(<= ~x~0 1)} is VALID [2022-02-20 20:06:58,026 INFO L290 TraceCheckUtils]: 53: Hoare triple {12166#(<= ~x~0 1)} [147] L708-->L709: Formula: (= v_~prev~0_3 v_~cur~0_3) InVars {~cur~0=v_~cur~0_3} OutVars{~cur~0=v_~cur~0_3, ~prev~0=v_~prev~0_3} AuxVars[] AssignedVars[~prev~0] {12166#(<= ~x~0 1)} is VALID [2022-02-20 20:06:58,026 INFO L290 TraceCheckUtils]: 54: Hoare triple {12166#(<= ~x~0 1)} [195] L709-->L706-3: Formula: (= v_~next~0_3 v_~cur~0_4) InVars {~next~0=v_~next~0_3} OutVars{~next~0=v_~next~0_3, ~cur~0=v_~cur~0_4} AuxVars[] AssignedVars[~cur~0] {12166#(<= ~x~0 1)} is VALID [2022-02-20 20:06:58,026 INFO L290 TraceCheckUtils]: 55: Hoare triple {12166#(<= ~x~0 1)} [196] L706-3-->L706-4: Formula: (= |v_ULTIMATE.start_fib_#t~post3#1_2| v_~x~0_5) InVars {~x~0=v_~x~0_5} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_2|, ~x~0=v_~x~0_5} AuxVars[] AssignedVars[ULTIMATE.start_fib_#t~post3#1] {12167#(<= |ULTIMATE.start_fib_#t~post3#1| 1)} is VALID [2022-02-20 20:06:58,027 INFO L290 TraceCheckUtils]: 56: Hoare triple {12167#(<= |ULTIMATE.start_fib_#t~post3#1| 1)} [136] L706-4-->L706-5: Formula: (= (+ |v_ULTIMATE.start_fib_#t~post3#1_3| 1) v_~x~0_6) InVars {ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_3|} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_3|, ~x~0=v_~x~0_6} AuxVars[] AssignedVars[~x~0] {12168#(<= ~x~0 2)} is VALID [2022-02-20 20:06:58,027 INFO L290 TraceCheckUtils]: 57: Hoare triple {12168#(<= ~x~0 2)} [135] L706-5-->L706-6: Formula: true InVars {} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_fib_#t~post3#1] {12168#(<= ~x~0 2)} is VALID [2022-02-20 20:06:58,028 INFO L290 TraceCheckUtils]: 58: Hoare triple {12168#(<= ~x~0 2)} [132] L706-6-->L707: Formula: (< v_~x~0_4 22) InVars {~x~0=v_~x~0_4} OutVars{~x~0=v_~x~0_4} AuxVars[] AssignedVars[] {12168#(<= ~x~0 2)} is VALID [2022-02-20 20:06:58,028 INFO L290 TraceCheckUtils]: 59: Hoare triple {12168#(<= ~x~0 2)} [142] L707-->L708: Formula: (= v_~next~0_2 (+ v_~prev~0_2 v_~cur~0_2)) InVars {~cur~0=v_~cur~0_2, ~prev~0=v_~prev~0_2} OutVars{~next~0=v_~next~0_2, ~cur~0=v_~cur~0_2, ~prev~0=v_~prev~0_2} AuxVars[] AssignedVars[~next~0] {12168#(<= ~x~0 2)} is VALID [2022-02-20 20:06:58,028 INFO L290 TraceCheckUtils]: 60: Hoare triple {12168#(<= ~x~0 2)} [147] L708-->L709: Formula: (= v_~prev~0_3 v_~cur~0_3) InVars {~cur~0=v_~cur~0_3} OutVars{~cur~0=v_~cur~0_3, ~prev~0=v_~prev~0_3} AuxVars[] AssignedVars[~prev~0] {12168#(<= ~x~0 2)} is VALID [2022-02-20 20:06:58,029 INFO L290 TraceCheckUtils]: 61: Hoare triple {12168#(<= ~x~0 2)} [195] L709-->L706-3: Formula: (= v_~next~0_3 v_~cur~0_4) InVars {~next~0=v_~next~0_3} OutVars{~next~0=v_~next~0_3, ~cur~0=v_~cur~0_4} AuxVars[] AssignedVars[~cur~0] {12168#(<= ~x~0 2)} is VALID [2022-02-20 20:06:58,029 INFO L290 TraceCheckUtils]: 62: Hoare triple {12168#(<= ~x~0 2)} [196] L706-3-->L706-4: Formula: (= |v_ULTIMATE.start_fib_#t~post3#1_2| v_~x~0_5) InVars {~x~0=v_~x~0_5} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_2|, ~x~0=v_~x~0_5} AuxVars[] AssignedVars[ULTIMATE.start_fib_#t~post3#1] {12169#(<= |ULTIMATE.start_fib_#t~post3#1| 2)} is VALID [2022-02-20 20:06:58,030 INFO L290 TraceCheckUtils]: 63: Hoare triple {12169#(<= |ULTIMATE.start_fib_#t~post3#1| 2)} [136] L706-4-->L706-5: Formula: (= (+ |v_ULTIMATE.start_fib_#t~post3#1_3| 1) v_~x~0_6) InVars {ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_3|} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_3|, ~x~0=v_~x~0_6} AuxVars[] AssignedVars[~x~0] {12170#(<= ~x~0 3)} is VALID [2022-02-20 20:06:58,030 INFO L290 TraceCheckUtils]: 64: Hoare triple {12170#(<= ~x~0 3)} [135] L706-5-->L706-6: Formula: true InVars {} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_fib_#t~post3#1] {12170#(<= ~x~0 3)} is VALID [2022-02-20 20:06:58,030 INFO L290 TraceCheckUtils]: 65: Hoare triple {12170#(<= ~x~0 3)} [131] L706-6-->L706-7: Formula: (not (< v_~x~0_3 22)) InVars {~x~0=v_~x~0_3} OutVars{~x~0=v_~x~0_3} AuxVars[] AssignedVars[] {12163#false} is VALID [2022-02-20 20:06:58,031 INFO L290 TraceCheckUtils]: 66: Hoare triple {12163#false} [171] L706-7-->L711: Formula: (= |v_ULTIMATE.start_fib_#res#1_2| v_~prev~0_4) InVars {~prev~0=v_~prev~0_4} OutVars{ULTIMATE.start_fib_#res#1=|v_ULTIMATE.start_fib_#res#1_2|, ~prev~0=v_~prev~0_4} AuxVars[] AssignedVars[ULTIMATE.start_fib_#res#1] {12163#false} is VALID [2022-02-20 20:06:58,031 INFO L290 TraceCheckUtils]: 67: Hoare triple {12163#false} [190] L711-->L723-3: Formula: (= |v_ULTIMATE.start_fib_#res#1_3| |v_ULTIMATE.start_main_#t~ret8#1_2|) InVars {ULTIMATE.start_fib_#res#1=|v_ULTIMATE.start_fib_#res#1_3|} OutVars{ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_2|, ULTIMATE.start_fib_#res#1=|v_ULTIMATE.start_fib_#res#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~ret8#1] {12163#false} is VALID [2022-02-20 20:06:58,031 INFO L290 TraceCheckUtils]: 68: Hoare triple {12163#false} [159] L723-3-->L723-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12163#false} is VALID [2022-02-20 20:06:58,031 INFO L290 TraceCheckUtils]: 69: Hoare triple {12163#false} [185] L723-4-->L723-5: Formula: (and (<= |v_ULTIMATE.start_main_#t~ret8#1_3| 2147483647) (<= 0 (+ |v_ULTIMATE.start_main_#t~ret8#1_3| 2147483648))) InVars {ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_3|} OutVars{ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_3|} AuxVars[] AssignedVars[] {12163#false} is VALID [2022-02-20 20:06:58,031 INFO L290 TraceCheckUtils]: 70: Hoare triple {12163#false} [168] L723-5-->L723-6: Formula: (= |v_ULTIMATE.start_main_~correct~0#1_2| |v_ULTIMATE.start_main_#t~ret8#1_4|) InVars {ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_4|} OutVars{ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_4|, ULTIMATE.start_main_~correct~0#1=|v_ULTIMATE.start_main_~correct~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~correct~0#1] {12163#false} is VALID [2022-02-20 20:06:58,031 INFO L290 TraceCheckUtils]: 71: Hoare triple {12163#false} [134] L723-6-->L725: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~ret8#1] {12163#false} is VALID [2022-02-20 20:06:58,031 INFO L290 TraceCheckUtils]: 72: Hoare triple {12163#false} [141] L725-->L726: Formula: (or (not (< v_~i~0_4 |v_ULTIMATE.start_main_~correct~0#1_4|)) (not (< v_~j~0_4 |v_ULTIMATE.start_main_~correct~0#1_4|))) InVars {~j~0=v_~j~0_4, ULTIMATE.start_main_~correct~0#1=|v_ULTIMATE.start_main_~correct~0#1_4|, ~i~0=v_~i~0_4} OutVars{~j~0=v_~j~0_4, ULTIMATE.start_main_~correct~0#1=|v_ULTIMATE.start_main_~correct~0#1_4|, ~i~0=v_~i~0_4} AuxVars[] AssignedVars[] {12163#false} is VALID [2022-02-20 20:06:58,032 INFO L290 TraceCheckUtils]: 73: Hoare triple {12163#false} [165] L726-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12163#false} is VALID [2022-02-20 20:06:58,032 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 24 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 20:06:58,032 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 20:06:58,032 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2002059061] [2022-02-20 20:06:58,033 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2002059061] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 20:06:58,033 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1796247993] [2022-02-20 20:06:58,033 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 20:06:58,033 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 20:06:58,033 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 20:06:58,034 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:06:58,035 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:06:58,126 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-20 20:06:58,126 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 20:06:58,127 INFO L263 TraceCheckSpWp]: Trace formula consists of 176 conjuncts, 8 conjunts are in the unsatisfiable core [2022-02-20 20:06:58,148 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:06:58,149 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 20:06:58,386 INFO L290 TraceCheckUtils]: 0: Hoare triple {12162#true} [200] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12162#true} is VALID [2022-02-20 20:06:58,387 INFO L290 TraceCheckUtils]: 1: Hoare triple {12162#true} [189] 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] {12162#true} is VALID [2022-02-20 20:06:58,387 INFO L290 TraceCheckUtils]: 2: Hoare triple {12162#true} [207] 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[] {12162#true} is VALID [2022-02-20 20:06:58,387 INFO L290 TraceCheckUtils]: 3: Hoare triple {12162#true} [208] L-1-2-->L19: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {12162#true} is VALID [2022-02-20 20:06:58,387 INFO L290 TraceCheckUtils]: 4: Hoare triple {12162#true} [176] L19-->L19-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[] {12162#true} is VALID [2022-02-20 20:06:58,387 INFO L290 TraceCheckUtils]: 5: Hoare triple {12162#true} [164] L19-1-->L19-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[] {12162#true} is VALID [2022-02-20 20:06:58,387 INFO L290 TraceCheckUtils]: 6: Hoare triple {12162#true} [186] L19-2-->L19-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[] {12162#true} is VALID [2022-02-20 20:06:58,388 INFO L290 TraceCheckUtils]: 7: Hoare triple {12162#true} [184] L19-3-->L19-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[] {12162#true} is VALID [2022-02-20 20:06:58,388 INFO L290 TraceCheckUtils]: 8: Hoare triple {12162#true} [143] L19-4-->L19-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[] {12162#true} is VALID [2022-02-20 20:06:58,388 INFO L290 TraceCheckUtils]: 9: Hoare triple {12162#true} [211] L19-5-->L683: Formula: (= v_~i~0_1 0) InVars {} OutVars{~i~0=v_~i~0_1} AuxVars[] AssignedVars[~i~0] {12162#true} is VALID [2022-02-20 20:06:58,388 INFO L290 TraceCheckUtils]: 10: Hoare triple {12162#true} [148] L683-->L686: Formula: (= v_~j~0_1 0) InVars {} OutVars{~j~0=v_~j~0_1} AuxVars[] AssignedVars[~j~0] {12162#true} is VALID [2022-02-20 20:06:58,388 INFO L290 TraceCheckUtils]: 11: Hoare triple {12162#true} [221] L686-->L686-1: Formula: (= v_~p~0_1 0) InVars {} OutVars{~p~0=v_~p~0_1} AuxVars[] AssignedVars[~p~0] {12162#true} is VALID [2022-02-20 20:06:58,388 INFO L290 TraceCheckUtils]: 12: Hoare triple {12162#true} [169] L686-1-->L703: Formula: (= v_~q~0_1 0) InVars {} OutVars{~q~0=v_~q~0_1} AuxVars[] AssignedVars[~q~0] {12162#true} is VALID [2022-02-20 20:06:58,388 INFO L290 TraceCheckUtils]: 13: Hoare triple {12162#true} [145] L703-->L703-1: Formula: (= v_~cur~0_1 1) InVars {} OutVars{~cur~0=v_~cur~0_1} AuxVars[] AssignedVars[~cur~0] {12162#true} is VALID [2022-02-20 20:06:58,388 INFO L290 TraceCheckUtils]: 14: Hoare triple {12162#true} [197] L703-1-->L703-2: Formula: (= v_~prev~0_1 0) InVars {} OutVars{~prev~0=v_~prev~0_1} AuxVars[] AssignedVars[~prev~0] {12162#true} is VALID [2022-02-20 20:06:58,389 INFO L290 TraceCheckUtils]: 15: Hoare triple {12162#true} [170] L703-2-->L704: Formula: (= v_~next~0_1 0) InVars {} OutVars{~next~0=v_~next~0_1} AuxVars[] AssignedVars[~next~0] {12162#true} is VALID [2022-02-20 20:06:58,389 INFO L290 TraceCheckUtils]: 16: Hoare triple {12162#true} [205] L704-->L-1-3: Formula: (= v_~x~0_1 0) InVars {} OutVars{~x~0=v_~x~0_1} AuxVars[] AssignedVars[~x~0] {12162#true} is VALID [2022-02-20 20:06:58,389 INFO L290 TraceCheckUtils]: 17: Hoare triple {12162#true} [212] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12162#true} is VALID [2022-02-20 20:06:58,389 INFO L290 TraceCheckUtils]: 18: Hoare triple {12162#true} [193] L-1-4-->L-1-5: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12162#true} is VALID [2022-02-20 20:06:58,389 INFO L290 TraceCheckUtils]: 19: Hoare triple {12162#true} [157] 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] {12162#true} is VALID [2022-02-20 20:06:58,395 INFO L290 TraceCheckUtils]: 20: Hoare triple {12162#true} [192] 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] {12162#true} is VALID [2022-02-20 20:06:58,399 INFO L290 TraceCheckUtils]: 21: Hoare triple {12162#true} [153] L-1-7-->L713: Formula: true InVars {} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_1|, ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_1|, ULTIMATE.start_main_~#id2~0#1.offset=|v_ULTIMATE.start_main_~#id2~0#1.offset_1|, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_1|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_1|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_1|, ULTIMATE.start_main_~#id1~0#1.offset=|v_ULTIMATE.start_main_~#id1~0#1.offset_1|, ULTIMATE.start_main_~#id1~0#1.base=|v_ULTIMATE.start_main_~#id1~0#1.base_1|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_1|, ULTIMATE.start_main_#t~nondet5#1=|v_ULTIMATE.start_main_#t~nondet5#1_1|, ULTIMATE.start_main_#t~nondet7#1=|v_ULTIMATE.start_main_#t~nondet7#1_1|, ULTIMATE.start_main_~correct~0#1=|v_ULTIMATE.start_main_~correct~0#1_1|, ULTIMATE.start_main_~#id2~0#1.base=|v_ULTIMATE.start_main_~#id2~0#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#t~ret8#1, ULTIMATE.start_main_~#id2~0#1.offset, ULTIMATE.start_main_#t~pre6#1, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_#t~pre4#1, ULTIMATE.start_main_~#id1~0#1.offset, ULTIMATE.start_main_~#id1~0#1.base, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_#t~nondet5#1, ULTIMATE.start_main_#t~nondet7#1, ULTIMATE.start_main_~correct~0#1, ULTIMATE.start_main_~#id2~0#1.base] {12162#true} is VALID [2022-02-20 20:06:58,399 INFO L290 TraceCheckUtils]: 22: Hoare triple {12162#true} [181] L713-->L713-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] {12162#true} is VALID [2022-02-20 20:06:58,400 INFO L290 TraceCheckUtils]: 23: Hoare triple {12162#true} [154] L713-1-->L714: 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] {12162#true} is VALID [2022-02-20 20:06:58,403 INFO L290 TraceCheckUtils]: 24: Hoare triple {12162#true} [139] L714-->L714-1: Formula: (and (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#id1~0#1.base_2|) (not (= 0 |v_ULTIMATE.start_main_~#id1~0#1.base_2|)) (= |v_#valid_4| (store |v_#valid_5| |v_ULTIMATE.start_main_~#id1~0#1.base_2| 1)) (= |v_#length_3| (store |v_#length_4| |v_ULTIMATE.start_main_~#id1~0#1.base_2| 4)) (= (select |v_#valid_5| |v_ULTIMATE.start_main_~#id1~0#1.base_2|) 0) (= |v_ULTIMATE.start_main_~#id1~0#1.offset_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_~#id1~0#1.offset=|v_ULTIMATE.start_main_~#id1~0#1.offset_2|, #valid=|v_#valid_4|, ULTIMATE.start_main_~#id1~0#1.base=|v_ULTIMATE.start_main_~#id1~0#1.base_2|} AuxVars[] AssignedVars[#valid, #length, ULTIMATE.start_main_~#id1~0#1.offset, ULTIMATE.start_main_~#id1~0#1.base] {12162#true} is VALID [2022-02-20 20:06:58,404 INFO L290 TraceCheckUtils]: 25: Hoare triple {12162#true} [167] L714-1-->L714-2: Formula: (and (= (select |v_#valid_7| |v_ULTIMATE.start_main_~#id2~0#1.base_2|) 0) (< |v_#StackHeapBarrier_3| |v_ULTIMATE.start_main_~#id2~0#1.base_2|) (not (= 0 |v_ULTIMATE.start_main_~#id2~0#1.base_2|)) (= (store |v_#length_6| |v_ULTIMATE.start_main_~#id2~0#1.base_2| 4) |v_#length_5|) (= |v_#valid_6| (store |v_#valid_7| |v_ULTIMATE.start_main_~#id2~0#1.base_2| 1)) (= |v_ULTIMATE.start_main_~#id2~0#1.offset_2| 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_3|, #length=|v_#length_6|, #valid=|v_#valid_7|} OutVars{ULTIMATE.start_main_~#id2~0#1.offset=|v_ULTIMATE.start_main_~#id2~0#1.offset_2|, #StackHeapBarrier=|v_#StackHeapBarrier_3|, #length=|v_#length_5|, ULTIMATE.start_main_~#id2~0#1.base=|v_ULTIMATE.start_main_~#id2~0#1.base_2|, #valid=|v_#valid_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#id2~0#1.offset, #valid, #length, ULTIMATE.start_main_~#id2~0#1.base] {12162#true} is VALID [2022-02-20 20:06:58,404 INFO L290 TraceCheckUtils]: 26: Hoare triple {12162#true} [161] L714-2-->L717: Formula: (= v_~i~0_2 1) InVars {} OutVars{~i~0=v_~i~0_2} AuxVars[] AssignedVars[~i~0] {12162#true} is VALID [2022-02-20 20:06:58,404 INFO L290 TraceCheckUtils]: 27: Hoare triple {12162#true} [163] L717-->L720: Formula: (= v_~j~0_2 1) InVars {} OutVars{~j~0=v_~j~0_2} AuxVars[] AssignedVars[~j~0] {12162#true} is VALID [2022-02-20 20:06:58,404 INFO L290 TraceCheckUtils]: 28: Hoare triple {12162#true} [174] L720-->L721: Formula: (= |v_ULTIMATE.start_main_#t~pre4#1_2| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre4#1] {12162#true} is VALID [2022-02-20 20:06:58,404 INFO L290 TraceCheckUtils]: 29: Hoare triple {12162#true} [158] L721-->L721-1: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] {12162#true} is VALID [2022-02-20 20:06:58,404 INFO L290 TraceCheckUtils]: 30: Hoare triple {12162#true} [202] L721-1-->L721-2: Formula: (= (store |v_#memory_int_5| |v_ULTIMATE.start_main_~#id1~0#1.base_3| (store (select |v_#memory_int_5| |v_ULTIMATE.start_main_~#id1~0#1.base_3|) |v_ULTIMATE.start_main_~#id1~0#1.offset_3| |v_ULTIMATE.start_main_#t~pre4#1_3|)) |v_#memory_int_4|) InVars {#memory_int=|v_#memory_int_5|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_3|, ULTIMATE.start_main_~#id1~0#1.offset=|v_ULTIMATE.start_main_~#id1~0#1.offset_3|, ULTIMATE.start_main_~#id1~0#1.base=|v_ULTIMATE.start_main_~#id1~0#1.base_3|} OutVars{#memory_int=|v_#memory_int_4|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_3|, ULTIMATE.start_main_~#id1~0#1.offset=|v_ULTIMATE.start_main_~#id1~0#1.offset_3|, ULTIMATE.start_main_~#id1~0#1.base=|v_ULTIMATE.start_main_~#id1~0#1.base_3|} AuxVars[] AssignedVars[#memory_int] {12162#true} is VALID [2022-02-20 20:06:58,405 INFO L290 TraceCheckUtils]: 31: Hoare triple {12162#true} [246] L721-2-->t1ENTRY: Formula: (and (= |v_ULTIMATE.start_main_#t~pre4#1_6| v_t1Thread1of1ForFork0_thidvar0_2) (= v_t1Thread1of1ForFork0_thidvar1_2 0) (= |v_t1Thread1of1ForFork0_#in~arg.base_4| 0) (= |v_t1Thread1of1ForFork0_#in~arg.offset_4| 0)) InVars {ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_6|} OutVars{t1Thread1of1ForFork0_#t~post1=|v_t1Thread1of1ForFork0_#t~post1_8|, t1Thread1of1ForFork0_thidvar1=v_t1Thread1of1ForFork0_thidvar1_2, t1Thread1of1ForFork0_thidvar0=v_t1Thread1of1ForFork0_thidvar0_2, t1Thread1of1ForFork0_~arg.base=v_t1Thread1of1ForFork0_~arg.base_4, t1Thread1of1ForFork0_#in~arg.base=|v_t1Thread1of1ForFork0_#in~arg.base_4|, t1Thread1of1ForFork0_~arg.offset=v_t1Thread1of1ForFork0_~arg.offset_4, t1Thread1of1ForFork0_#res.base=|v_t1Thread1of1ForFork0_#res.base_4|, t1Thread1of1ForFork0_#res.offset=|v_t1Thread1of1ForFork0_#res.offset_4|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_6|, t1Thread1of1ForFork0_#in~arg.offset=|v_t1Thread1of1ForFork0_#in~arg.offset_4|} AuxVars[] AssignedVars[t1Thread1of1ForFork0_#t~post1, t1Thread1of1ForFork0_thidvar1, t1Thread1of1ForFork0_thidvar0, t1Thread1of1ForFork0_~arg.base, t1Thread1of1ForFork0_#in~arg.base, t1Thread1of1ForFork0_~arg.offset, t1Thread1of1ForFork0_#res.base, t1Thread1of1ForFork0_#res.offset, t1Thread1of1ForFork0_#in~arg.offset] {12162#true} is VALID [2022-02-20 20:06:58,405 INFO L290 TraceCheckUtils]: 32: Hoare triple {12162#true} [201] L721-3-->L721-4: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre4#1] {12162#true} is VALID [2022-02-20 20:06:58,405 INFO L290 TraceCheckUtils]: 33: Hoare triple {12162#true} [216] L721-4-->L722: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet5#1=|v_ULTIMATE.start_main_#t~nondet5#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet5#1] {12162#true} is VALID [2022-02-20 20:06:58,405 INFO L290 TraceCheckUtils]: 34: Hoare triple {12162#true} [213] L722-->L722-1: Formula: (= |v_ULTIMATE.start_main_#t~pre6#1_2| |v_#pthreadsForks_4|) InVars {#pthreadsForks=|v_#pthreadsForks_4|} OutVars{#pthreadsForks=|v_#pthreadsForks_4|, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre6#1] {12162#true} is VALID [2022-02-20 20:06:58,405 INFO L290 TraceCheckUtils]: 35: Hoare triple {12162#true} [187] L722-1-->L722-2: Formula: (= (+ 1 |v_#pthreadsForks_6|) |v_#pthreadsForks_5|) InVars {#pthreadsForks=|v_#pthreadsForks_6|} OutVars{#pthreadsForks=|v_#pthreadsForks_5|} AuxVars[] AssignedVars[#pthreadsForks] {12162#true} is VALID [2022-02-20 20:06:58,405 INFO L290 TraceCheckUtils]: 36: Hoare triple {12162#true} [219] L722-2-->L722-3: Formula: (= (store |v_#memory_int_7| |v_ULTIMATE.start_main_~#id2~0#1.base_3| (store (select |v_#memory_int_7| |v_ULTIMATE.start_main_~#id2~0#1.base_3|) |v_ULTIMATE.start_main_~#id2~0#1.offset_3| |v_ULTIMATE.start_main_#t~pre6#1_3|)) |v_#memory_int_6|) InVars {#memory_int=|v_#memory_int_7|, ULTIMATE.start_main_~#id2~0#1.offset=|v_ULTIMATE.start_main_~#id2~0#1.offset_3|, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_3|, ULTIMATE.start_main_~#id2~0#1.base=|v_ULTIMATE.start_main_~#id2~0#1.base_3|} OutVars{#memory_int=|v_#memory_int_6|, ULTIMATE.start_main_~#id2~0#1.offset=|v_ULTIMATE.start_main_~#id2~0#1.offset_3|, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_3|, ULTIMATE.start_main_~#id2~0#1.base=|v_ULTIMATE.start_main_~#id2~0#1.base_3|} AuxVars[] AssignedVars[#memory_int] {12162#true} is VALID [2022-02-20 20:06:58,405 INFO L290 TraceCheckUtils]: 37: Hoare triple {12162#true} [248] L722-3-->t2ENTRY: Formula: (and (= |v_t2Thread1of1ForFork1_#in~arg.base_4| 0) (= |v_ULTIMATE.start_main_#t~pre6#1_6| v_t2Thread1of1ForFork1_thidvar0_2) (= |v_t2Thread1of1ForFork1_#in~arg.offset_4| 0) (= v_t2Thread1of1ForFork1_thidvar1_2 0) (= v_t2Thread1of1ForFork1_thidvar2_2 0)) InVars {ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_6|} OutVars{t2Thread1of1ForFork1_#in~arg.base=|v_t2Thread1of1ForFork1_#in~arg.base_4|, t2Thread1of1ForFork1_thidvar1=v_t2Thread1of1ForFork1_thidvar1_2, t2Thread1of1ForFork1_~arg.base=v_t2Thread1of1ForFork1_~arg.base_4, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_6|, t2Thread1of1ForFork1_thidvar0=v_t2Thread1of1ForFork1_thidvar0_2, t2Thread1of1ForFork1_~arg.offset=v_t2Thread1of1ForFork1_~arg.offset_4, t2Thread1of1ForFork1_#res.base=|v_t2Thread1of1ForFork1_#res.base_4|, t2Thread1of1ForFork1_#in~arg.offset=|v_t2Thread1of1ForFork1_#in~arg.offset_4|, t2Thread1of1ForFork1_#t~post2=|v_t2Thread1of1ForFork1_#t~post2_8|, t2Thread1of1ForFork1_#res.offset=|v_t2Thread1of1ForFork1_#res.offset_4|, t2Thread1of1ForFork1_thidvar2=v_t2Thread1of1ForFork1_thidvar2_2} AuxVars[] AssignedVars[t2Thread1of1ForFork1_#in~arg.base, t2Thread1of1ForFork1_thidvar1, t2Thread1of1ForFork1_~arg.base, t2Thread1of1ForFork1_thidvar0, t2Thread1of1ForFork1_~arg.offset, t2Thread1of1ForFork1_#res.base, t2Thread1of1ForFork1_#in~arg.offset, t2Thread1of1ForFork1_#t~post2, t2Thread1of1ForFork1_#res.offset, t2Thread1of1ForFork1_thidvar2] {12162#true} is VALID [2022-02-20 20:06:58,406 INFO L290 TraceCheckUtils]: 38: Hoare triple {12162#true} [210] L722-4-->L722-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre6#1] {12162#true} is VALID [2022-02-20 20:06:58,406 INFO L290 TraceCheckUtils]: 39: Hoare triple {12162#true} [204] L722-5-->L723: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet7#1=|v_ULTIMATE.start_main_#t~nondet7#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet7#1] {12162#true} is VALID [2022-02-20 20:06:58,406 INFO L290 TraceCheckUtils]: 40: Hoare triple {12162#true} [217] L723-->L723-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12162#true} is VALID [2022-02-20 20:06:58,406 INFO L290 TraceCheckUtils]: 41: Hoare triple {12162#true} [199] L723-1-->L723-2: Formula: true InVars {} OutVars{ULTIMATE.start_fib_#res#1=|v_ULTIMATE.start_fib_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_fib_#res#1] {12162#true} is VALID [2022-02-20 20:06:58,406 INFO L290 TraceCheckUtils]: 42: Hoare triple {12162#true} [194] L723-2-->L706: Formula: true InVars {} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_fib_#t~post3#1] {12162#true} is VALID [2022-02-20 20:06:58,406 INFO L290 TraceCheckUtils]: 43: Hoare triple {12162#true} [191] L706-->L706-6: Formula: (= v_~x~0_2 0) InVars {} OutVars{~x~0=v_~x~0_2} AuxVars[] AssignedVars[~x~0] {12303#(<= ~x~0 0)} is VALID [2022-02-20 20:06:58,407 INFO L290 TraceCheckUtils]: 44: Hoare triple {12303#(<= ~x~0 0)} [132] L706-6-->L707: Formula: (< v_~x~0_4 22) InVars {~x~0=v_~x~0_4} OutVars{~x~0=v_~x~0_4} AuxVars[] AssignedVars[] {12303#(<= ~x~0 0)} is VALID [2022-02-20 20:06:58,407 INFO L290 TraceCheckUtils]: 45: Hoare triple {12303#(<= ~x~0 0)} [142] L707-->L708: Formula: (= v_~next~0_2 (+ v_~prev~0_2 v_~cur~0_2)) InVars {~cur~0=v_~cur~0_2, ~prev~0=v_~prev~0_2} OutVars{~next~0=v_~next~0_2, ~cur~0=v_~cur~0_2, ~prev~0=v_~prev~0_2} AuxVars[] AssignedVars[~next~0] {12303#(<= ~x~0 0)} is VALID [2022-02-20 20:06:58,407 INFO L290 TraceCheckUtils]: 46: Hoare triple {12303#(<= ~x~0 0)} [147] L708-->L709: Formula: (= v_~prev~0_3 v_~cur~0_3) InVars {~cur~0=v_~cur~0_3} OutVars{~cur~0=v_~cur~0_3, ~prev~0=v_~prev~0_3} AuxVars[] AssignedVars[~prev~0] {12303#(<= ~x~0 0)} is VALID [2022-02-20 20:06:58,408 INFO L290 TraceCheckUtils]: 47: Hoare triple {12303#(<= ~x~0 0)} [195] L709-->L706-3: Formula: (= v_~next~0_3 v_~cur~0_4) InVars {~next~0=v_~next~0_3} OutVars{~next~0=v_~next~0_3, ~cur~0=v_~cur~0_4} AuxVars[] AssignedVars[~cur~0] {12303#(<= ~x~0 0)} is VALID [2022-02-20 20:06:58,408 INFO L290 TraceCheckUtils]: 48: Hoare triple {12303#(<= ~x~0 0)} [196] L706-3-->L706-4: Formula: (= |v_ULTIMATE.start_fib_#t~post3#1_2| v_~x~0_5) InVars {~x~0=v_~x~0_5} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_2|, ~x~0=v_~x~0_5} AuxVars[] AssignedVars[ULTIMATE.start_fib_#t~post3#1] {12319#(<= |ULTIMATE.start_fib_#t~post3#1| 0)} is VALID [2022-02-20 20:06:58,409 INFO L290 TraceCheckUtils]: 49: Hoare triple {12319#(<= |ULTIMATE.start_fib_#t~post3#1| 0)} [136] L706-4-->L706-5: Formula: (= (+ |v_ULTIMATE.start_fib_#t~post3#1_3| 1) v_~x~0_6) InVars {ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_3|} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_3|, ~x~0=v_~x~0_6} AuxVars[] AssignedVars[~x~0] {12166#(<= ~x~0 1)} is VALID [2022-02-20 20:06:58,409 INFO L290 TraceCheckUtils]: 50: Hoare triple {12166#(<= ~x~0 1)} [135] L706-5-->L706-6: Formula: true InVars {} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_fib_#t~post3#1] {12166#(<= ~x~0 1)} is VALID [2022-02-20 20:06:58,409 INFO L290 TraceCheckUtils]: 51: Hoare triple {12166#(<= ~x~0 1)} [132] L706-6-->L707: Formula: (< v_~x~0_4 22) InVars {~x~0=v_~x~0_4} OutVars{~x~0=v_~x~0_4} AuxVars[] AssignedVars[] {12166#(<= ~x~0 1)} is VALID [2022-02-20 20:06:58,410 INFO L290 TraceCheckUtils]: 52: Hoare triple {12166#(<= ~x~0 1)} [142] L707-->L708: Formula: (= v_~next~0_2 (+ v_~prev~0_2 v_~cur~0_2)) InVars {~cur~0=v_~cur~0_2, ~prev~0=v_~prev~0_2} OutVars{~next~0=v_~next~0_2, ~cur~0=v_~cur~0_2, ~prev~0=v_~prev~0_2} AuxVars[] AssignedVars[~next~0] {12166#(<= ~x~0 1)} is VALID [2022-02-20 20:06:58,410 INFO L290 TraceCheckUtils]: 53: Hoare triple {12166#(<= ~x~0 1)} [147] L708-->L709: Formula: (= v_~prev~0_3 v_~cur~0_3) InVars {~cur~0=v_~cur~0_3} OutVars{~cur~0=v_~cur~0_3, ~prev~0=v_~prev~0_3} AuxVars[] AssignedVars[~prev~0] {12166#(<= ~x~0 1)} is VALID [2022-02-20 20:06:58,411 INFO L290 TraceCheckUtils]: 54: Hoare triple {12166#(<= ~x~0 1)} [195] L709-->L706-3: Formula: (= v_~next~0_3 v_~cur~0_4) InVars {~next~0=v_~next~0_3} OutVars{~next~0=v_~next~0_3, ~cur~0=v_~cur~0_4} AuxVars[] AssignedVars[~cur~0] {12166#(<= ~x~0 1)} is VALID [2022-02-20 20:06:58,411 INFO L290 TraceCheckUtils]: 55: Hoare triple {12166#(<= ~x~0 1)} [196] L706-3-->L706-4: Formula: (= |v_ULTIMATE.start_fib_#t~post3#1_2| v_~x~0_5) InVars {~x~0=v_~x~0_5} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_2|, ~x~0=v_~x~0_5} AuxVars[] AssignedVars[ULTIMATE.start_fib_#t~post3#1] {12167#(<= |ULTIMATE.start_fib_#t~post3#1| 1)} is VALID [2022-02-20 20:06:58,411 INFO L290 TraceCheckUtils]: 56: Hoare triple {12167#(<= |ULTIMATE.start_fib_#t~post3#1| 1)} [136] L706-4-->L706-5: Formula: (= (+ |v_ULTIMATE.start_fib_#t~post3#1_3| 1) v_~x~0_6) InVars {ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_3|} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_3|, ~x~0=v_~x~0_6} AuxVars[] AssignedVars[~x~0] {12168#(<= ~x~0 2)} is VALID [2022-02-20 20:06:58,412 INFO L290 TraceCheckUtils]: 57: Hoare triple {12168#(<= ~x~0 2)} [135] L706-5-->L706-6: Formula: true InVars {} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_fib_#t~post3#1] {12168#(<= ~x~0 2)} is VALID [2022-02-20 20:06:58,412 INFO L290 TraceCheckUtils]: 58: Hoare triple {12168#(<= ~x~0 2)} [132] L706-6-->L707: Formula: (< v_~x~0_4 22) InVars {~x~0=v_~x~0_4} OutVars{~x~0=v_~x~0_4} AuxVars[] AssignedVars[] {12168#(<= ~x~0 2)} is VALID [2022-02-20 20:06:58,413 INFO L290 TraceCheckUtils]: 59: Hoare triple {12168#(<= ~x~0 2)} [142] L707-->L708: Formula: (= v_~next~0_2 (+ v_~prev~0_2 v_~cur~0_2)) InVars {~cur~0=v_~cur~0_2, ~prev~0=v_~prev~0_2} OutVars{~next~0=v_~next~0_2, ~cur~0=v_~cur~0_2, ~prev~0=v_~prev~0_2} AuxVars[] AssignedVars[~next~0] {12168#(<= ~x~0 2)} is VALID [2022-02-20 20:06:58,413 INFO L290 TraceCheckUtils]: 60: Hoare triple {12168#(<= ~x~0 2)} [147] L708-->L709: Formula: (= v_~prev~0_3 v_~cur~0_3) InVars {~cur~0=v_~cur~0_3} OutVars{~cur~0=v_~cur~0_3, ~prev~0=v_~prev~0_3} AuxVars[] AssignedVars[~prev~0] {12168#(<= ~x~0 2)} is VALID [2022-02-20 20:06:58,413 INFO L290 TraceCheckUtils]: 61: Hoare triple {12168#(<= ~x~0 2)} [195] L709-->L706-3: Formula: (= v_~next~0_3 v_~cur~0_4) InVars {~next~0=v_~next~0_3} OutVars{~next~0=v_~next~0_3, ~cur~0=v_~cur~0_4} AuxVars[] AssignedVars[~cur~0] {12168#(<= ~x~0 2)} is VALID [2022-02-20 20:06:58,414 INFO L290 TraceCheckUtils]: 62: Hoare triple {12168#(<= ~x~0 2)} [196] L706-3-->L706-4: Formula: (= |v_ULTIMATE.start_fib_#t~post3#1_2| v_~x~0_5) InVars {~x~0=v_~x~0_5} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_2|, ~x~0=v_~x~0_5} AuxVars[] AssignedVars[ULTIMATE.start_fib_#t~post3#1] {12169#(<= |ULTIMATE.start_fib_#t~post3#1| 2)} is VALID [2022-02-20 20:06:58,414 INFO L290 TraceCheckUtils]: 63: Hoare triple {12169#(<= |ULTIMATE.start_fib_#t~post3#1| 2)} [136] L706-4-->L706-5: Formula: (= (+ |v_ULTIMATE.start_fib_#t~post3#1_3| 1) v_~x~0_6) InVars {ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_3|} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_3|, ~x~0=v_~x~0_6} AuxVars[] AssignedVars[~x~0] {12170#(<= ~x~0 3)} is VALID [2022-02-20 20:06:58,415 INFO L290 TraceCheckUtils]: 64: Hoare triple {12170#(<= ~x~0 3)} [135] L706-5-->L706-6: Formula: true InVars {} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_fib_#t~post3#1] {12170#(<= ~x~0 3)} is VALID [2022-02-20 20:06:58,415 INFO L290 TraceCheckUtils]: 65: Hoare triple {12170#(<= ~x~0 3)} [131] L706-6-->L706-7: Formula: (not (< v_~x~0_3 22)) InVars {~x~0=v_~x~0_3} OutVars{~x~0=v_~x~0_3} AuxVars[] AssignedVars[] {12163#false} is VALID [2022-02-20 20:06:58,415 INFO L290 TraceCheckUtils]: 66: Hoare triple {12163#false} [171] L706-7-->L711: Formula: (= |v_ULTIMATE.start_fib_#res#1_2| v_~prev~0_4) InVars {~prev~0=v_~prev~0_4} OutVars{ULTIMATE.start_fib_#res#1=|v_ULTIMATE.start_fib_#res#1_2|, ~prev~0=v_~prev~0_4} AuxVars[] AssignedVars[ULTIMATE.start_fib_#res#1] {12163#false} is VALID [2022-02-20 20:06:58,415 INFO L290 TraceCheckUtils]: 67: Hoare triple {12163#false} [190] L711-->L723-3: Formula: (= |v_ULTIMATE.start_fib_#res#1_3| |v_ULTIMATE.start_main_#t~ret8#1_2|) InVars {ULTIMATE.start_fib_#res#1=|v_ULTIMATE.start_fib_#res#1_3|} OutVars{ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_2|, ULTIMATE.start_fib_#res#1=|v_ULTIMATE.start_fib_#res#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~ret8#1] {12163#false} is VALID [2022-02-20 20:06:58,416 INFO L290 TraceCheckUtils]: 68: Hoare triple {12163#false} [159] L723-3-->L723-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12163#false} is VALID [2022-02-20 20:06:58,416 INFO L290 TraceCheckUtils]: 69: Hoare triple {12163#false} [185] L723-4-->L723-5: Formula: (and (<= |v_ULTIMATE.start_main_#t~ret8#1_3| 2147483647) (<= 0 (+ |v_ULTIMATE.start_main_#t~ret8#1_3| 2147483648))) InVars {ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_3|} OutVars{ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_3|} AuxVars[] AssignedVars[] {12163#false} is VALID [2022-02-20 20:06:58,416 INFO L290 TraceCheckUtils]: 70: Hoare triple {12163#false} [168] L723-5-->L723-6: Formula: (= |v_ULTIMATE.start_main_~correct~0#1_2| |v_ULTIMATE.start_main_#t~ret8#1_4|) InVars {ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_4|} OutVars{ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_4|, ULTIMATE.start_main_~correct~0#1=|v_ULTIMATE.start_main_~correct~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~correct~0#1] {12163#false} is VALID [2022-02-20 20:06:58,416 INFO L290 TraceCheckUtils]: 71: Hoare triple {12163#false} [134] L723-6-->L725: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~ret8#1] {12163#false} is VALID [2022-02-20 20:06:58,416 INFO L290 TraceCheckUtils]: 72: Hoare triple {12163#false} [141] L725-->L726: Formula: (or (not (< v_~i~0_4 |v_ULTIMATE.start_main_~correct~0#1_4|)) (not (< v_~j~0_4 |v_ULTIMATE.start_main_~correct~0#1_4|))) InVars {~j~0=v_~j~0_4, ULTIMATE.start_main_~correct~0#1=|v_ULTIMATE.start_main_~correct~0#1_4|, ~i~0=v_~i~0_4} OutVars{~j~0=v_~j~0_4, ULTIMATE.start_main_~correct~0#1=|v_ULTIMATE.start_main_~correct~0#1_4|, ~i~0=v_~i~0_4} AuxVars[] AssignedVars[] {12163#false} is VALID [2022-02-20 20:06:58,417 INFO L290 TraceCheckUtils]: 73: Hoare triple {12163#false} [165] L726-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12163#false} is VALID [2022-02-20 20:06:58,417 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 24 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 20:06:58,417 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 20:06:58,679 INFO L290 TraceCheckUtils]: 73: Hoare triple {12163#false} [165] L726-->ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12163#false} is VALID [2022-02-20 20:06:58,679 INFO L290 TraceCheckUtils]: 72: Hoare triple {12163#false} [141] L725-->L726: Formula: (or (not (< v_~i~0_4 |v_ULTIMATE.start_main_~correct~0#1_4|)) (not (< v_~j~0_4 |v_ULTIMATE.start_main_~correct~0#1_4|))) InVars {~j~0=v_~j~0_4, ULTIMATE.start_main_~correct~0#1=|v_ULTIMATE.start_main_~correct~0#1_4|, ~i~0=v_~i~0_4} OutVars{~j~0=v_~j~0_4, ULTIMATE.start_main_~correct~0#1=|v_ULTIMATE.start_main_~correct~0#1_4|, ~i~0=v_~i~0_4} AuxVars[] AssignedVars[] {12163#false} is VALID [2022-02-20 20:06:58,679 INFO L290 TraceCheckUtils]: 71: Hoare triple {12163#false} [134] L723-6-->L725: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~ret8#1] {12163#false} is VALID [2022-02-20 20:06:58,680 INFO L290 TraceCheckUtils]: 70: Hoare triple {12163#false} [168] L723-5-->L723-6: Formula: (= |v_ULTIMATE.start_main_~correct~0#1_2| |v_ULTIMATE.start_main_#t~ret8#1_4|) InVars {ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_4|} OutVars{ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_4|, ULTIMATE.start_main_~correct~0#1=|v_ULTIMATE.start_main_~correct~0#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_~correct~0#1] {12163#false} is VALID [2022-02-20 20:06:58,680 INFO L290 TraceCheckUtils]: 69: Hoare triple {12163#false} [185] L723-4-->L723-5: Formula: (and (<= |v_ULTIMATE.start_main_#t~ret8#1_3| 2147483647) (<= 0 (+ |v_ULTIMATE.start_main_#t~ret8#1_3| 2147483648))) InVars {ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_3|} OutVars{ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_3|} AuxVars[] AssignedVars[] {12163#false} is VALID [2022-02-20 20:06:58,680 INFO L290 TraceCheckUtils]: 68: Hoare triple {12163#false} [159] L723-3-->L723-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12163#false} is VALID [2022-02-20 20:06:58,680 INFO L290 TraceCheckUtils]: 67: Hoare triple {12163#false} [190] L711-->L723-3: Formula: (= |v_ULTIMATE.start_fib_#res#1_3| |v_ULTIMATE.start_main_#t~ret8#1_2|) InVars {ULTIMATE.start_fib_#res#1=|v_ULTIMATE.start_fib_#res#1_3|} OutVars{ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_2|, ULTIMATE.start_fib_#res#1=|v_ULTIMATE.start_fib_#res#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~ret8#1] {12163#false} is VALID [2022-02-20 20:06:58,680 INFO L290 TraceCheckUtils]: 66: Hoare triple {12163#false} [171] L706-7-->L711: Formula: (= |v_ULTIMATE.start_fib_#res#1_2| v_~prev~0_4) InVars {~prev~0=v_~prev~0_4} OutVars{ULTIMATE.start_fib_#res#1=|v_ULTIMATE.start_fib_#res#1_2|, ~prev~0=v_~prev~0_4} AuxVars[] AssignedVars[ULTIMATE.start_fib_#res#1] {12163#false} is VALID [2022-02-20 20:06:58,681 INFO L290 TraceCheckUtils]: 65: Hoare triple {12419#(< ~x~0 22)} [131] L706-6-->L706-7: Formula: (not (< v_~x~0_3 22)) InVars {~x~0=v_~x~0_3} OutVars{~x~0=v_~x~0_3} AuxVars[] AssignedVars[] {12163#false} is VALID [2022-02-20 20:06:58,681 INFO L290 TraceCheckUtils]: 64: Hoare triple {12419#(< ~x~0 22)} [135] L706-5-->L706-6: Formula: true InVars {} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_fib_#t~post3#1] {12419#(< ~x~0 22)} is VALID [2022-02-20 20:06:58,682 INFO L290 TraceCheckUtils]: 63: Hoare triple {12426#(< |ULTIMATE.start_fib_#t~post3#1| 21)} [136] L706-4-->L706-5: Formula: (= (+ |v_ULTIMATE.start_fib_#t~post3#1_3| 1) v_~x~0_6) InVars {ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_3|} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_3|, ~x~0=v_~x~0_6} AuxVars[] AssignedVars[~x~0] {12419#(< ~x~0 22)} is VALID [2022-02-20 20:06:58,683 INFO L290 TraceCheckUtils]: 62: Hoare triple {12430#(< ~x~0 21)} [196] L706-3-->L706-4: Formula: (= |v_ULTIMATE.start_fib_#t~post3#1_2| v_~x~0_5) InVars {~x~0=v_~x~0_5} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_2|, ~x~0=v_~x~0_5} AuxVars[] AssignedVars[ULTIMATE.start_fib_#t~post3#1] {12426#(< |ULTIMATE.start_fib_#t~post3#1| 21)} is VALID [2022-02-20 20:06:58,683 INFO L290 TraceCheckUtils]: 61: Hoare triple {12430#(< ~x~0 21)} [195] L709-->L706-3: Formula: (= v_~next~0_3 v_~cur~0_4) InVars {~next~0=v_~next~0_3} OutVars{~next~0=v_~next~0_3, ~cur~0=v_~cur~0_4} AuxVars[] AssignedVars[~cur~0] {12430#(< ~x~0 21)} is VALID [2022-02-20 20:06:58,683 INFO L290 TraceCheckUtils]: 60: Hoare triple {12430#(< ~x~0 21)} [147] L708-->L709: Formula: (= v_~prev~0_3 v_~cur~0_3) InVars {~cur~0=v_~cur~0_3} OutVars{~cur~0=v_~cur~0_3, ~prev~0=v_~prev~0_3} AuxVars[] AssignedVars[~prev~0] {12430#(< ~x~0 21)} is VALID [2022-02-20 20:06:58,684 INFO L290 TraceCheckUtils]: 59: Hoare triple {12430#(< ~x~0 21)} [142] L707-->L708: Formula: (= v_~next~0_2 (+ v_~prev~0_2 v_~cur~0_2)) InVars {~cur~0=v_~cur~0_2, ~prev~0=v_~prev~0_2} OutVars{~next~0=v_~next~0_2, ~cur~0=v_~cur~0_2, ~prev~0=v_~prev~0_2} AuxVars[] AssignedVars[~next~0] {12430#(< ~x~0 21)} is VALID [2022-02-20 20:06:58,684 INFO L290 TraceCheckUtils]: 58: Hoare triple {12430#(< ~x~0 21)} [132] L706-6-->L707: Formula: (< v_~x~0_4 22) InVars {~x~0=v_~x~0_4} OutVars{~x~0=v_~x~0_4} AuxVars[] AssignedVars[] {12430#(< ~x~0 21)} is VALID [2022-02-20 20:06:58,685 INFO L290 TraceCheckUtils]: 57: Hoare triple {12430#(< ~x~0 21)} [135] L706-5-->L706-6: Formula: true InVars {} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_fib_#t~post3#1] {12430#(< ~x~0 21)} is VALID [2022-02-20 20:06:58,685 INFO L290 TraceCheckUtils]: 56: Hoare triple {12449#(< |ULTIMATE.start_fib_#t~post3#1| 20)} [136] L706-4-->L706-5: Formula: (= (+ |v_ULTIMATE.start_fib_#t~post3#1_3| 1) v_~x~0_6) InVars {ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_3|} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_3|, ~x~0=v_~x~0_6} AuxVars[] AssignedVars[~x~0] {12430#(< ~x~0 21)} is VALID [2022-02-20 20:06:58,686 INFO L290 TraceCheckUtils]: 55: Hoare triple {12453#(< ~x~0 20)} [196] L706-3-->L706-4: Formula: (= |v_ULTIMATE.start_fib_#t~post3#1_2| v_~x~0_5) InVars {~x~0=v_~x~0_5} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_2|, ~x~0=v_~x~0_5} AuxVars[] AssignedVars[ULTIMATE.start_fib_#t~post3#1] {12449#(< |ULTIMATE.start_fib_#t~post3#1| 20)} is VALID [2022-02-20 20:06:58,686 INFO L290 TraceCheckUtils]: 54: Hoare triple {12453#(< ~x~0 20)} [195] L709-->L706-3: Formula: (= v_~next~0_3 v_~cur~0_4) InVars {~next~0=v_~next~0_3} OutVars{~next~0=v_~next~0_3, ~cur~0=v_~cur~0_4} AuxVars[] AssignedVars[~cur~0] {12453#(< ~x~0 20)} is VALID [2022-02-20 20:06:58,687 INFO L290 TraceCheckUtils]: 53: Hoare triple {12453#(< ~x~0 20)} [147] L708-->L709: Formula: (= v_~prev~0_3 v_~cur~0_3) InVars {~cur~0=v_~cur~0_3} OutVars{~cur~0=v_~cur~0_3, ~prev~0=v_~prev~0_3} AuxVars[] AssignedVars[~prev~0] {12453#(< ~x~0 20)} is VALID [2022-02-20 20:06:58,687 INFO L290 TraceCheckUtils]: 52: Hoare triple {12453#(< ~x~0 20)} [142] L707-->L708: Formula: (= v_~next~0_2 (+ v_~prev~0_2 v_~cur~0_2)) InVars {~cur~0=v_~cur~0_2, ~prev~0=v_~prev~0_2} OutVars{~next~0=v_~next~0_2, ~cur~0=v_~cur~0_2, ~prev~0=v_~prev~0_2} AuxVars[] AssignedVars[~next~0] {12453#(< ~x~0 20)} is VALID [2022-02-20 20:06:58,687 INFO L290 TraceCheckUtils]: 51: Hoare triple {12453#(< ~x~0 20)} [132] L706-6-->L707: Formula: (< v_~x~0_4 22) InVars {~x~0=v_~x~0_4} OutVars{~x~0=v_~x~0_4} AuxVars[] AssignedVars[] {12453#(< ~x~0 20)} is VALID [2022-02-20 20:06:58,688 INFO L290 TraceCheckUtils]: 50: Hoare triple {12453#(< ~x~0 20)} [135] L706-5-->L706-6: Formula: true InVars {} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_fib_#t~post3#1] {12453#(< ~x~0 20)} is VALID [2022-02-20 20:06:58,688 INFO L290 TraceCheckUtils]: 49: Hoare triple {12472#(< |ULTIMATE.start_fib_#t~post3#1| 19)} [136] L706-4-->L706-5: Formula: (= (+ |v_ULTIMATE.start_fib_#t~post3#1_3| 1) v_~x~0_6) InVars {ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_3|} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_3|, ~x~0=v_~x~0_6} AuxVars[] AssignedVars[~x~0] {12453#(< ~x~0 20)} is VALID [2022-02-20 20:06:58,689 INFO L290 TraceCheckUtils]: 48: Hoare triple {12476#(< ~x~0 19)} [196] L706-3-->L706-4: Formula: (= |v_ULTIMATE.start_fib_#t~post3#1_2| v_~x~0_5) InVars {~x~0=v_~x~0_5} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_2|, ~x~0=v_~x~0_5} AuxVars[] AssignedVars[ULTIMATE.start_fib_#t~post3#1] {12472#(< |ULTIMATE.start_fib_#t~post3#1| 19)} is VALID [2022-02-20 20:06:58,689 INFO L290 TraceCheckUtils]: 47: Hoare triple {12476#(< ~x~0 19)} [195] L709-->L706-3: Formula: (= v_~next~0_3 v_~cur~0_4) InVars {~next~0=v_~next~0_3} OutVars{~next~0=v_~next~0_3, ~cur~0=v_~cur~0_4} AuxVars[] AssignedVars[~cur~0] {12476#(< ~x~0 19)} is VALID [2022-02-20 20:06:58,689 INFO L290 TraceCheckUtils]: 46: Hoare triple {12476#(< ~x~0 19)} [147] L708-->L709: Formula: (= v_~prev~0_3 v_~cur~0_3) InVars {~cur~0=v_~cur~0_3} OutVars{~cur~0=v_~cur~0_3, ~prev~0=v_~prev~0_3} AuxVars[] AssignedVars[~prev~0] {12476#(< ~x~0 19)} is VALID [2022-02-20 20:06:58,690 INFO L290 TraceCheckUtils]: 45: Hoare triple {12476#(< ~x~0 19)} [142] L707-->L708: Formula: (= v_~next~0_2 (+ v_~prev~0_2 v_~cur~0_2)) InVars {~cur~0=v_~cur~0_2, ~prev~0=v_~prev~0_2} OutVars{~next~0=v_~next~0_2, ~cur~0=v_~cur~0_2, ~prev~0=v_~prev~0_2} AuxVars[] AssignedVars[~next~0] {12476#(< ~x~0 19)} is VALID [2022-02-20 20:06:58,690 INFO L290 TraceCheckUtils]: 44: Hoare triple {12476#(< ~x~0 19)} [132] L706-6-->L707: Formula: (< v_~x~0_4 22) InVars {~x~0=v_~x~0_4} OutVars{~x~0=v_~x~0_4} AuxVars[] AssignedVars[] {12476#(< ~x~0 19)} is VALID [2022-02-20 20:06:58,691 INFO L290 TraceCheckUtils]: 43: Hoare triple {12162#true} [191] L706-->L706-6: Formula: (= v_~x~0_2 0) InVars {} OutVars{~x~0=v_~x~0_2} AuxVars[] AssignedVars[~x~0] {12476#(< ~x~0 19)} is VALID [2022-02-20 20:06:58,691 INFO L290 TraceCheckUtils]: 42: Hoare triple {12162#true} [194] L723-2-->L706: Formula: true InVars {} OutVars{ULTIMATE.start_fib_#t~post3#1=|v_ULTIMATE.start_fib_#t~post3#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_fib_#t~post3#1] {12162#true} is VALID [2022-02-20 20:06:58,691 INFO L290 TraceCheckUtils]: 41: Hoare triple {12162#true} [199] L723-1-->L723-2: Formula: true InVars {} OutVars{ULTIMATE.start_fib_#res#1=|v_ULTIMATE.start_fib_#res#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_fib_#res#1] {12162#true} is VALID [2022-02-20 20:06:58,691 INFO L290 TraceCheckUtils]: 40: Hoare triple {12162#true} [217] L723-->L723-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12162#true} is VALID [2022-02-20 20:06:58,691 INFO L290 TraceCheckUtils]: 39: Hoare triple {12162#true} [204] L722-5-->L723: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet7#1=|v_ULTIMATE.start_main_#t~nondet7#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet7#1] {12162#true} is VALID [2022-02-20 20:06:58,691 INFO L290 TraceCheckUtils]: 38: Hoare triple {12162#true} [210] L722-4-->L722-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre6#1] {12162#true} is VALID [2022-02-20 20:06:58,692 INFO L290 TraceCheckUtils]: 37: Hoare triple {12162#true} [248] L722-3-->t2ENTRY: Formula: (and (= |v_t2Thread1of1ForFork1_#in~arg.base_4| 0) (= |v_ULTIMATE.start_main_#t~pre6#1_6| v_t2Thread1of1ForFork1_thidvar0_2) (= |v_t2Thread1of1ForFork1_#in~arg.offset_4| 0) (= v_t2Thread1of1ForFork1_thidvar1_2 0) (= v_t2Thread1of1ForFork1_thidvar2_2 0)) InVars {ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_6|} OutVars{t2Thread1of1ForFork1_#in~arg.base=|v_t2Thread1of1ForFork1_#in~arg.base_4|, t2Thread1of1ForFork1_thidvar1=v_t2Thread1of1ForFork1_thidvar1_2, t2Thread1of1ForFork1_~arg.base=v_t2Thread1of1ForFork1_~arg.base_4, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_6|, t2Thread1of1ForFork1_thidvar0=v_t2Thread1of1ForFork1_thidvar0_2, t2Thread1of1ForFork1_~arg.offset=v_t2Thread1of1ForFork1_~arg.offset_4, t2Thread1of1ForFork1_#res.base=|v_t2Thread1of1ForFork1_#res.base_4|, t2Thread1of1ForFork1_#in~arg.offset=|v_t2Thread1of1ForFork1_#in~arg.offset_4|, t2Thread1of1ForFork1_#t~post2=|v_t2Thread1of1ForFork1_#t~post2_8|, t2Thread1of1ForFork1_#res.offset=|v_t2Thread1of1ForFork1_#res.offset_4|, t2Thread1of1ForFork1_thidvar2=v_t2Thread1of1ForFork1_thidvar2_2} AuxVars[] AssignedVars[t2Thread1of1ForFork1_#in~arg.base, t2Thread1of1ForFork1_thidvar1, t2Thread1of1ForFork1_~arg.base, t2Thread1of1ForFork1_thidvar0, t2Thread1of1ForFork1_~arg.offset, t2Thread1of1ForFork1_#res.base, t2Thread1of1ForFork1_#in~arg.offset, t2Thread1of1ForFork1_#t~post2, t2Thread1of1ForFork1_#res.offset, t2Thread1of1ForFork1_thidvar2] {12162#true} is VALID [2022-02-20 20:06:58,692 INFO L290 TraceCheckUtils]: 36: Hoare triple {12162#true} [219] L722-2-->L722-3: Formula: (= (store |v_#memory_int_7| |v_ULTIMATE.start_main_~#id2~0#1.base_3| (store (select |v_#memory_int_7| |v_ULTIMATE.start_main_~#id2~0#1.base_3|) |v_ULTIMATE.start_main_~#id2~0#1.offset_3| |v_ULTIMATE.start_main_#t~pre6#1_3|)) |v_#memory_int_6|) InVars {#memory_int=|v_#memory_int_7|, ULTIMATE.start_main_~#id2~0#1.offset=|v_ULTIMATE.start_main_~#id2~0#1.offset_3|, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_3|, ULTIMATE.start_main_~#id2~0#1.base=|v_ULTIMATE.start_main_~#id2~0#1.base_3|} OutVars{#memory_int=|v_#memory_int_6|, ULTIMATE.start_main_~#id2~0#1.offset=|v_ULTIMATE.start_main_~#id2~0#1.offset_3|, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_3|, ULTIMATE.start_main_~#id2~0#1.base=|v_ULTIMATE.start_main_~#id2~0#1.base_3|} AuxVars[] AssignedVars[#memory_int] {12162#true} is VALID [2022-02-20 20:06:58,692 INFO L290 TraceCheckUtils]: 35: Hoare triple {12162#true} [187] L722-1-->L722-2: Formula: (= (+ 1 |v_#pthreadsForks_6|) |v_#pthreadsForks_5|) InVars {#pthreadsForks=|v_#pthreadsForks_6|} OutVars{#pthreadsForks=|v_#pthreadsForks_5|} AuxVars[] AssignedVars[#pthreadsForks] {12162#true} is VALID [2022-02-20 20:06:58,692 INFO L290 TraceCheckUtils]: 34: Hoare triple {12162#true} [213] L722-->L722-1: Formula: (= |v_ULTIMATE.start_main_#t~pre6#1_2| |v_#pthreadsForks_4|) InVars {#pthreadsForks=|v_#pthreadsForks_4|} OutVars{#pthreadsForks=|v_#pthreadsForks_4|, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre6#1] {12162#true} is VALID [2022-02-20 20:06:58,692 INFO L290 TraceCheckUtils]: 33: Hoare triple {12162#true} [216] L721-4-->L722: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet5#1=|v_ULTIMATE.start_main_#t~nondet5#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet5#1] {12162#true} is VALID [2022-02-20 20:06:58,692 INFO L290 TraceCheckUtils]: 32: Hoare triple {12162#true} [201] L721-3-->L721-4: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre4#1] {12162#true} is VALID [2022-02-20 20:06:58,693 INFO L290 TraceCheckUtils]: 31: Hoare triple {12162#true} [246] L721-2-->t1ENTRY: Formula: (and (= |v_ULTIMATE.start_main_#t~pre4#1_6| v_t1Thread1of1ForFork0_thidvar0_2) (= v_t1Thread1of1ForFork0_thidvar1_2 0) (= |v_t1Thread1of1ForFork0_#in~arg.base_4| 0) (= |v_t1Thread1of1ForFork0_#in~arg.offset_4| 0)) InVars {ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_6|} OutVars{t1Thread1of1ForFork0_#t~post1=|v_t1Thread1of1ForFork0_#t~post1_8|, t1Thread1of1ForFork0_thidvar1=v_t1Thread1of1ForFork0_thidvar1_2, t1Thread1of1ForFork0_thidvar0=v_t1Thread1of1ForFork0_thidvar0_2, t1Thread1of1ForFork0_~arg.base=v_t1Thread1of1ForFork0_~arg.base_4, t1Thread1of1ForFork0_#in~arg.base=|v_t1Thread1of1ForFork0_#in~arg.base_4|, t1Thread1of1ForFork0_~arg.offset=v_t1Thread1of1ForFork0_~arg.offset_4, t1Thread1of1ForFork0_#res.base=|v_t1Thread1of1ForFork0_#res.base_4|, t1Thread1of1ForFork0_#res.offset=|v_t1Thread1of1ForFork0_#res.offset_4|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_6|, t1Thread1of1ForFork0_#in~arg.offset=|v_t1Thread1of1ForFork0_#in~arg.offset_4|} AuxVars[] AssignedVars[t1Thread1of1ForFork0_#t~post1, t1Thread1of1ForFork0_thidvar1, t1Thread1of1ForFork0_thidvar0, t1Thread1of1ForFork0_~arg.base, t1Thread1of1ForFork0_#in~arg.base, t1Thread1of1ForFork0_~arg.offset, t1Thread1of1ForFork0_#res.base, t1Thread1of1ForFork0_#res.offset, t1Thread1of1ForFork0_#in~arg.offset] {12162#true} is VALID [2022-02-20 20:06:58,693 INFO L290 TraceCheckUtils]: 30: Hoare triple {12162#true} [202] L721-1-->L721-2: Formula: (= (store |v_#memory_int_5| |v_ULTIMATE.start_main_~#id1~0#1.base_3| (store (select |v_#memory_int_5| |v_ULTIMATE.start_main_~#id1~0#1.base_3|) |v_ULTIMATE.start_main_~#id1~0#1.offset_3| |v_ULTIMATE.start_main_#t~pre4#1_3|)) |v_#memory_int_4|) InVars {#memory_int=|v_#memory_int_5|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_3|, ULTIMATE.start_main_~#id1~0#1.offset=|v_ULTIMATE.start_main_~#id1~0#1.offset_3|, ULTIMATE.start_main_~#id1~0#1.base=|v_ULTIMATE.start_main_~#id1~0#1.base_3|} OutVars{#memory_int=|v_#memory_int_4|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_3|, ULTIMATE.start_main_~#id1~0#1.offset=|v_ULTIMATE.start_main_~#id1~0#1.offset_3|, ULTIMATE.start_main_~#id1~0#1.base=|v_ULTIMATE.start_main_~#id1~0#1.base_3|} AuxVars[] AssignedVars[#memory_int] {12162#true} is VALID [2022-02-20 20:06:58,693 INFO L290 TraceCheckUtils]: 29: Hoare triple {12162#true} [158] L721-->L721-1: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] {12162#true} is VALID [2022-02-20 20:06:58,693 INFO L290 TraceCheckUtils]: 28: Hoare triple {12162#true} [174] L720-->L721: Formula: (= |v_ULTIMATE.start_main_#t~pre4#1_2| |v_#pthreadsForks_1|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre4#1] {12162#true} is VALID [2022-02-20 20:06:58,693 INFO L290 TraceCheckUtils]: 27: Hoare triple {12162#true} [163] L717-->L720: Formula: (= v_~j~0_2 1) InVars {} OutVars{~j~0=v_~j~0_2} AuxVars[] AssignedVars[~j~0] {12162#true} is VALID [2022-02-20 20:06:58,694 INFO L290 TraceCheckUtils]: 26: Hoare triple {12162#true} [161] L714-2-->L717: Formula: (= v_~i~0_2 1) InVars {} OutVars{~i~0=v_~i~0_2} AuxVars[] AssignedVars[~i~0] {12162#true} is VALID [2022-02-20 20:06:58,694 INFO L290 TraceCheckUtils]: 25: Hoare triple {12162#true} [167] L714-1-->L714-2: Formula: (and (= (select |v_#valid_7| |v_ULTIMATE.start_main_~#id2~0#1.base_2|) 0) (< |v_#StackHeapBarrier_3| |v_ULTIMATE.start_main_~#id2~0#1.base_2|) (not (= 0 |v_ULTIMATE.start_main_~#id2~0#1.base_2|)) (= (store |v_#length_6| |v_ULTIMATE.start_main_~#id2~0#1.base_2| 4) |v_#length_5|) (= |v_#valid_6| (store |v_#valid_7| |v_ULTIMATE.start_main_~#id2~0#1.base_2| 1)) (= |v_ULTIMATE.start_main_~#id2~0#1.offset_2| 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_3|, #length=|v_#length_6|, #valid=|v_#valid_7|} OutVars{ULTIMATE.start_main_~#id2~0#1.offset=|v_ULTIMATE.start_main_~#id2~0#1.offset_2|, #StackHeapBarrier=|v_#StackHeapBarrier_3|, #length=|v_#length_5|, ULTIMATE.start_main_~#id2~0#1.base=|v_ULTIMATE.start_main_~#id2~0#1.base_2|, #valid=|v_#valid_6|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#id2~0#1.offset, #valid, #length, ULTIMATE.start_main_~#id2~0#1.base] {12162#true} is VALID [2022-02-20 20:06:58,694 INFO L290 TraceCheckUtils]: 24: Hoare triple {12162#true} [139] L714-->L714-1: Formula: (and (< |v_#StackHeapBarrier_2| |v_ULTIMATE.start_main_~#id1~0#1.base_2|) (not (= 0 |v_ULTIMATE.start_main_~#id1~0#1.base_2|)) (= |v_#valid_4| (store |v_#valid_5| |v_ULTIMATE.start_main_~#id1~0#1.base_2| 1)) (= |v_#length_3| (store |v_#length_4| |v_ULTIMATE.start_main_~#id1~0#1.base_2| 4)) (= (select |v_#valid_5| |v_ULTIMATE.start_main_~#id1~0#1.base_2|) 0) (= |v_ULTIMATE.start_main_~#id1~0#1.offset_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_~#id1~0#1.offset=|v_ULTIMATE.start_main_~#id1~0#1.offset_2|, #valid=|v_#valid_4|, ULTIMATE.start_main_~#id1~0#1.base=|v_ULTIMATE.start_main_~#id1~0#1.base_2|} AuxVars[] AssignedVars[#valid, #length, ULTIMATE.start_main_~#id1~0#1.offset, ULTIMATE.start_main_~#id1~0#1.base] {12162#true} is VALID [2022-02-20 20:06:58,694 INFO L290 TraceCheckUtils]: 23: Hoare triple {12162#true} [154] L713-1-->L714: 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] {12162#true} is VALID [2022-02-20 20:06:58,694 INFO L290 TraceCheckUtils]: 22: Hoare triple {12162#true} [181] L713-->L713-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] {12162#true} is VALID [2022-02-20 20:06:58,695 INFO L290 TraceCheckUtils]: 21: Hoare triple {12162#true} [153] L-1-7-->L713: Formula: true InVars {} OutVars{ULTIMATE.start_main_~argc#1=|v_ULTIMATE.start_main_~argc#1_1|, ULTIMATE.start_main_#t~ret8#1=|v_ULTIMATE.start_main_#t~ret8#1_1|, ULTIMATE.start_main_~#id2~0#1.offset=|v_ULTIMATE.start_main_~#id2~0#1.offset_1|, ULTIMATE.start_main_#t~pre6#1=|v_ULTIMATE.start_main_#t~pre6#1_1|, ULTIMATE.start_main_~argv#1.offset=|v_ULTIMATE.start_main_~argv#1.offset_1|, ULTIMATE.start_main_#t~pre4#1=|v_ULTIMATE.start_main_#t~pre4#1_1|, ULTIMATE.start_main_~#id1~0#1.offset=|v_ULTIMATE.start_main_~#id1~0#1.offset_1|, ULTIMATE.start_main_~#id1~0#1.base=|v_ULTIMATE.start_main_~#id1~0#1.base_1|, ULTIMATE.start_main_~argv#1.base=|v_ULTIMATE.start_main_~argv#1.base_1|, ULTIMATE.start_main_#t~nondet5#1=|v_ULTIMATE.start_main_#t~nondet5#1_1|, ULTIMATE.start_main_#t~nondet7#1=|v_ULTIMATE.start_main_#t~nondet7#1_1|, ULTIMATE.start_main_~correct~0#1=|v_ULTIMATE.start_main_~correct~0#1_1|, ULTIMATE.start_main_~#id2~0#1.base=|v_ULTIMATE.start_main_~#id2~0#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_~argc#1, ULTIMATE.start_main_#t~ret8#1, ULTIMATE.start_main_~#id2~0#1.offset, ULTIMATE.start_main_#t~pre6#1, ULTIMATE.start_main_~argv#1.offset, ULTIMATE.start_main_#t~pre4#1, ULTIMATE.start_main_~#id1~0#1.offset, ULTIMATE.start_main_~#id1~0#1.base, ULTIMATE.start_main_~argv#1.base, ULTIMATE.start_main_#t~nondet5#1, ULTIMATE.start_main_#t~nondet7#1, ULTIMATE.start_main_~correct~0#1, ULTIMATE.start_main_~#id2~0#1.base] {12162#true} is VALID [2022-02-20 20:06:58,695 INFO L290 TraceCheckUtils]: 20: Hoare triple {12162#true} [192] 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] {12162#true} is VALID [2022-02-20 20:06:58,695 INFO L290 TraceCheckUtils]: 19: Hoare triple {12162#true} [157] 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] {12162#true} is VALID [2022-02-20 20:06:58,695 INFO L290 TraceCheckUtils]: 18: Hoare triple {12162#true} [193] L-1-4-->L-1-5: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12162#true} is VALID [2022-02-20 20:06:58,695 INFO L290 TraceCheckUtils]: 17: Hoare triple {12162#true} [212] L-1-3-->L-1-4: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12162#true} is VALID [2022-02-20 20:06:58,695 INFO L290 TraceCheckUtils]: 16: Hoare triple {12162#true} [205] L704-->L-1-3: Formula: (= v_~x~0_1 0) InVars {} OutVars{~x~0=v_~x~0_1} AuxVars[] AssignedVars[~x~0] {12162#true} is VALID [2022-02-20 20:06:58,696 INFO L290 TraceCheckUtils]: 15: Hoare triple {12162#true} [170] L703-2-->L704: Formula: (= v_~next~0_1 0) InVars {} OutVars{~next~0=v_~next~0_1} AuxVars[] AssignedVars[~next~0] {12162#true} is VALID [2022-02-20 20:06:58,696 INFO L290 TraceCheckUtils]: 14: Hoare triple {12162#true} [197] L703-1-->L703-2: Formula: (= v_~prev~0_1 0) InVars {} OutVars{~prev~0=v_~prev~0_1} AuxVars[] AssignedVars[~prev~0] {12162#true} is VALID [2022-02-20 20:06:58,696 INFO L290 TraceCheckUtils]: 13: Hoare triple {12162#true} [145] L703-->L703-1: Formula: (= v_~cur~0_1 1) InVars {} OutVars{~cur~0=v_~cur~0_1} AuxVars[] AssignedVars[~cur~0] {12162#true} is VALID [2022-02-20 20:06:58,696 INFO L290 TraceCheckUtils]: 12: Hoare triple {12162#true} [169] L686-1-->L703: Formula: (= v_~q~0_1 0) InVars {} OutVars{~q~0=v_~q~0_1} AuxVars[] AssignedVars[~q~0] {12162#true} is VALID [2022-02-20 20:06:58,696 INFO L290 TraceCheckUtils]: 11: Hoare triple {12162#true} [221] L686-->L686-1: Formula: (= v_~p~0_1 0) InVars {} OutVars{~p~0=v_~p~0_1} AuxVars[] AssignedVars[~p~0] {12162#true} is VALID [2022-02-20 20:06:58,696 INFO L290 TraceCheckUtils]: 10: Hoare triple {12162#true} [148] L683-->L686: Formula: (= v_~j~0_1 0) InVars {} OutVars{~j~0=v_~j~0_1} AuxVars[] AssignedVars[~j~0] {12162#true} is VALID [2022-02-20 20:06:58,697 INFO L290 TraceCheckUtils]: 9: Hoare triple {12162#true} [211] L19-5-->L683: Formula: (= v_~i~0_1 0) InVars {} OutVars{~i~0=v_~i~0_1} AuxVars[] AssignedVars[~i~0] {12162#true} is VALID [2022-02-20 20:06:58,697 INFO L290 TraceCheckUtils]: 8: Hoare triple {12162#true} [143] L19-4-->L19-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[] {12162#true} is VALID [2022-02-20 20:06:58,697 INFO L290 TraceCheckUtils]: 7: Hoare triple {12162#true} [184] L19-3-->L19-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[] {12162#true} is VALID [2022-02-20 20:06:58,697 INFO L290 TraceCheckUtils]: 6: Hoare triple {12162#true} [186] L19-2-->L19-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[] {12162#true} is VALID [2022-02-20 20:06:58,697 INFO L290 TraceCheckUtils]: 5: Hoare triple {12162#true} [164] L19-1-->L19-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[] {12162#true} is VALID [2022-02-20 20:06:58,698 INFO L290 TraceCheckUtils]: 4: Hoare triple {12162#true} [176] L19-->L19-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[] {12162#true} is VALID [2022-02-20 20:06:58,698 INFO L290 TraceCheckUtils]: 3: Hoare triple {12162#true} [208] L-1-2-->L19: Formula: (< 0 |v_#StackHeapBarrier_1|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|} AuxVars[] AssignedVars[] {12162#true} is VALID [2022-02-20 20:06:58,698 INFO L290 TraceCheckUtils]: 2: Hoare triple {12162#true} [207] 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[] {12162#true} is VALID [2022-02-20 20:06:58,698 INFO L290 TraceCheckUtils]: 1: Hoare triple {12162#true} [189] 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] {12162#true} is VALID [2022-02-20 20:06:58,698 INFO L290 TraceCheckUtils]: 0: Hoare triple {12162#true} [200] ULTIMATE.startENTRY-->L-1: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12162#true} is VALID [2022-02-20 20:06:58,699 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 24 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 20:06:58,699 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1796247993] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 20:06:58,699 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 20:06:58,699 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9, 9] total 18 [2022-02-20 20:06:58,699 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [170146087] [2022-02-20 20:06:58,700 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 20:06:58,700 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 18 states have (on average 5.777777777777778) internal successors, (104), 18 states have internal predecessors, (104), 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 74 [2022-02-20 20:06:58,701 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 20:06:58,701 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 18 states, 18 states have (on average 5.777777777777778) internal successors, (104), 18 states have internal predecessors, (104), 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:06:58,777 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 104 edges. 104 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:06:58,778 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-02-20 20:06:58,778 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 20:06:58,779 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-02-20 20:06:58,779 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=90, Invalid=216, Unknown=0, NotChecked=0, Total=306 [2022-02-20 20:06:58,780 INFO L499 CegarLoopForPetriNet]: Number of universal loopers: 81 out of 96 [2022-02-20 20:06:58,782 INFO L92 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 105 places, 96 transitions, 242 flow. Second operand has 18 states, 18 states have (on average 83.0) internal successors, (1494), 18 states have internal predecessors, (1494), 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:06:58,782 INFO L101 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-02-20 20:06:58,782 INFO L102 encePairwiseOnDemand]: Number of universal subtrahend loopers: 81 of 96 [2022-02-20 20:06:58,783 INFO L74 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand